用c語言寫輸入整數,利用函式呼叫方式程式設計,判斷該數是否

2021-03-06 23:47:01 字數 3945 閱讀 4502

1樓:凌亂心扉

#include<stdio.h>

int main(void)

{unsignedlongnum;

unsignedlongdiv;

intisprime;//素數的標誌,1代表是素數,0代表不是素數

printf("pleaseenteranintegerforanalysis.");

printf("enterqtoquit.\n");

while(scanf("%lu",&num)==1&&num!=1)

{for(div=2,isprime=1;(div*div)<=num;div++){

if(num%div==0){//如果能被div整除

if((div*div)!=num){//約數不相等

printf("%luisdivisibleby%luand%lu.\n",num,div,num/div);

}else{//約數相同

printf("%luisdivisibleby%lu.\n",num,div);

}//將isprime設定為0,表示其不是乙個素數

isprime=0;}}

if(isprime==1){

printf("%lu是素數.\n",num);

}printf("pleaseenteranotherintegerforanalysis.");

printf("enterqtoquit.\n");

}printf("bye.\n");

return0;

}執行效果:

printf()函式用法:

在c語言中,有三個函式可以用來在顯示器上輸出資料,它們分別是:

1、puts():只能輸出字串,並且輸出結束後會自動換行。

2、putchar():只能輸出單個字元。

3、printf():可以輸出各種型別的資料。

printf() 是最靈活、最複雜、最常用的輸出函式,完全可以替代 puts() 和 putchar(),

舉例:#include

int main()

printf() 格式控制符的完整形式如下:

%[flag][width][.precision]type

[ ] 表示此處的內容可有可無,是可以省略的。

1) type 表示輸出型別,比如 %d、%f、%c、%lf,type 就分別對應 d、f、c、lf;

type 這一項必須有,這意味著輸出時必須要知道是什麼型別。

2) width 表示最小輸出寬度,也就是至少佔用幾個字元的位置;

首先彙總一下用到的格式控制符:

%c輸出乙個單一的字元

%hd、%d、%ld以十進位制、有符號的形式輸出 short、int、long 型別的整數

%hu、%u、%lu以十進位制、無符號的形式輸出 short、int、long 型別的整數

%ho、%o、%lo以八進位制、不帶字首、無符號的形式輸出 short、int、long 型別的整數

%hx、%x、%lx%hx、%x、%lx以十六進位制、不帶字首、無符號的形式輸出 short、int、long 型別的整數。如果 x 小寫,那麼輸出的十六進位制數字也小寫;如果 x 大寫,那麼輸出的十六進位制數字也大寫。

%f、%lf以十進位制的形式輸出 float、double 型別的小數;%e、%le%e、%le以指數的形式輸出 float、double 型別的小數。如果 e 小寫,那麼輸出結果中的 e 也小寫;如果 e 大寫,那麼輸出結果中的 e 也大寫。

%g、%lg%g、%lg以十進位制和指數中較短的形式輸出 float、double 型別的小數,並且小數部分的最後不會新增多餘的 0。如果 g 小寫,那麼當以指數形式輸出時 e 也小寫;如果 g 大寫,那麼當以指數形式輸出時 e 也大寫。

%s輸出乙個字串。

2樓:匿名使用者

第一題:

#include

int prime(int a)

第二題:

1,1000

2,2000

3,2000

4,3000

5,2000

又不明白的可以交流下!

c程式設計高手團隊正在招新,有意者速速行動,一起學習,一起努力!!

3樓:匿名使用者

第一題:

因有sqrt 所以需要+ math.h標頭檔案有scanf函式需要+_s

#include

#include

int is_prime(int n)

int main()

c語言程式設計:輸入乙個正整數n,判斷它是否為素數

4樓:跪著作揖

#include

#include

using namespace std;

int main()

}if(flag)

else

return 0;

}擴充套件資料:其他方法判斷乙個數是否是素數:

/*** 判斷乙個數是否為素數

* @param n

* @returns

*/var isprime = function (n)for (var i = 2; i <= math.sqrt(n); i++)

}return true;}

5樓:魏子棟

#include/*sqrt*/

#include/*scanf,printf,system*/int isprime(int n)//判斷n是否為素數,如果是則返回1,否則返回0.

main ()

6樓:匿名使用者

這個程式是求100以內的素數。希望你在這個基礎上根據你的需要進修修改。這樣你既能參考也能學習哈~~~

#include "stdio.h"

void main()

if(y==2)

printf("%5d",x); }}

7樓:匿名使用者

#include

#include

void main()

if(i>=n)

printf("n=%d,是素數

\n",n);

else

printf("n=%d,不是素數\n",n);}

8樓:匿名使用者

#include

int isprime(int n)

for(i=2;i*i<=n;++i)

}return 1;

}int main(void)

else

return 0;}

9樓:匿名使用者

#include

using namespace std;

int main()

if(s==0)

cout<<"yes!前方發現乙隻野生的素數!";

else

cout<<"no!你竟然發現了乙隻可怕的合數!";

return 0;

}//這是c++,不過思路可以借鑑(〜^㉨^)〜

10樓:匿名使用者

#include

#include

int main(void)

}printf("這個數(%d)是素數!\n");

return 0;

}// 不懂請追問

11樓:重名啊人太多了

#include

#include

void main()

}if(i>k)

else}

12樓:來賓你好闖天涯

boolean flag= true;

for(i=2;i

}if(flag)

C語言指標建立函式問題,C語言指標呼叫函式問題,急求解釋(本題是《c和指標》上的題目)

第乙個表示傳遞graphadjlist型別的引用g,第二個表示傳遞graphadjlist型別的指標g 另外這是c 不是c。c語言指標呼叫函式問題,急求解釋 本題是 c和指標 上的題目 c語言指標作函式引數時的返回問題 首先,弄懂函式引數都是靠值傳遞。指標也是。進入函式後,函式建立幾個空間給形參,再...

c語言函式呼叫引數傳遞的是什麼,C語言函式呼叫引數傳遞的是什麼

c語言傳遞的是值而不是位址,這一點從vb轉過來的程式設計師一定要注意。否則不經意間就會犯錯誤。另外下層函式修改上層函式變數不是一種好習慣,容易引發錯誤。c語言中函式可以返回乙個函式值,如果你需要返回多個函式值可以用下面的形式 fun int a,int b main 如果按vb的習慣,fun int...

C語言函式呼叫的問題

主函式的a作為輸入引數輸入給函式aaa進行計算,計算後a的值不發生變化。這是c語言的基本規則。從編譯原理角度講,輸入aaa的只是a的值,並不是a所在的暫存器或位址,a的值輸入aaa後,該值被存放在另乙個臨時暫存器或位址,發生改變的是這個臨時暫存器或位址的值,而非a所在的暫存器或位址的值,所以,a的值...