c語言程序課程設計的實驗報告
實驗名稱
計算出1000以內10個最大素數之和
實驗目的
1、熟練掌握if、if…else、if…else if語句和witch語句格式及使用方法,掌握if語句中的嵌套關係和匹配原則,利用if語句和switch語句實現分支選擇結構。
2、熟練掌握while語句、do…while語句和for語句格式及使用方法,掌握三種循環控制語句的循環過程以及循環結構的嵌套,利用循環語句實現循環結構。
3、掌握簡單、常用的算法,並在編程過程中體驗各種算法的編程技巧。進一步學習調試程序,掌握語法錯誤和邏輯錯誤的檢查方法。
實驗內容
計算並輸出1000以內最大的10個素數以及它們的和。
要求:
在程序內部加必要的註釋。
由於偶數不是素數,可以不考慮對偶數的.處理。
雖然在1000以內的素數超過10個,但是要對1000以內不夠10個素數的情況進行處理。
輸出形式爲:素數1+素數2+素數3+…+素數10=總和值。
判斷素數:
源程序
#include
#include
int sushu(int n)/* 判斷素數的函數 */
{
int t,i;
t=sqrt(n);
for(i=2;i<=t;i++)
if(n%i==0)/* 如果不是素數,返回 0 */
return 0;
return n;/* 如果是素數,返回該數 */
}
void main()
{
int i,j=0,n,m=0,a[1000],x;
/*clrscr();*/
printf("Please input a number form 1 to 1000:");
scanf("%d",&x);
if(x==2)/* x=2時的處理 */
printf("%dn",x);
else if(x<=1) /* x在1~1000範圍外時的處理 */
printf("Error!n");
else
{
if(x%2==0)/* x爲偶數時,把x變爲奇數 */
x--;
for(i=x;i>1;i-=2)/* x爲奇數時,做函數計算 */
{
n=sushu(i); /* 做判斷素數的函數調用 */
if(n!=0)/* 對素數的處理 */
{
a[j]=n;/* 把素數由大至小存入數組a[ ]中 */
j++;
if(j<11)
m+=n; /* 統計前10個素數之和 */
}
}
if(j<10)/* 當素數個數小於10個時,結果輸出 */
{
for(i=0;i
{
n=a[i];
printf("%d",n);
printf("+");
}
printf("2=");
printf("%dn",m+2);
}
else for(i=0;i<10;i++)/* 當素數個數大於等於10個時,結果輸出 */
{
n=a[i];
printf("%d",n);
if(i<9)
printf("+");
else
{
printf("=");
printf("%dn",m);
}
}
}
}
測試數據
分別輸入1000、100、10測試。
運行結果
出現問題及解決方法
當素數個數小於10時的處理不夠完善,考慮不夠周全。把“+2”的處理做的太勉強。
程序過大,不夠精簡,無用文字太多。
學習耐心與細心不足,如scanf(“%d”,&n);中的“&”經常忘記。
編程思想不夠發散,例如如何判斷素數,只能想出2種方式(其中1種爲參考教科書上內容);在今後學習中應更多的動腦,綜合運用所學。
基本功不夠,如清屏clrscr()等函數用的不好,有時同樣的問題多次犯,給實驗課老師帶來很大的麻煩。這說明我的知識不夠廣,有很多有用但不做考試要求的書中內容沒有學好,認識程度不夠深刻。就算以後C語言這門課程結束後,也應多看相關東西,多上機練習,才能真正從本質上提高自己。
知識不夠廣泛,如VC++6.0等程序,自己試了好一陣也不會用;說明我電腦水平還是不夠,自學能力不夠。已會的東西掌握的還是不夠好。
實驗心得
通過本次C語言上機實驗,我對這個介於人類與非人類之間的計算機編程語言有了一定的體驗。其間開心過、鬱悶過、無奈過、彷徨過……隨着實驗的勝利成功與實驗報告的勝利完成,有點微微的自豪感使人難忘。感謝高克寧老師的高標準、嚴要求,感謝實驗課上小老師們的耐心指點,也感謝我在實驗中經歷過的點點滴滴……伴隨着學習的深入,我發現高深的東西還有很多很多,等待着我自己去挖掘。對C語言,我會更加努力。
-
我的設計作文400字大全(3篇)
在現實生活或工作學習中,許多人都有過寫作文的經歷,對作文都不陌生吧,藉助作文可以宣泄心中的情感,調節自己的心情。作文的注意事項有許多,你確定會寫嗎?下面是小編精心整理的我的設計作文400字3篇,歡迎閱讀,希望大家能夠喜歡。我的設計作文400字篇1成爲一名設計師一直...
-
我的設計作文600字(必備3篇)
在生活、工作和學習中,大家一定都接觸過作文吧,作文是由文字組成,經過人的思想考慮,通過語言組織來表達一個主題意義的文體。相信寫作文是一個讓許多人都頭痛的問題,以下是小編精心整理的我的設計作文600字3篇,歡迎閱讀,希望大家能夠喜歡。我的設計作文600字篇19月24...
-
廣告設計服務合同【必備】
隨着人們法律意識的建立,合同對我們的約束力越來越不可忽視,合同的簽訂是對雙方之間權利義務的最好規範。那麼大家知道合法的合同書怎麼寫嗎?下面是小編爲大家收集的廣告設計服務合同,歡迎大家借鑑與參考,希望對大家有所幫助。廣告設計服務合同1發包人(以下簡稱甲方):...
-
(通用)設計房子的作文400字
在日復一日的學習、工作或生活中,大家對作文都不陌生吧,藉助作文人們可以實現文化交流的目的。相信許多人會覺得作文很難寫吧,下面是小編爲大家整理的設計房子的作文400字5篇,歡迎大家分享。設計房子的作文400字篇1過了許多年,我當上了工程師,心裏有個願望,做一個自己...