void?main()
成都創(chuàng)新互聯(lián)是一家專業(yè)從事成都網(wǎng)站建設(shè)、網(wǎng)站制作的網(wǎng)絡(luò)公司。作為專業(yè)的建站公司,成都創(chuàng)新互聯(lián)依托的技術(shù)實(shí)力、以及多年的網(wǎng)站運(yùn)營(yíng)經(jīng)驗(yàn),為您提供專業(yè)的成都網(wǎng)站建設(shè)、成都營(yíng)銷網(wǎng)站建設(shè)及網(wǎng)站設(shè)計(jì)開(kāi)發(fā)服務(wù)!
{
int?i,j,n,sum=0;
scanf("%d",n);
i=n;?//從n開(kāi)始檢查
while(n0)
{????
if(prime(i)!=0)?//是素?cái)?shù)
{
sum=sum+i;?//加上i
n--;?//個(gè)數(shù)減1
}
i++;?//取下一個(gè)數(shù)
}
printf("%d",sum);
}
按照你的要求編寫(xiě)的C語(yǔ)言程序如下
#includestdio.h
int f(int x) //定義判斷素?cái)?shù)的函數(shù)
{
int n,flag=1;
if(x==1) return 0;
for(n=2;nx;n++)
if(x%n==0)
flag=0;
return flag;
}
int main()
{
int i,N,M,count=0,sum=0;
scanf("%d%d",N,M);
for(i=N;i=M;i++){
if(f(i)==1){
count++;
sum=sum+i;
}
}
printf("%d到%d之間共有%d個(gè)素?cái)?shù),它們的和為%d",N,M,count,sum);
return 0;
}
網(wǎng)上的代碼意思是:n就是你輸入的任意數(shù),判斷它是否是素?cái)?shù)的方法是用大于2小于n的數(shù)去除n,若能整除即不是素?cái)?shù),跳出循環(huán);若數(shù)一直增加到n+1都沒(méi)有被整除,即可輸出“素?cái)?shù)”。
你的源程序:3是素?cái)?shù),很簡(jiǎn)單,所以用if來(lái)提醒輸入大于3的數(shù),你的只是另一種素?cái)?shù)算法,是優(yōu)化的算法,更快。因?yàn)橹恍栌?到根號(hào)a去判斷。
#includestdio.h
#includemath.h
int lsPrime(int n);
int main()
{
int n, i, k, sum = 0;
printf("input n:\n");
scanf("%d", n);
for (i = 1; i = n; i++)
{
if (lsPrime(i) == 1)
{
sum += i;
}
}
printf("sum=%d\n", sum);
return 0;
}
int lsPrime(int n) ///是素?cái)?shù)21135261返回410216531,否則返回0
{
int i, k;
k = (int) sqrt(n);
for (i = 2; i = k; i++)
{
if (n % i == 0)
break;
}
if (i k n 1)
return 1;
else
return 0;
}
分享題目:c語(yǔ)言函數(shù)求素?cái)?shù)的和 c語(yǔ)言中求素?cái)?shù)的函數(shù)
本文路徑:http://muchs.cn/article12/doshjdc.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供標(biāo)簽優(yōu)化、軟件開(kāi)發(fā)、、網(wǎng)站設(shè)計(jì)、定制開(kāi)發(fā)、企業(yè)網(wǎng)站制作
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)