- 目錄
篇一 c語(yǔ)言程序設(shè)計(jì)的實(shí)驗(yàn)報(bào)告
c語(yǔ)言程序設(shè)計(jì)的實(shí)驗(yàn)報(bào)告
1、熟練掌握if、if…else、if…else if語(yǔ)句和witch語(yǔ)句格式及使用方法,掌握if語(yǔ)句中的嵌套關(guān)系和匹配原則,利用if語(yǔ)句和switch語(yǔ)句實(shí)現(xiàn)分支選擇結(jié)構(gòu)。
2、熟練掌握while語(yǔ)句、do…while語(yǔ)句和for語(yǔ)句格式及使用方法,掌握三種循環(huán)控制語(yǔ)句的循環(huán)過(guò)程以及循環(huán)結(jié)構(gòu)的嵌套,利用循環(huán)語(yǔ)句實(shí)現(xiàn)循環(huán)結(jié)構(gòu)。
3、掌握簡(jiǎn)單、常用的算法,并在編程過(guò)程中體驗(yàn)各種算法的編程技巧。進(jìn)一步學(xué)習(xí)調(diào)試程序,掌握語(yǔ)法錯(cuò)誤和邏輯錯(cuò)誤的檢查方法。
實(shí)驗(yàn)內(nèi)容
計(jì)算并輸出1000以內(nèi)最大的10個(gè)素?cái)?shù)以及它們的和。
要求:
在程序內(nèi)部加必要的注釋。
由于偶數(shù)不是素?cái)?shù),可以不考慮對(duì)偶數(shù)的處理。
雖然在1000以內(nèi)的素?cái)?shù)超過(guò)10個(gè),但是要對(duì)1000以內(nèi)不夠10個(gè)素?cái)?shù)的情況進(jìn)行處理。
輸出形式為:素?cái)?shù)1+素?cái)?shù)2+素?cái)?shù)3+…+素?cái)?shù)10=總和值。
算法描述流程圖
main函數(shù):
判斷素?cái)?shù):
源程序
#include
#include
int sushu(int n)/* 判斷素?cái)?shù)的函數(shù) */
{
int t,i;
t=sqrt(n);
for(i=2;i<=t;i++)
if(n%i==0)/* 如果不是素?cái)?shù),返回 0 */
return 0;
return n;/* 如果是素?cái)?shù),返回該數(shù) */
}
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時(shí)的處理 */
printf('%d ',x);
else if(x<=1) /* x在1~1000范圍外時(shí)的處理 */
printf('error! ');
else
{
if(x%2==0)/* x為偶數(shù)時(shí),把x變?yōu)槠鏀?shù) */
x--;
for(i=x;i>;1;i-=2)/* x為奇數(shù)時(shí),做函數(shù)計(jì)算 */
{
n=sushu(i); /* 做判斷素?cái)?shù)的函數(shù)調(diào)用 */
if(n!=0)/* 對(duì)素?cái)?shù)的處理 */
{
a[j]=n;/* 把素?cái)?shù)由大至小存入數(shù)組a[ ]中 */
j++;
if(j<11)
m+=n; /* 統(tǒng)計(jì)前10個(gè)素?cái)?shù)之和 */
}
}
if(j<10)/* 當(dāng)素?cái)?shù)個(gè)數(shù)小于10個(gè)時(shí),結(jié)果輸出 */
{
for(i=0;i< p>;
{
n=a[i];
printf('%d',n);
printf('+');
}
printf('2=');
printf('%d ',m+2);
}
else for(i=0;i<10;i++)/* 當(dāng)素?cái)?shù)個(gè)數(shù)大于等于10個(gè)時(shí),結(jié)果輸出 */
{
n=a[i];
printf('%d',n);
if(i<9)
printf('+');
else
{
printf('=');
printf('%d ',m);
}
}
}
}
測(cè)試數(shù)據(jù)
分別輸入1000、100、10測(cè)試。
運(yùn)行結(jié)果
出現(xiàn)問(wèn)題及解決方法
當(dāng)素?cái)?shù)個(gè)數(shù)小于10時(shí)的處理不夠完善,考慮不夠周全。把“+2”的`處理做的太勉強(qiáng)。
程序過(guò)大,不夠精簡(jiǎn),無(wú)用文字太多。
學(xué)習(xí)耐心與細(xì)心不足,如scanf(“%d”,n);中的“”經(jīng)常忘記。
編程思想不夠發(fā)散,例如如何判斷素?cái)?shù),只能想出2種方式(其中1種為參考教科書(shū)上內(nèi)容);在今后學(xué)習(xí)中應(yīng)更多的動(dòng)腦,綜合運(yùn)用所學(xué)。
基本功不夠,如清屏clrscr等函數(shù)用的不好,有時(shí)同樣的問(wèn)題多次犯,給實(shí)驗(yàn)課老師帶來(lái)很大的麻煩。這說(shuō)明我的知識(shí)不夠廣,有很多有用但不做考試要求的書(shū)中內(nèi)容沒(méi)有學(xué)好,認(rèn)識(shí)程度不夠深刻。就算以后c語(yǔ)言這門課程結(jié)束后,也應(yīng)多看相關(guān)東西,多上機(jī)練習(xí),才能真正從本質(zhì)上提高自己。
知識(shí)不夠廣泛,如vc++6.0等程序,自己試了好一陣也不會(huì)用;說(shuō)明我電腦水平還是不夠,自學(xué)能力不夠。已會(huì)的東西掌握的還是不夠好。
實(shí)驗(yàn)心得
通過(guò)本次c語(yǔ)言上機(jī)實(shí)驗(yàn),我對(duì)這個(gè)介于人類與非人類之間的計(jì)算機(jī)編程語(yǔ)言有了一定的體驗(yàn)。其間開(kāi)心過(guò)、郁悶過(guò)、無(wú)奈過(guò)、彷徨過(guò)……隨著實(shí)驗(yàn)的勝利成功與實(shí)驗(yàn)報(bào)告的勝利完成,有點(diǎn)微微的自豪感使人難忘。感謝高克寧老師的高標(biāo)準(zhǔn)、嚴(yán)要求,感謝實(shí)驗(yàn)課上小老師們的耐心指點(diǎn),也感謝我在實(shí)驗(yàn)中經(jīng)歷過(guò)的點(diǎn)點(diǎn)滴滴…… 伴隨著學(xué)習(xí)的深入,我發(fā)現(xiàn)高深的東西還有很多很多,等待著我自己去挖掘。對(duì)c語(yǔ)言,我會(huì)更加努力。
篇二 c語(yǔ)言程序設(shè)計(jì)實(shí)驗(yàn)報(bào)告
實(shí)驗(yàn)名稱 計(jì)算出1000以內(nèi)10個(gè)最大素?cái)?shù)之和
實(shí)驗(yàn)?zāi)康?
1、熟練掌握if、if…else、if…else if語(yǔ)句和witch語(yǔ)句格式及使用方法,掌握if語(yǔ)句中的嵌套關(guān)系和匹配原則,利用if語(yǔ)句和switch語(yǔ)句實(shí)現(xiàn)分支選擇結(jié)構(gòu)。
2、熟練掌握while語(yǔ)句、do…while語(yǔ)句和for語(yǔ)句格式及使用方法,掌握三種循環(huán)控制語(yǔ)句的循環(huán)過(guò)程以及循環(huán)結(jié)構(gòu)的嵌套,利用循環(huán)語(yǔ)句實(shí)現(xiàn)循環(huán)結(jié)構(gòu)。
3、掌握簡(jiǎn)單、常用的算法,并在編程過(guò)程中體驗(yàn)各種算法的編程技巧。進(jìn)一步學(xué)習(xí)調(diào)試程序,掌握語(yǔ)法錯(cuò)誤和邏輯錯(cuò)誤的檢查方法。
實(shí)驗(yàn)內(nèi)容
計(jì)算并輸出1000以內(nèi)最大的10個(gè)素?cái)?shù)以及它們的和。
要求:
在程序內(nèi)部加必要的注釋。
由于偶數(shù)不是素?cái)?shù),可以不考慮對(duì)偶數(shù)的處理。
雖然在1000以內(nèi)的素?cái)?shù)超過(guò)10個(gè),但是要對(duì)1000以內(nèi)不夠10個(gè)素?cái)?shù)的情況進(jìn)行處理。
輸出形式為:素?cái)?shù)1+素?cái)?shù)2+素?cái)?shù)3+…+素?cái)?shù)10=總和值。
算法描述流程圖
Main函數(shù):
判斷素?cái)?shù):
源程序
#include
#include
int sushu(int n)/* 判斷素?cái)?shù)的函數(shù) */
{
int t,i;
t=sqrt(n);
for(i=2;i<=t;i++)
if(n%i==0)/* 如果不是素?cái)?shù),返回 0 */
return 0;
return n;/* 如果是素?cái)?shù),返回該數(shù) */
}
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時(shí)的處理 */
printf('%dn',x);
else if(x<=1) /* x在1~1000范圍外時(shí)的處理 */
printf('Error!n');
else
{
if(x%2==0)/* x為偶數(shù)時(shí),把x變?yōu)槠鏀?shù) */
x--;
for(i=x;i>1;i-=2)/* x為奇數(shù)時(shí),做函數(shù)計(jì)算 */
{
n=sushu(i); /* 做判斷素?cái)?shù)的函數(shù)調(diào)用 */
if(n!=0)/* 對(duì)素?cái)?shù)的處理 */
{
a[j]=n;/* 把素?cái)?shù)由大至小存入數(shù)組a[ ]中 */
j++;
if(j<11)
m+=n; /* 統(tǒng)計(jì)前10個(gè)素?cái)?shù)之和 */
}
}
if(j<10)/* 當(dāng)素?cái)?shù)個(gè)數(shù)小于10個(gè)時(shí),結(jié)果輸出 */
{
for(i=0;i
{
n=a[i];
printf('%d',n);
printf('+');
}
printf('2=');
printf('%dn',m+2);
}
else for(i=0;i<10;i++)/* 當(dāng)素?cái)?shù)個(gè)數(shù)大于等于10個(gè)時(shí),結(jié)果輸出 */
{
n=a[i];
printf('%d',n);
if(i<9)
printf('+');
else
{
printf('=');
printf('%dn',m);
}
}
}
}
測(cè)試數(shù)據(jù)
分別輸入1000、100、10測(cè)試。
運(yùn)行結(jié)果
出現(xiàn)問(wèn)題及解決方法
當(dāng)素?cái)?shù)個(gè)數(shù)小于10時(shí)的處理不夠完善,考慮不夠周全。把“+2”的處理做的太勉強(qiáng)。
程序過(guò)大,不夠精簡(jiǎn),無(wú)用文字太多。
學(xué)習(xí)耐心與細(xì)心不足,如scanf(“%d”,&n);中的“&”經(jīng)常忘記。
編程思想不夠發(fā)散,例如如何判斷素?cái)?shù),只能想出2種方式(其中1種為參考教科書(shū)上內(nèi)容);在今后學(xué)習(xí)中應(yīng)更多的動(dòng)腦,綜合運(yùn)用所學(xué)。
基本功不夠,如清屏clrscr()等函數(shù)用的不好,有時(shí)同樣的問(wèn)題多次犯,給實(shí)驗(yàn)課老師帶來(lái)很大的麻煩。這說(shuō)明我的知識(shí)不夠廣,有很多有用但不做考試要求的書(shū)中內(nèi)容沒(méi)有學(xué)好,認(rèn)識(shí)程度不夠深刻。就算以后C語(yǔ)言這門課程結(jié)束后,也應(yīng)多看相關(guān)東西,多上機(jī)練習(xí),才能真正從本質(zhì)上提高自己。
物理實(shí)驗(yàn)報(bào)告 ·化學(xué)實(shí)驗(yàn)報(bào)告 ·生物實(shí)驗(yàn)報(bào)告 ·實(shí)驗(yàn)報(bào)告格式 ·實(shí)驗(yàn)報(bào)告模板
知識(shí)不夠廣泛,如VC++6.0等程序,自己試了好一陣也不會(huì)用;說(shuō)明我電腦水平還是不夠,自學(xué)能力不夠。已會(huì)的東西掌握的還是不夠好。
實(shí)驗(yàn)心得
通過(guò)本次C語(yǔ)言上機(jī)實(shí)驗(yàn),我對(duì)這個(gè)介于人類與非人類之間的計(jì)算機(jī)編程語(yǔ)言有了一定的體驗(yàn)。其間開(kāi)心過(guò)、郁悶過(guò)、無(wú)奈過(guò)、彷徨過(guò)……隨著實(shí)驗(yàn)的勝利成功與實(shí)驗(yàn)報(bào)告的勝利完成,有點(diǎn)微微的自豪感使人難忘。感謝高克寧老師的高標(biāo)準(zhǔn)、嚴(yán)要求,感謝實(shí)驗(yàn)課上小老師們的耐心指點(diǎn),也感謝我在實(shí)驗(yàn)中經(jīng)歷過(guò)的點(diǎn)點(diǎn)滴滴……伴隨著學(xué)習(xí)的深入,我發(fā)現(xiàn)高深的東西還有很多很多,等待著我自己去挖掘。對(duì)C語(yǔ)言,我會(huì)更加努力。
篇三 c語(yǔ)言實(shí)驗(yàn)報(bào)告《邏輯結(jié)構(gòu)程序設(shè)計(jì)》
學(xué)號(hào):__________ 姓名:__________ 班級(jí):__________ 日期:__________
指導(dǎo)教師:__________ 成績(jī):__________
實(shí)驗(yàn)二 邏輯結(jié)構(gòu)程序設(shè)計(jì)
一、 實(shí)驗(yàn)?zāi)康?/p>
1、學(xué)會(huì)正確使用邏輯運(yùn)算符和邏輯表達(dá)式
2、熟練掌握if語(yǔ)句和switch語(yǔ)句
3、熟練掌握用while語(yǔ)句、do-while語(yǔ)句和for語(yǔ)句實(shí)現(xiàn)循環(huán)的方法
4、掌握在程序設(shè)計(jì)中的常用算法(如遞推等)
二、 實(shí)驗(yàn)內(nèi)容
1、 輸入百分制成績(jī),要求輸出成績(jī)等級(jí)‘A’、‘B’、‘C’、‘D’、‘E’。90分以上為‘A’,80——89分為‘B’,70——79分為‘C’,60——69分為‘D’,60分以下為‘E’。(習(xí)題5.6)
2、 求1!+2!+3!+4!+ … +20?。?xí)題6.4)
3、 編寫(xiě)程序并輸出下列圖形:
*******
*****
***
*
三、 實(shí)驗(yàn)步驟與過(guò)程
物理實(shí)驗(yàn)報(bào)告 ·化學(xué)實(shí)驗(yàn)報(bào)告 ·生物實(shí)驗(yàn)報(bào)告 ·實(shí)驗(yàn)報(bào)告格式 ·實(shí)驗(yàn)報(bào)告模板
四、程序調(diào)試記錄