c語言判斷素?cái)?shù)的函數(shù)程序:
“只有客戶發(fā)展了,才有我們的生存與發(fā)展!”這是創(chuàng)新互聯(lián)的服務(wù)宗旨!把網(wǎng)站當(dāng)作互聯(lián)網(wǎng)產(chǎn)品,產(chǎn)品思維更注重全局思維、需求分析和迭代思維,在網(wǎng)站建設(shè)中就是為了建設(shè)一個(gè)不僅審美在線,而且實(shí)用性極高的網(wǎng)站。創(chuàng)新互聯(lián)對(duì)網(wǎng)站設(shè)計(jì)制作、成都網(wǎng)站制作、網(wǎng)站制作、網(wǎng)站開發(fā)、網(wǎng)頁設(shè)計(jì)、網(wǎng)站優(yōu)化、網(wǎng)絡(luò)推廣、探索永無止境。
經(jīng)分析,以上代碼使用flag的值來判斷輸入的n是否為素?cái)?shù),flag=1,n為素?cái)?shù);flag=0,n不是素?cái)?shù)。完善if條件語句,第一個(gè)if,主函數(shù)中的if調(diào)用函數(shù),需要填入一個(gè)參數(shù),即prime(n);第二個(gè)if,是判斷什么情況下flag=0,即輸入的整數(shù)不為素?cái)?shù),即(n/i==0),余數(shù)為0,可以整除;最后返回flag的值,returnflag
但是經(jīng)過運(yùn)行可以知道,n=4的時(shí)候,程序判斷4是素?cái)?shù),明顯是錯(cuò)誤的,n取0和1的時(shí)候同理,程序存在漏洞。分析得知,在定義函數(shù)的過程中,for循環(huán)條件語句,i=0,如果為負(fù)整數(shù),另加判斷條件,略)
1、首先需要打開vs軟件工程,準(zhǔn)備好一個(gè)空白的C語言文件,引入頭文件,主函數(shù)中暫時(shí)沒有內(nèi)容:
2、這里開始編寫代碼,這里判斷素?cái)?shù)需要用到平方根,所以要在頭文件中引入math庫,然后編寫判斷素?cái)?shù)的函數(shù),函數(shù)有唯一的參數(shù)n,代表素?cái)?shù)。判斷的依據(jù)是素?cái)?shù)n只要不能被 2 到根號(hào)下n之 間任一整數(shù)整除,則n必定是素?cái)?shù),最后在主函數(shù)中調(diào)用判斷素?cái)?shù)的函數(shù)即可:
3、最后,編譯運(yùn)行程序,在彈出的命令行中輸入17這個(gè)素?cái)?shù),程序的打印結(jié)果是17是素?cái)?shù),證明了程序的正確性。以上就是用C語言判斷素?cái)?shù)的流程:
#include stdio.h
int fun(int x)//
{
if(x2)
return 0;//返回0,非素?cái)?shù)
for(int i=2;i*i=x;i++)
if(x%i==0)
return 0;
return 1;//返回1,素?cái)?shù)
}
int main()
{
int n;
scanf("%d",n);
if(fun(n)==1)
printf("%d是素?cái)?shù)\n",n);
else
printf("%d不是素?cái)?shù)\n",n);
return 0;
}