“要成為絕世高手,并非一朝一夕,除非是天生武學奇才,但是這種人…萬中無一”
——包租婆這道理放在C語言學習上也一并受用。在編程方面有著天賦異稟的人畢竟是少數,我們大多數人想要從C語言小白進階到高手,需要經歷的是日積月累的學習。那么如何學習呢?當然是每天都練習一道C語言題目!!作者
閆小林
白天搬磚,晚上做夢。我有故事,你有酒么?
例16:C語言實現輸入一個大于3的整數n,判斷他是否為素數(質數)。解題思路:本題采用的算法是,讓n被i除,如果number能被2~(number-1)之中的任何一個整數整除,則表示number肯定不是素數,不必再繼續被后面的整數除,因此,可以提前結束循環。源代碼演示:#include//頭文件 int?main()//主函數 {int?number,i;//定義變量 printf("請隨機輸入一個數:");//提示語句 scanf("%d",&number);//鍵盤輸入需要判斷的數 for(i=2;i<=number-1;i++)//循環從2開始,到這個數的掐前一個數為止
??{if(number%i==0)//如果取余結果為0 break;
??} if(i??{printf("%d不是素數",number);
??} else
??{printf("%d是素數",number);
??} return?0; //函數返回值為0
}
編譯運行結果如下:請隨機輸入一個數:5656不是素數
--------------------------------
Process exited after 4.465?seconds with?return?value 0
請按任意鍵繼續. . .
讀者需要知道什么是素數,素數一般指質數,是指在大于1的自然數中,除了1和它本身以外不再有其他因數的自然數。此題的關鍵是看結束循環時i的值是否小于number,如果number能被2~(number-1)之間的一個整數整除,則必然是由break語句導致循環提前結束,即i并未達到number的值時,循環就終止了。C語言學習路線????C語言開發工具C++學習路線C#學習路線長按關注