題目:
依次打印出1~100,遇到素數(shù)轉(zhuǎn)行。效果如下:
?
解題思路:
把判斷是否為素數(shù)編寫成一個函數(shù)。再調(diào)用函數(shù),是素數(shù)則換行輸出,否則,直接輸出。
源碼:
、、、
#include<stdio.h>
#include<math.h>
int check(int x);
int main()
{
?int i=0;
?for(i=1;i<=100;i++)
?{
??if(check(i)==1 && i>1)
??{
???printf("%d\n",i);
??}
??else
??{
???printf("%d ",i);
??}
?}
?printf("\n");
?return 0;
}
int check(int n)
{
?int i;
?for(i=2;i<=sqrt(n);i++)
?{
??if(n%i==0)
???return 0;
?}
?return 1;
}
、、、
執(zhí)行結(jié)果:
?
總結(jié):
整體思路很明確:判斷是否為素數(shù),是則換行,否則直接輸出。
編寫函數(shù)那里簡化,不再判斷i>sqrt(n),而是直接返回。(真的不會用代碼框,到處找了還是不會(手動輸入難過的表情))
ps:不會用代碼框,這樣不大好看??赡軙`反天花板樓主規(guī)定的格式,不過還是弱弱的附上我的截圖吧
?