第一篇:c語言實(shí)驗(yàn)報(bào)告
南昌大學(xué)實(shí)驗(yàn)報(bào)告
學(xué)生姓名: 學(xué) 號(hào): 專業(yè)班級(jí):
√ 綜合 □ 設(shè)計(jì) □ 創(chuàng)新 實(shí)驗(yàn)日期: 實(shí)驗(yàn)成績: 實(shí)驗(yàn)類型:□ 驗(yàn)證 □一.實(shí)驗(yàn)名稱
實(shí)驗(yàn)3 控制語句
二.實(shí)驗(yàn)?zāi)康?/p>
1.熟練掌握if、if…else、if……elseif語句和switch語句格式及使用方法,掌握if語句中的嵌套關(guān)系和匹配原則,利用if語句和switch語句實(shí)現(xiàn)分支選擇結(jié)構(gòu)。
2.熟練掌握while語句、do……while語句和for語句格式及使用方法,掌握三種循環(huán)控制語句的循環(huán)過程以及循環(huán)結(jié)構(gòu)的嵌套,利用循環(huán)語句實(shí)現(xiàn)循環(huán)結(jié)構(gòu)。
3.掌握簡單、常用的算法,并在編程過程中體驗(yàn)各種算法的編程技巧。進(jìn)一步學(xué)習(xí)調(diào)試程序,掌握語法錯(cuò)誤和邏輯錯(cuò)誤的檢查方法。
三.實(shí)驗(yàn)內(nèi)容
1. 選擇結(jié)構(gòu)程序設(shè)計(jì); 2. if語句的使用;
3. 使用switch語句實(shí)現(xiàn)多分支選擇結(jié)構(gòu); 4. 三種循環(huán)語句的應(yīng)用; 5. 循環(huán)結(jié)構(gòu)的嵌套;
6. break和continue語句的使用。
三.實(shí)驗(yàn)環(huán)境
PC微機(jī)
DOS操作系統(tǒng)或 Windows 操作系統(tǒng) Visual c++程序集成環(huán)境
四.實(shí)驗(yàn)內(nèi)容和步驟
本實(shí)驗(yàn)要求事先編好解決下面問題的程序,然后上機(jī)輸入程序并調(diào)試運(yùn)行程序。學(xué)會(huì)單步調(diào)試和斷點(diǎn)調(diào)試程序及變量跟蹤方法。
1. 任意輸入4個(gè)整數(shù),要求按由小到大的順序輸出。
2.編程實(shí)現(xiàn):輸入一個(gè)整數(shù),將其數(shù)值按照①小于10,②10~99,③100~999,④1000以上四個(gè)類別分類并顯示。
要求:(1)將變量定義為整型。
(2)輸入整數(shù)前,利用puts()/printf()給出提示信息。
(3)輸出結(jié)果時(shí)要有必要的說明,例如:輸入358時(shí),顯示358 is 100 to 999。(4)該程序利用if語句實(shí)現(xiàn)。
運(yùn)行程序,分別輸入9,21,321,4321數(shù)據(jù)檢查輸出信息的正確性。
3.編寫程序:根據(jù)公式
?26?1111???......?,輸出 π的值。
122232n2要求:
(1)變量π為單精度類型,n為整型;
(2)計(jì)算當(dāng)n的取值分別為20,50,100,200時(shí)的π值,說明什么問題?
(3)修改程序,不給出n值,而改為求π值,直到最后一項(xiàng)的數(shù)值小于10-4 為止。
(4)對(duì)修改后的程序,輸出π值以及總的項(xiàng)數(shù)n。輸出格式為:π=值;n=值。
4.從鍵盤輸入一個(gè)0~1000之間的任意整數(shù),輸出該整數(shù)的所有因子(例如:輸入12,其因子為1,2,3,4,6,12)。
要求:
(1)采用while循環(huán)語句實(shí)現(xiàn)。
(2)輸出格式為:Input:12 Output:1,2,3,4,6,12 5.從鍵盤輸入學(xué)生的考試成績,利用計(jì)算機(jī)將學(xué)生的成績劃分等級(jí)并輸出。學(xué)生的成績可分成5個(gè)等級(jí),90-100分為A級(jí),80-89分為B級(jí),70-79分為C級(jí),60-69分為D級(jí),0-59分為E級(jí)。要求在輸入負(fù)數(shù)時(shí),給出錯(cuò)誤提示。
① 事先編好程序,要求分別用if語句和switch語句實(shí)現(xiàn)。運(yùn)行程序,并檢查結(jié)果是否正確。
② 再運(yùn)行一次程序,輸入分?jǐn)?shù)為負(fù)值(如-70),這顯然是輸入時(shí)出錯(cuò),不應(yīng)給出等級(jí)。修改程序,使之能正確處理任何數(shù)據(jù)。當(dāng)輸入數(shù)據(jù)大于100或小于0時(shí),通知用戶“輸入數(shù)據(jù)錯(cuò)”,程序結(jié)束 6.某航空公司規(guī)定:在旅游旺季7~9月份,如果訂票20張及其以上,優(yōu)惠票價(jià)的10%,20張以下,優(yōu)惠5%;在旅游淡季1~6月份,10~12月份,訂票20張及其以上,優(yōu)惠票價(jià)的20%,20張以下,優(yōu)惠10%。編寫一個(gè)C程序,根據(jù)月份和旅客訂票張數(shù)決定優(yōu)惠率。已知機(jī)票單價(jià),請(qǐng)算出旅客的總付款。請(qǐng)使用不同的測試數(shù)據(jù)進(jìn)行測試。7.計(jì)算并輸出1000以內(nèi)最大的10個(gè)素?cái)?shù)以及它們的和。
要求:
(1)在程序內(nèi)部加必要的注釋。
(2)由于偶數(shù)不是素?cái)?shù),可以不考慮對(duì)偶數(shù)的處理。
(3)雖然在1000以內(nèi)的素?cái)?shù)超過10個(gè),但是要對(duì)1000以內(nèi)不夠10個(gè)素?cái)?shù)的情況進(jìn)行處理。
(4)輸出形式為:素?cái)?shù)1+素?cái)?shù)2+素?cái)?shù)+…+素?cái)?shù)10 = 總和值。
五.實(shí)驗(yàn)數(shù)據(jù)及處理結(jié)果
/*寫出實(shí)驗(yàn)內(nèi)容的算法(用流程圖表示)、完整的程序、結(jié)果并能對(duì)結(jié)果的正確性及上機(jī)時(shí)產(chǎn)生的問題進(jìn)行分析,注意程序變量命名應(yīng)見名知意、有適當(dāng)?shù)淖⑨?,程序書寫?guī)范*/ 【習(xí)題1】
【設(shè)計(jì)思路】 :輸入a,b,c,d四個(gè)數(shù),將四個(gè)數(shù)兩兩進(jìn)行比較,如果前者大于后者,則將兩數(shù)的值交換,否則不變。這樣重復(fù)操作6次,最后輸出a,b,c,d的值,則a,b,c,d從大到小排列。
【數(shù)據(jù)輸入】輸入整型變量 a,b,c,d 【數(shù)據(jù)輸出】輸出 a,b,c,d的值,使其從大到小排列。【源程序?qū)崿F(xiàn)】
#include
int a,b,c,d,t;printf(“please input four numbers(example:1 2 3 4):n”);scanf(“%d %d %d %d”,&a,&b,&c,&d);if(a>b){t=a;a=b;b=t;}/* 實(shí)現(xiàn)a,b的交換 */ if(a>c){t=a;a=c;c=t;}/* 實(shí)現(xiàn)a,c的交換 */ if(a>d)
} {t=a;a=d;d=t;}/* 實(shí)現(xiàn)a,d的交換 */ if(b>c){t=b;b=c;c=t;}/* 實(shí)現(xiàn)b,c的交換 */ if(b>d){t=b;b=d;d=t;}/* 實(shí)現(xiàn)b,d的交換 */ if(c>d){t=c;c=d;d=t;}/* 實(shí)現(xiàn)c,d的交換 */ printf(“%d,%d,%d,%d”,a,b,c,d);【結(jié)果及截圖】
答:輸入64 3 5 23,運(yùn)行結(jié)果為3,5,23,64,其截圖如下:
輸入格式的提示。
【修改后程序?qū)崿F(xiàn)及結(jié)果】 /*習(xí)題2、4請(qǐng)?zhí)砑哟瞬?/
【問題分析】 輸入數(shù)據(jù)時(shí),沒有按正確格式輸入,所以在輸入數(shù)據(jù)之前,應(yīng)該給出一個(gè)【習(xí)題2】
【設(shè)計(jì)思路】
【數(shù)據(jù)輸入】 輸入整型變量x?!緮?shù)據(jù)輸出】 輸出x的范圍?!驹闯绦?qū)崿F(xiàn)】
#include
main()
{
int x;
printf(“Please input a number:n”);
scanf(“%d”,&x);
printf(“%d is ”,x);
if(x<10)printf(“l(fā)ess than 10n”);
else if(x<100)printf(“10 to 99n”);
else if(x<1000)printf(“100 to 999n”);
else printf(“more than 1000n”);
return 0;
}
【結(jié)果及截圖】
答:運(yùn)行程序,分別輸入9,21,321,4321,截圖如下:
【習(xí)題3】
【源程序?qū)崿F(xiàn)】
#include
#include
main()
{
int n,N;
float pi,sum=0;
printf(“Please input a number:nN=”);
scanf(“%d”,&N);
for(n=1;n<=N;n++)
sum+=1.0/(n*n);
pi=sqrt(6*sum);
printf(“pi=%f”,pi);
return 0;} 修改后的程序: #include
int n=0;
float pi,sum=0;
do
{
n++;
sum+=1.0/(n*n);
}while(1.0/(n*n)>=1e-4);
pi=sqrt(6*sum);
printf(“pi=%f;n=%d”,pi,n);
return 0;}
【結(jié)果i及截圖】
答:計(jì)算當(dāng)N的取值分別為20,50,100,200時(shí),截圖如下:
【結(jié)果ii及截圖】
【習(xí)題4】
【源程序?qū)崿F(xiàn)】
#include
【結(jié)果及截圖】
答:輸入30,得其因式為 1,2,3,5,6,10,15,30,截圖如下:
【習(xí)題5】
【源程序?qū)崿F(xiàn)】
If 語句
#include
int num;
printf(“Input:”);
scanf(“%d”,&num);
if(num<0||num>100)printf(“The number is wrong!”);
else if(num<=59)printf(“E”);
else if(num<=69)printf(“D”);
else if(num<=79)printf(“C”);
else if(num<=89)printf(“B”);
else printf(“A”);
return 0;}
Switch 語句
#include
int num,n;
printf(“Input:”);
scanf(“%d”,&num);
n=num/10;
switch(n)
{
case 0:
case 1:
case 2:
case 3:
case 4:
case 5: printf(“E”);break;
case 6: printf(“D”);break;
case 7: printf(“C”);break;
case 8: printf(“B”);break;
case 9:
case 10: printf(“A”);break;
default: printf(“error!”);
}
return 0;}
【問題分析】
【習(xí)題6】
【源程序?qū)崿F(xiàn)】
#include
【習(xí)題7】
【源程序?qū)崿F(xiàn)】
#include
六.簡答題
七、實(shí)驗(yàn)總結(jié)及體會(huì)
第二篇:《Matlab語言》實(shí)驗(yàn)報(bào)告
《Matlab語言》實(shí)驗(yàn)(報(bào)告)題庫
1、TDOA信號(hào)分析類
(1)已給出一段事先采集的信號(hào),該信號(hào)為進(jìn)行TDOA定位使用的基本信號(hào),其格式為GPS+IQ + GPS+IQ …,即每包數(shù)據(jù)由GPS頭文件和IQ信號(hào)構(gòu)成,GPS頭文件共58B,其數(shù)據(jù)格式為
$HT,20130114,084556,N3606.82273,E10343.59311,M1538.7,11,0*,每包IQ數(shù)據(jù)共8192B,其數(shù)據(jù)格式為I0,Q0,I1,Q1,I2,Q2…,I2047,Q2047,即I數(shù)據(jù)2048點(diǎn)、Q數(shù)據(jù)2048點(diǎn)交叉出現(xiàn)。換言之,每包數(shù)據(jù)實(shí)際內(nèi)容為:$HT,20130114,084556,N3606.82273,E10343.59311,M1538.7,11,0* I0 Q0 I1 Q1 I2 Q2 … I2047 Q2047,程序前期已實(shí)現(xiàn)讀取IQ數(shù)據(jù)文件并進(jìn)行關(guān)鍵信息讀取分解,請(qǐng)根據(jù)程序提醒,完成相關(guān)功能(數(shù)據(jù)及程序見“1-實(shí)際IQ信號(hào)實(shí)驗(yàn)”文件夾)。
2、TDOA時(shí)差估計(jì)仿真類
(2)在TDOA定位技術(shù)中,時(shí)差估計(jì)是一個(gè)非常重要的環(huán)節(jié)。自行仿真2個(gè)具有一定時(shí)差的信號(hào),用廣義互相關(guān)法(GCC)計(jì)算該2個(gè)信號(hào)的時(shí)差,并與設(shè)定時(shí)差進(jìn)行對(duì)比分析(需給出詳細(xì)過程及適當(dāng)?shù)姆抡鎴D)。
(3)在TDOA定位技術(shù)中,時(shí)差估計(jì)是一個(gè)非常重要的環(huán)節(jié)。自行仿真2個(gè)具有一定時(shí)差的信號(hào),用互模糊函數(shù)法計(jì)算該2個(gè)信號(hào)的時(shí)差,并與設(shè)定時(shí)差進(jìn)行對(duì)比分析(需給出詳細(xì)過程及適當(dāng)?shù)姆抡鎴D)。
(4)在TDOA定位技術(shù)中,時(shí)差估計(jì)是一個(gè)非常重要的環(huán)節(jié)。自行仿真2個(gè)具有一定時(shí)差的信號(hào),用廣義互相關(guān)(GCC)結(jié)合多項(xiàng)式擬合方法計(jì)算該2個(gè)信號(hào)的時(shí)差,并比較廣義互相關(guān)法估計(jì)時(shí)差和廣義互相關(guān)結(jié)合多項(xiàng)式擬合方法估計(jì)時(shí)差的結(jié)果,進(jìn)行分析(需給出詳細(xì)過程及適當(dāng)?shù)姆抡鎴D)。
(5)在TDOA定位技術(shù)中,時(shí)差估計(jì)是一個(gè)非常重要的環(huán)節(jié)。自行仿真2個(gè)具有一定時(shí)差的信號(hào),自選方法計(jì)算該2個(gè)信號(hào)的時(shí)差,并與設(shè)定時(shí)差進(jìn)行對(duì)比分析(需給出詳細(xì)過程及適當(dāng)?shù)姆抡鎴D)。
3、TDOA時(shí)差估計(jì)實(shí)測類
下面三題使用“3-TDOA實(shí)測類-數(shù)據(jù)”。
(6)在TDOA定位技術(shù)中,時(shí)差估計(jì)是一個(gè)非常重要的環(huán)節(jié)。根據(jù)提供的TDOA數(shù)據(jù),用廣義互相關(guān)(GCC)計(jì)算該2路信號(hào)的時(shí)差,統(tǒng)計(jì)每包數(shù)據(jù)計(jì)算結(jié)果,并分析之(需給出詳細(xì)解決過程及適當(dāng)?shù)姆治鰣D)。
(7)在TDOA定位技術(shù)中,時(shí)差估計(jì)是一個(gè)非常重要的環(huán)節(jié)。根據(jù)提供的TDOA數(shù)據(jù),用廣義互相關(guān)(GCC)結(jié)合多項(xiàng)式擬合方法計(jì)算該2路信號(hào)的時(shí)差,比較廣義互相關(guān)法估計(jì)時(shí)差和廣義互相關(guān)結(jié)合多項(xiàng)式擬合方法估計(jì)時(shí)差的結(jié)果,并分析之(需給出詳細(xì)解決過程及適當(dāng)?shù)姆治鰣D)。
(8)在TDOA定位技術(shù)中,時(shí)差估計(jì)是一個(gè)非常重要的環(huán)節(jié)。根據(jù)提供的TDOA數(shù)據(jù),自選方法計(jì)算該2路信號(hào)的時(shí)差,統(tǒng)計(jì)每包數(shù)據(jù)計(jì)算結(jié)果,并分析之(需給出詳細(xì)解決過程及適當(dāng)?shù)姆治鰣D)。
4、信號(hào)頻域分析類
(9)生成一個(gè)帶有噪聲的正弦波信號(hào),信號(hào)的頻率、幅度,噪聲的幅度自行設(shè)定。(將帶有噪聲的正弦信號(hào)放入for循環(huán)中,利于pause,實(shí)現(xiàn)噪聲動(dòng)態(tài)變化效果,并在for循環(huán)內(nèi)畫出其時(shí)域圖和幅頻圖(采樣率和采樣點(diǎn)數(shù)自行設(shè)定),觀察動(dòng)態(tài)變化情況),最后總結(jié)系統(tǒng)采樣率和采樣點(diǎn)數(shù)對(duì)仿真信號(hào)效果的影響。
(10)自行生成一段時(shí)域信號(hào),要求在不同的時(shí)間,信號(hào)具有不同的頻率(即非平穩(wěn)信號(hào)),用短時(shí)傅里葉變換對(duì)其進(jìn)行時(shí)頻分析,并呈現(xiàn)時(shí)頻分析結(jié)果。
(11)自行生成一段時(shí)域信號(hào),要求在不同的時(shí)間,信號(hào)具有不同的頻率(即非平穩(wěn)信號(hào)),用小波變換對(duì)其進(jìn)行時(shí)頻分析,并呈現(xiàn)時(shí)頻分析結(jié)果。
5、信號(hào)調(diào)制解調(diào)類
(12)自行產(chǎn)生正弦信號(hào)作為基帶信號(hào)、載波,試合成AM信號(hào),在AM信號(hào)上加高斯白噪聲,并將AM信號(hào)解調(diào),畫出各信號(hào)(基帶信號(hào)、載波、合成的AM信號(hào)、解調(diào)后的基帶信號(hào))時(shí)域圖及頻譜圖,并對(duì)比總結(jié)解調(diào)效果。
(13)自行產(chǎn)生正弦信號(hào)作為基帶信號(hào)、載波,試合成FM信號(hào),在FM信號(hào)上加高斯白噪聲,并將FM信號(hào)解調(diào),畫出各信號(hào)(基帶信號(hào)、載波、合成的FM信號(hào)、解調(diào)后的基帶信號(hào))時(shí)域圖及頻譜圖,并對(duì)比總結(jié)解調(diào)效果。
(14)自行產(chǎn)生一個(gè)正弦信號(hào),以此為載波,生成一段2ASK信號(hào),其中數(shù)字序列隨機(jī)生成,畫出數(shù)字基帶序列、正弦信號(hào)、2ASK信號(hào)的時(shí)域圖。
(15)自行產(chǎn)生兩個(gè)不同頻率的正弦信號(hào),以此為載波,生成一段2FSK信號(hào),其中數(shù)字序列隨機(jī)生成,畫出數(shù)字基帶序列、兩個(gè)正弦信號(hào)、2FSK信號(hào)的時(shí)域圖。
(16)用Matlab模擬通信系統(tǒng)收發(fā)過程,要求:發(fā)射站發(fā)射FM調(diào)制信號(hào),接收站接收該信號(hào),并進(jìn)行解調(diào),系統(tǒng)參數(shù)及傳播環(huán)境/過程參數(shù)自定。
6、信號(hào)分離類
(17)自行生成一個(gè)含有3個(gè)頻率(信號(hào)頻率相近,如200Hz,210Hz,300Hz)的信號(hào),其他參數(shù)自定,直接用FFT難以將不同頻率信號(hào),尤其頻率較近的信號(hào)進(jìn)行分離,試用AR等高階功率譜方法,將該信號(hào)進(jìn)行分離,并繪制分離前后的頻譜圖(即信號(hào)的FFT圖、信號(hào)的AR分離圖)。
(18)自行生成一個(gè)含有不同頻率或不同相位的信號(hào),直接用FFT難以將不同頻率信號(hào),尤其頻率較近或同頻率不同相位的信號(hào)進(jìn)行分離,試用MUSIC方法,將該信號(hào)進(jìn)行分離,并繪制分離前后的頻譜圖(即原信號(hào)的FFT圖、信號(hào)的MUSIC分離圖),并總結(jié)現(xiàn)象。
(19)自行產(chǎn)生一段含有低頻、高頻和噪聲成分的信號(hào),嘗試設(shè)計(jì)不同的濾波器,將高頻信號(hào)及噪聲濾掉,并繪制濾波前后的信號(hào)對(duì)比圖(含時(shí)域、頻域圖)。
7、深度學(xué)習(xí)類
(20)設(shè)計(jì)一個(gè)神經(jīng)網(wǎng)絡(luò)(可以是任意類型的神經(jīng)網(wǎng)絡(luò)),對(duì)手寫數(shù)字進(jìn)行分類,要求小組內(nèi)每個(gè)成員至少每人手寫一個(gè)數(shù)字,然后識(shí)別,并分析識(shí)別準(zhǔn)確率。
(21)自行找一個(gè)預(yù)訓(xùn)練好的網(wǎng)絡(luò),對(duì)日常生活物品進(jìn)行識(shí)別,要求小組內(nèi)每個(gè)成員拍照1~2個(gè)物品,通過網(wǎng)絡(luò)進(jìn)行識(shí)別,并分析識(shí)別效果。
第三篇:c語言實(shí)驗(yàn)報(bào)告
學(xué)號(hào):__________ 姓名:__________ 班級(jí):__________ 日期:__________
指導(dǎo)教師:__________ 成績:__________
實(shí)驗(yàn)一 上機(jī)操作初步和簡單的C程序設(shè)計(jì)
一、實(shí)驗(yàn)?zāi)康?、熟悉C語言運(yùn)行環(huán)境Turbo C++3.02、會(huì)簡單的程序調(diào)試
3、熟悉C語言各種類型數(shù)據(jù)的輸入輸出函數(shù)的使用方法
4、掌握順序結(jié)構(gòu)程序設(shè)計(jì)
二、實(shí)驗(yàn)內(nèi)容
1、上機(jī)運(yùn)行本章3個(gè)例題,熟悉所用系統(tǒng)的上機(jī)方法與步驟。(習(xí)題1.7)
2、編寫一個(gè)C程序,輸入a、b、c 3個(gè)值,輸出其中最大者。(習(xí)題1.6)
3、設(shè)圓半徑r=1.5,圓柱高h(yuǎn)=3,求圓周長、圓面積、圓球表面積、圓球體積、圓柱體積。用scanf輸入數(shù)據(jù),輸出計(jì)算結(jié)果,輸出時(shí)要求有文字說明,取小數(shù)點(diǎn)后2位數(shù)字。注意:在Trubo C++ 3.0中不能輸入漢字,只能輸入英文或拼音。(習(xí)題4.8)
4、運(yùn)行如下程序,寫出運(yùn)行結(jié)果。第一┆范文網(wǎng)004km.cn整理該文章,版權(quán)歸原作者、原出處所有...#include
void main()
{
int a=1,b=2;
a=a+b;b=a-b;a=a-b;
printf(“%d,%dn”,a,b);
}
三、實(shí)驗(yàn)步驟與過程
四、程序調(diào)試記錄
第四篇:C語言 實(shí)驗(yàn)報(bào)告
C語言程序設(shè)計(jì)(B)
(2010-2011-2)
實(shí)驗(yàn)報(bào)告
教學(xué)班級(jí): 學(xué)號(hào): 姓名: 課程教師: 實(shí)驗(yàn)輔導(dǎo)教師:
江西理工大學(xué)
自由編輯的程序
一、實(shí)驗(yàn)前的源程序:
//任意整數(shù)的疊加 #include
實(shí)驗(yàn)錯(cuò)誤報(bào)告:
[Error] D:Program FilesC-Free 4temp未命名10.cpp:7: parse error before
`for' [Error] D:Program FilesC-Free 4temp未命名10.cpp:7: parse error before `)' 構(gòu)建中止 未命名10: 2 個(gè)錯(cuò)誤, 0 個(gè)警告
實(shí)驗(yàn)后的源程序:
//任意整數(shù)的疊加 #include
int i,j,sum=0;printf(“please input a int numbern”);scanf(“%d”,&j);for(i=0;i<=j;i++)sum=sum+i;printf(“此數(shù)的疊加=%dn”,sum);}
二、實(shí)驗(yàn)前的源程序:
/*小寫字母轉(zhuǎn)大寫字母*/ #include
江西理工大學(xué)
} c2='s';c1=c1-32;c2=c2-32;printf(“%c,%cn”,c1,c);
實(shí)驗(yàn)錯(cuò)誤報(bào)告:
[Error] D:Program FilesC-Free 4temp未命名11.cpp:9: `c' undeclared(first
use this function)[Error] D:Program FilesC-Free 4temp未命名11.cpp:9:(Each undeclared
identifier is reported only once [Error] D:Program FilesC-Free 4temp未命名11.cpp:9: for each function it
appears in.)構(gòu)建中止 未命名11: 3 個(gè)錯(cuò)誤, 0 個(gè)警告
實(shí)驗(yàn)后的源程序:
/*小寫字母轉(zhuǎn)大寫字母*/ #include
三、實(shí)驗(yàn)前的源程序:
/*查看某一年是否為閏年*/ #include
{
if(year%100==0)
{
if(year%400==0)
i=1;
else
江西理工大學(xué)
i=0;
}
else
i=1;
} else
i=0;if(i)
printf(“%d 是閏年n”,year);else
printf(“%d 不是閏年n”,year);}
實(shí)驗(yàn)錯(cuò)誤報(bào)告:
[Error] D:Program FilesC-Free 4temp未命名14.cpp:15: parse error before
`else' [Error] D:Program FilesC-Free 4temp未命名14.cpp:25: parse error at end
of input 構(gòu)建中止 未命名14: 2 個(gè)錯(cuò)誤, 0 個(gè)警告
實(shí)驗(yàn)后的源程序:
/*查看某一年是否為閏年*/ #include
{
if(year%100==0)
{
if(year%400==0)
i=1;
else
i=0;
}
else
i=1;
} else
i=0;if(i)
江西理工大學(xué)
printf(“%d 是閏年n”,year);else
printf(“%d 不是閏年n”,year);}
數(shù)據(jù)的輸入和輸出
四、程序改錯(cuò)題
改錯(cuò)前的源程序;#include
#include
改錯(cuò)前的源程序;#include
江西理工大學(xué)
#include
long x=7654123;x*=10;printf(“x=%7d”,x);}
改錯(cuò)前的源程序:
#include
#include
五、程序編寫題:已知char ch’b’;int i=3 ,j=5;float x=22.354,y=435.6789;根據(jù)下面的輸出結(jié)果編寫程序。ch =’b’,ASCII=98 i=3□□□□□□j=5 x=22.35□□□y=435.68 實(shí)驗(yàn)前的源程序:
#include
江西理工大學(xué){ char ch='b';int i=3,j=5;float x=22.354,y=435.6789;printf(“ch='%c',ASCII=%dn”,ch,ch);printf(“i=%d
j=%dn”,i,j);printf(“x=%.2f
y=%.2fn”,x,y);} 實(shí)驗(yàn)錯(cuò)誤報(bào)告:無 實(shí)驗(yàn)后的源程序:
#include
j=%dn”,i,j);printf(“x=%.2f
y=%.2fn”,x,y);}
六、從鍵盤輸入一行字符,統(tǒng)計(jì)其中小寫字母、大寫字母和其它字符的個(gè)數(shù):
實(shí)驗(yàn)前的源程序:
#include “stdio.h” void main(){ printf(“請(qǐng)任意輸入一串字符:n”);
char ch,sum1=0,sum2=0,other=0;
ch=getchar();
while(c!='n')
{
if(c>='A'&&c<='Z')sum1++;
else if(c>='a'&&c<='z')sum2++;
else other++;
c=getchar();
} printf(“大寫字母的個(gè)數(shù):%dn”,sum1);printf(“小寫字母的個(gè)數(shù):%dn”,sum2);
江西理工大學(xué)printf(“其他字符母個(gè)數(shù):%dn”,other);}
實(shí)驗(yàn)錯(cuò)誤報(bào)告:
[Error] D:Program FilesC-Free 4temp未命名7.cpp:7: `c' undeclared(first
use this function)[Error] D:Program FilesC-Free 4temp未命名7.cpp:7:(Each undeclared
identifier is reported only once [Error] D:Program FilesC-Free 4temp未命名7.cpp:7: for each function it
appears in.)構(gòu)建中止 未命名7: 3 個(gè)錯(cuò)誤, 0 個(gè)警告
實(shí)驗(yàn)后的源程序:
#include “stdio.h” void main(){ printf(“請(qǐng)任意輸入一串字符:n”);
char ch,sum1=0,sum2=0,other=0;
ch=getchar();
while(ch!='n')
{
if(ch>='A'&&ch<='Z')sum1++;
else if(ch>='a'&&ch<='z')sum2++;
else other++;
ch=getchar();
} printf(“大寫字母的個(gè)數(shù):%dn”,sum1);printf(“小寫字母的個(gè)數(shù):%dn”,sum2);printf(“其他字符母個(gè)數(shù):%dn”,other);}
七、使用以下公式求∏的近似值,要求精確到最后一項(xiàng)的絕對(duì)值小于10e-4
∏/4=1-1/3+1/5-1/7+……
實(shí)驗(yàn)前的源程序:
#include “stdio.h” #include “math.h” main(){
江西理工大學(xué)
} float sum=0;int i,j;for(i=1;;i++){ j=2*i-1;if(1.0/j>0.0001){ sum+=pow(-1,i+1)*(1.o/j);continue;break;} printf(“∏=%fn”,sum*4.0);
實(shí)驗(yàn)錯(cuò)誤報(bào)告:
[Error] D:Program FilesC-Free 4temp未命名9.cpp:13: nondigits in number
and not hexadecimal [Error] D:Program FilesC-Free 4temp未命名9.cpp:19: parse error at end
of input 構(gòu)建中止 未命名9: 2 個(gè)錯(cuò)誤, 0 個(gè)警告
實(shí)驗(yàn)后的源程序:
#include “stdio.h” #include “math.h” main(){ float sum=0;int i,j;for(i=1;;i++){
j=2*i-1;if(1.0/j>0.0001){ sum+=pow(-1,i+1)*(1.0/j);continue;} break;} printf(“∏=%fn”,sum*4.0);}
八、用選擇法對(duì)10個(gè)整數(shù)排序: 實(shí)驗(yàn)前的源程序:
江西理工大學(xué)#include
scanf(“%d”,a[i]);} printf(“n”);for(i=0;i<10;i++)for(j=0;j<10-j;j++){
if(a[j]>a[j+1])
{
k=a[j];
a[j]=a[j+1];
k=a[j+1];} printf(“這10個(gè)整數(shù)從小到大排列為:”);for(j=0;j<10;j++){
printf(“%d ”,a[j]);} printf(“n”);printf(“這10個(gè)整數(shù)從大到小排列為:”);for(j=9;j>=0;j--){
printf(“%d ”,a[j]);}
實(shí)驗(yàn)錯(cuò)誤報(bào)告:
[Error] D:Program FilesC-Free 4temp未命名1.cpp:33: parse error at end of
input 構(gòu)建中止 未命名1: 1 個(gè)錯(cuò)誤, 0 個(gè)警告
實(shí)驗(yàn)后的源程序:
//用選擇法對(duì)10個(gè)整數(shù)排序
#include
江西理工大學(xué) int i,j,k;for(i=0;i<10;i++){ scanf(“%d”,a[i]);} printf(“n”);for(i=0;i<10;i++)for(j=0;j<10-j;j++){ if(a[j]>a[j+1]){
k=a[j];
a[j]=a[j+1];
k=a[j+1];} } printf(“這10個(gè)整數(shù)從小到大排列為:”);for(j=0;j<10;j++){ printf(“%d ”,a[j]);} printf(“n”);printf(“這10個(gè)整數(shù)從大到小排列為:”);for(j=9;j>=0;j--){ printf(“%d ”,a[j]);} }
九、求一個(gè)3*3的整數(shù)矩陣對(duì)角線元素之積:
實(shí)驗(yàn)前的源程序:
#include
scanf(“%d”,&a[i][j])} for(i=0;i<3;i++)
江西理工大學(xué) {
for(j=0;j<3;j++)
{
printf(“%d ”,a[i][j]);
}
printf(“n”);
}
printf(“n”);
for(i=0;i<3;i++)
{
for(j=0;j<3;j++)
if(i=j)
ji*=a[i][j];
printf(“主對(duì)角線的積為:%dn”,ji);
} }
實(shí)驗(yàn)錯(cuò)誤報(bào)告:
[Error] D:Program FilesC-Free 4temp未命名4.cpp:11: parse error before
`}' 構(gòu)建中止 未命名4: 1 個(gè)錯(cuò)誤, 0 個(gè)警告
實(shí)驗(yàn)后的源程序:
#include
scanf(“%d”,&a[i][j]);} for(i=0;i<3;i++){
for(j=0;j<3;j++)
{
printf(“%d ”,a[i][j]);
}
printf(“n”);
}
江西理工大學(xué)
printf(“n”);
for(i=0;i<3;i++)
{
for(j=0;j<3;j++)
if(i=j)
ji*=a[i][j];
printf(“主對(duì)角線的積為:%dn”,ji);
} }
十、將一個(gè)數(shù)組中的值按你需從新存放。例如,原來順序?yàn)?,6,5,4,1。要求改為1,4,5,6,8。
實(shí)驗(yàn)前的源程序:
#include scanf(“%d”,&a[i]);} for(i=0;i t=a[i]; a[i]=a[j-i-1]; t=a[j-i-1];} printf(“該數(shù)組逆序排列為:”); for(i=0;i printf(“%d ”,a[i]);printf(“n”);} 實(shí)驗(yàn)錯(cuò)誤報(bào)告: [Error] D:Program FilesC-Free 4temp未命名3.cpp:25: parse error at end of input 構(gòu)建中止 未命名3: 1 個(gè)錯(cuò)誤, 0 個(gè)警告 江西理工大學(xué)實(shí)驗(yàn)后的源程序: #include scanf(“%d”,&a[i]);} for(i=0;i t=a[i]; a[i]=a[j-i-1]; a[j-i-1]=t;} printf(“該數(shù)組逆序排列為:”); for(i=0;i printf(“%d ”,a[i]);} printf(“n”);} 江西理工大學(xué) C語言程序設(shè)計(jì)(B) (2010-2011-2) 實(shí)驗(yàn)報(bào)告 教學(xué)班級(jí): 學(xué)號(hào): 姓名: 課程教師:王華金 實(shí)驗(yàn)輔導(dǎo)教師:王華金 江西理工大學(xué)P123-- 五、1、編寫函數(shù),找出5*5數(shù)組對(duì)角線上元素的最小值,并在主函數(shù)中調(diào)用它。要求元素的值通過鍵盤輸入。 實(shí)驗(yàn)前的源程序: #include for(j=0;j<5;j++) if(i==j) if(p[i][j] return min;} void main(){ int i,j,m,a[5][5];printf(“請(qǐng)輸入a[5][5]:n”);for(i=0;i<5;i++)for(j=0;j<5;j++)scanf(“%d”,&a[i][j]);printf(“a[5][5]:n”);for(i=0;i<5;i++){for(j=0;j<5;j++)printf(“%4d”,a[i][j]);printf(“n”);} m=func(a);printf(“主對(duì)角線上元素的最小值為:%dn”,m);} 實(shí)驗(yàn)錯(cuò)誤報(bào)告: [Error] C:Users陶鑫DocumentsC-FreeTemp未命名4.cpp:13: error: `main' must return `int' [Warning] C:Users陶鑫DocumentsC-FreeTemp未命名4.cpp:27:2: warning: no newline at end of file 構(gòu)建中止 未命名4: 1 個(gè)錯(cuò)誤, 1 個(gè)警告 江西理工大學(xué) 實(shí)驗(yàn)后的源程序: #include for(j=0;j<5;j++) if(i==j) if(p[i][j] return min;} main(){ int i,j,m,a[5][5];printf(“請(qǐng)輸入a[5][5]:n”);for(i=0;i<5;i++)for(j=0;j<5;j++)scanf(“%d”,&a[i][j]);printf(“a[5][5]:n”);for(i=0;i<5;i++){for(j=0;j<5;j++)printf(“%4d”,a[i][j]);printf(“n”);} m=func(a);printf(“主對(duì)角線上元素的最小值為:%dn”,m);} P123-- 五、3、編寫從整形數(shù)組中檢索給定數(shù)值的函數(shù),若找到則輸出該數(shù)值在數(shù)組中的位置。 實(shí)驗(yàn)前的源程序: #include “stdio.h” int Find(int array[],int Array size,int num){ int i;for(i=0;i 江西理工大學(xué)int main(){ int a[]={1,2,3,4,5};num=4,n=5,index;index=find(a,5,num);if(index)printf(“%d在數(shù)組中第%d位置”,num,index);else printf(“數(shù)組中沒有這個(gè)數(shù)!”);} 實(shí)驗(yàn)錯(cuò)誤報(bào)告: [Error] C:Users陶鑫DocumentsC-FreeTemp未命名3.cpp:2: error: expected `,' or `...' before “size” [Error] C:Users陶鑫DocumentsC-FreeTemp未命名3.cpp:5: error: expected `;' before “size” [Error] C:Users陶鑫DocumentsC-FreeTemp未命名3.cpp:5: error: `size' was not declared in this scope [Error] C:Users陶鑫DocumentsC-FreeTemp未命名3.cpp:5: error: expected `)' before ';' token [Error] C:Users陶鑫DocumentsC-FreeTemp未命名3.cpp:5: error: expected `;' before ')' token [Error] C:Users陶鑫DocumentsC-FreeTemp未命名3.cpp:13: error: `num' was not declared in this scope [Error] C:Users陶鑫DocumentsC-FreeTemp未命名3.cpp:13: error: `n' was not declared in this scope [Error] C:Users陶鑫DocumentsC-FreeTemp未命名3.cpp:13: error: `index' was not declared in this scope 江西理工大學(xué)[Error] C:Users陶鑫DocumentsC-FreeTemp未命名3.cpp:14: error: `find' was not declared in this scope [Warning] C:Users陶鑫DocumentsC-FreeTemp未命名3.cpp:19:2: warning: no newline at end of file 實(shí)驗(yàn)后的源程序: #include “stdio.h” int Find(int Array[], int Array_size, int num){ int i;for(i=0;i P123-- 五、6、輸入10名學(xué)生5門課的成績,分別用函數(shù)求:(1)每門課的平均分。(2)找出最高的分?jǐn)?shù)所對(duì)應(yīng)的學(xué)生和成績。 實(shí)驗(yàn)前的源程序: #include for(i=0;i<10;i++) { printf(“輸入第%d個(gè)學(xué)生五門課的成績:”,i+1); for(j=0;j<5;j++) scanf(“%f”,&a[i][j]); } } void aver_cour(float a[10][5])//課程的平均分 江西理工大學(xué) { int i,j; float sum; for(i=0;i<5;i++) { sum=0; for(j=0;j<10;j++) sum+=a[j][i]; printf(“第%d門課的平均成績?yōu)椋?6.2fn”,i+1,sum/10); } } void highest(float a[10][5])//查找最高分 { int i,j,flag1,flag2;float max=0; for(i=0;i<10;i++) { for(j=0;j<5;j++) {第五篇:C語言實(shí)驗(yàn)報(bào)告