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) 第乙個表示傳遞graphadjlist型別的引用g,第二個表示傳遞graphadjlist型別的指標g 另外這是c 不是c。c語言指標呼叫函式問題,急求解釋 本題是 c和指標 上的題目 c語言指標作函式引數時的返回問題 首先,弄懂函式引數都是靠值傳遞。指標也是。進入函式後,函式建立幾個空間給形參,再... c語言傳遞的是值而不是位址,這一點從vb轉過來的程式設計師一定要注意。否則不經意間就會犯錯誤。另外下層函式修改上層函式變數不是一種好習慣,容易引發錯誤。c語言中函式可以返回乙個函式值,如果你需要返回多個函式值可以用下面的形式 fun int a,int b main 如果按vb的習慣,fun int... 主函式的a作為輸入引數輸入給函式aaa進行計算,計算後a的值不發生變化。這是c語言的基本規則。從編譯原理角度講,輸入aaa的只是a的值,並不是a所在的暫存器或位址,a的值輸入aaa後,該值被存放在另乙個臨時暫存器或位址,發生改變的是這個臨時暫存器或位址的值,而非a所在的暫存器或位址的值,所以,a的值...C語言指標建立函式問題,C語言指標呼叫函式問題,急求解釋(本題是《c和指標》上的題目)
c語言函式呼叫引數傳遞的是什麼,C語言函式呼叫引數傳遞的是什麼
C語言函式呼叫的問題