c語言數(shù)組函數(shù)求素?cái)?shù) c語言求數(shù)組中的素?cái)?shù)

c語言 函數(shù) 數(shù)組 素?cái)?shù)

編寫一個函數(shù)實(shí)現(xiàn)判斷一個整數(shù)是否是素?cái)?shù)。如果輸出也在函數(shù)內(nèi)進(jìn)行,才需要把數(shù)組傳到函數(shù)中,否則只要傳數(shù)組元素就可以了。

創(chuàng)新互聯(lián)作為成都網(wǎng)站建設(shè)公司,專注網(wǎng)站建設(shè)、網(wǎng)站設(shè)計(jì),有關(guān)企業(yè)網(wǎng)站建設(shè)方案、改版、費(fèi)用等問題,行業(yè)涉及柔性防護(hù)網(wǎng)等多個領(lǐng)域,已為上千家企業(yè)服務(wù),得到了客戶的尊重與認(rèn)可。

你原來的程序問題在于:

1. 缺少#include"math.h"。因?yàn)橛玫搅藄qrt();

2. if(ss(a[i])==1)語句中調(diào)用函數(shù)ss的格式與定義不符:a[i]不能傳給a,且缺第二的參數(shù)。

3.? 判斷素?cái)?shù)時(shí),沒有考慮對數(shù)字1的處理。

輸出在主程序中進(jìn)行的話,參考White_MouseYBZ網(wǎng)友的回答,進(jìn)行修改即可。

如果打印也在函數(shù)中進(jìn)行,原程序可改為:

#include"stdio.h"

#include"math.h"??//增加

main()

{

int?a[10],n,i;

void?ss(int?a[],int?n);

scanf("%d",n);

for(i=0;in;i++)

scanf("%d",a[i]);

ss(a,n);//調(diào)用函數(shù),判斷并輸出

/×??for(i=0;in;i++)?????//整體刪除

if(ss(a[i])==1)

printf("%d\n";a[i]);?×/?

}

void?ss(int?a[],int?n)??//無需返回值,改成void

{?int?k,i,j,result;

for(i=0;in;i++)

{?if(a[i]!=1)????//避免1判斷為素?cái)?shù)

{?k=sqrt(a[i]);

for(j=2;j=k;j++)

if(a[i]%j==0)?break;

if(jk)??printf("%d?",a[i]);?//輸出素?cái)?shù)

}

}

}

C語言程序設(shè)計(jì)題:求素?cái)?shù)的個數(shù)

先編寫一個判斷素?cái)?shù)的函數(shù),類型為bool型

bool Isprime(int number)

{

for (int i = 2; i number; i++)

if (number mod i != 0)

return false;

return true;

}

上面的代碼還可以繼續(xù)優(yōu)化,只是給你提供個思路

然后在主函數(shù)里面循環(huán)調(diào)用這個函數(shù) 比如數(shù)組num[N] 循環(huán)N次,將num[i] 作為參數(shù)調(diào)用上面的函數(shù),然后看返回值,如果未true 素?cái)?shù)的個數(shù)+1,就可以了

c語言數(shù)組求素?cái)?shù)

#include stdio.h

int main(){

int a=0; // 素?cái)?shù)的個數(shù)

int num=0; // 輸入的整數(shù)

printf("輸入一個整數(shù):");

scanf("%d",num);

for(int i=2;inum;i++){

if(num%i==0){

a++; // 素?cái)?shù)個數(shù)加1

}

}

if(a==0){

printf("%d是素?cái)?shù)。\n", num);

}else{

printf("%d不是素?cái)?shù)。\n", num);

}

return 0;

}

C語言程序如何設(shè)計(jì)求素?cái)?shù)的個數(shù)?

先編寫一個判斷素?cái)?shù)的函數(shù),類型為bool型

bool Isprime(int number)

{

for (int i = 2; i number; i++)

if (number mod i != 0)

return false;

return true;

}

上面的代碼還可以繼續(xù)優(yōu)化,只是給你提供個思路

然后在主函數(shù)里面循環(huán)調(diào)用這個函數(shù) 比如數(shù)組num[N] 循環(huán)N次,將num[i] 作為參數(shù)調(diào)用上面的函數(shù),然后看返回值,如果未true 素?cái)?shù)的個數(shù)+1,就可以了

分享標(biāo)題:c語言數(shù)組函數(shù)求素?cái)?shù) c語言求數(shù)組中的素?cái)?shù)
URL地址:http://muchs.cn/article32/doscspc.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供云服務(wù)器網(wǎng)站改版、商城網(wǎng)站、關(guān)鍵詞優(yōu)化、定制開發(fā)、企業(yè)建站

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)

成都網(wǎng)站建設(shè)公司