第一篇:c語言實驗報告
c語言實驗報告
學號:__________ 姓名:__________ 班級:__________ 日期:__________
指導教師:__________ 成績:__________
實驗一 上機操作初步和簡單的C程序設計
一、實驗目的
1、熟悉C語言運行環境Turbo C++3.0
2、會簡單的程序調試
3、熟悉C語言各種類型數據的輸入輸出函數的使用方法
4、掌握順序結構程序設計
二、實驗內容
1、上機運行本章3個例題,熟悉所用系統的上機方法與步驟。(習題1.7)
2、編寫一個C程序,輸入a、b、c 3個值,輸出其中最大者。(習題1.6)
3、設圓半徑r=1.5,圓柱高h=3,求圓周長、圓面積、圓球表面積、圓球體積、圓柱體積。用scanf輸入數據,輸出計算結果,輸出時要求有文字說明,取小數點后2位數字。注意:在Trubo C++ 3.0中不能輸入漢字,只能輸入英文或拼音。(習題4.8)
4、運行如下程序,寫出運行結果。
#include
void main(){
int a=1,b=2;
a=a+b;b=a-b;a=a-b;
printf(“%d,%dn”,a,b);}
三、實驗步驟與過程
四、程序調試記錄
第二篇:《Matlab語言》實驗報告
《Matlab語言》實驗(報告)題庫
1、TDOA信號分析類
(1)已給出一段事先采集的信號,該信號為進行TDOA定位使用的基本信號,其格式為GPS+IQ + GPS+IQ …,即每包數據由GPS頭文件和IQ信號構成,GPS頭文件共58B,其數據格式為
$HT,20130114,084556,N3606.82273,E10343.59311,M1538.7,11,0*,每包IQ數據共8192B,其數據格式為I0,Q0,I1,Q1,I2,Q2…,I2047,Q2047,即I數據2048點、Q數據2048點交叉出現。換言之,每包數據實際內容為:$HT,20130114,084556,N3606.82273,E10343.59311,M1538.7,11,0* I0 Q0 I1 Q1 I2 Q2 … I2047 Q2047,程序前期已實現讀取IQ數據文件并進行關鍵信息讀取分解,請根據程序提醒,完成相關功能(數據及程序見“1-實際IQ信號實驗”文件夾)。
2、TDOA時差估計仿真類
(2)在TDOA定位技術中,時差估計是一個非常重要的環節。自行仿真2個具有一定時差的信號,用廣義互相關法(GCC)計算該2個信號的時差,并與設定時差進行對比分析(需給出詳細過程及適當的仿真圖)。
(3)在TDOA定位技術中,時差估計是一個非常重要的環節。自行仿真2個具有一定時差的信號,用互模糊函數法計算該2個信號的時差,并與設定時差進行對比分析(需給出詳細過程及適當的仿真圖)。
(4)在TDOA定位技術中,時差估計是一個非常重要的環節。自行仿真2個具有一定時差的信號,用廣義互相關(GCC)結合多項式擬合方法計算該2個信號的時差,并比較廣義互相關法估計時差和廣義互相關結合多項式擬合方法估計時差的結果,進行分析(需給出詳細過程及適當的仿真圖)。
(5)在TDOA定位技術中,時差估計是一個非常重要的環節。自行仿真2個具有一定時差的信號,自選方法計算該2個信號的時差,并與設定時差進行對比分析(需給出詳細過程及適當的仿真圖)。
3、TDOA時差估計實測類
下面三題使用“3-TDOA實測類-數據”。
(6)在TDOA定位技術中,時差估計是一個非常重要的環節。根據提供的TDOA數據,用廣義互相關(GCC)計算該2路信號的時差,統計每包數據計算結果,并分析之(需給出詳細解決過程及適當的分析圖)。
(7)在TDOA定位技術中,時差估計是一個非常重要的環節。根據提供的TDOA數據,用廣義互相關(GCC)結合多項式擬合方法計算該2路信號的時差,比較廣義互相關法估計時差和廣義互相關結合多項式擬合方法估計時差的結果,并分析之(需給出詳細解決過程及適當的分析圖)。
(8)在TDOA定位技術中,時差估計是一個非常重要的環節。根據提供的TDOA數據,自選方法計算該2路信號的時差,統計每包數據計算結果,并分析之(需給出詳細解決過程及適當的分析圖)。
4、信號頻域分析類
(9)生成一個帶有噪聲的正弦波信號,信號的頻率、幅度,噪聲的幅度自行設定。(將帶有噪聲的正弦信號放入for循環中,利于pause,實現噪聲動態變化效果,并在for循環內畫出其時域圖和幅頻圖(采樣率和采樣點數自行設定),觀察動態變化情況),最后總結系統采樣率和采樣點數對仿真信號效果的影響。
(10)自行生成一段時域信號,要求在不同的時間,信號具有不同的頻率(即非平穩信號),用短時傅里葉變換對其進行時頻分析,并呈現時頻分析結果。
(11)自行生成一段時域信號,要求在不同的時間,信號具有不同的頻率(即非平穩信號),用小波變換對其進行時頻分析,并呈現時頻分析結果。
5、信號調制解調類
(12)自行產生正弦信號作為基帶信號、載波,試合成AM信號,在AM信號上加高斯白噪聲,并將AM信號解調,畫出各信號(基帶信號、載波、合成的AM信號、解調后的基帶信號)時域圖及頻譜圖,并對比總結解調效果。
(13)自行產生正弦信號作為基帶信號、載波,試合成FM信號,在FM信號上加高斯白噪聲,并將FM信號解調,畫出各信號(基帶信號、載波、合成的FM信號、解調后的基帶信號)時域圖及頻譜圖,并對比總結解調效果。
(14)自行產生一個正弦信號,以此為載波,生成一段2ASK信號,其中數字序列隨機生成,畫出數字基帶序列、正弦信號、2ASK信號的時域圖。
(15)自行產生兩個不同頻率的正弦信號,以此為載波,生成一段2FSK信號,其中數字序列隨機生成,畫出數字基帶序列、兩個正弦信號、2FSK信號的時域圖。
(16)用Matlab模擬通信系統收發過程,要求:發射站發射FM調制信號,接收站接收該信號,并進行解調,系統參數及傳播環境/過程參數自定。
6、信號分離類
(17)自行生成一個含有3個頻率(信號頻率相近,如200Hz,210Hz,300Hz)的信號,其他參數自定,直接用FFT難以將不同頻率信號,尤其頻率較近的信號進行分離,試用AR等高階功率譜方法,將該信號進行分離,并繪制分離前后的頻譜圖(即信號的FFT圖、信號的AR分離圖)。
(18)自行生成一個含有不同頻率或不同相位的信號,直接用FFT難以將不同頻率信號,尤其頻率較近或同頻率不同相位的信號進行分離,試用MUSIC方法,將該信號進行分離,并繪制分離前后的頻譜圖(即原信號的FFT圖、信號的MUSIC分離圖),并總結現象。
(19)自行產生一段含有低頻、高頻和噪聲成分的信號,嘗試設計不同的濾波器,將高頻信號及噪聲濾掉,并繪制濾波前后的信號對比圖(含時域、頻域圖)。
7、深度學習類
(20)設計一個神經網絡(可以是任意類型的神經網絡),對手寫數字進行分類,要求小組內每個成員至少每人手寫一個數字,然后識別,并分析識別準確率。
(21)自行找一個預訓練好的網絡,對日常生活物品進行識別,要求小組內每個成員拍照1~2個物品,通過網絡進行識別,并分析識別效果。
第三篇:c語言實驗報告
學號:__________ 姓名:__________ 班級:__________ 日期:__________
指導教師:__________ 成績:__________
實驗一 上機操作初步和簡單的C程序設計
一、實驗目的1、熟悉C語言運行環境Turbo C++3.02、會簡單的程序調試
3、熟悉C語言各種類型數據的輸入輸出函數的使用方法
4、掌握順序結構程序設計
二、實驗內容
1、上機運行本章3個例題,熟悉所用系統的上機方法與步驟。(習題1.7)
2、編寫一個C程序,輸入a、b、c 3個值,輸出其中最大者。(習題1.6)
3、設圓半徑r=1.5,圓柱高h=3,求圓周長、圓面積、圓球表面積、圓球體積、圓柱體積。用scanf輸入數據,輸出計算結果,輸出時要求有文字說明,取小數點后2位數字。注意:在Trubo C++ 3.0中不能輸入漢字,只能輸入英文或拼音。(習題4.8)
4、運行如下程序,寫出運行結果。第一┆范文網www.tmdps.cn整理該文章,版權歸原作者、原出處所有...#include
void main()
{
int a=1,b=2;
a=a+b;b=a-b;a=a-b;
printf(“%d,%dn”,a,b);
}
三、實驗步驟與過程
四、程序調試記錄
第四篇:C語言 實驗報告
C語言程序設計(B)
(2010-2011-2)
實驗報告
教學班級: 學號: 姓名: 課程教師: 實驗輔導教師:
江西理工大學
自由編輯的程序
一、實驗前的源程序:
//任意整數的疊加 #include
實驗錯誤報告:
[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 `)' 構建中止 未命名10: 2 個錯誤, 0 個警告
實驗后的源程序:
//任意整數的疊加 #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(“此數的疊加=%dn”,sum);}
二、實驗前的源程序:
/*小寫字母轉大寫字母*/ #include
江西理工大學
} c2='s';c1=c1-32;c2=c2-32;printf(“%c,%cn”,c1,c);
實驗錯誤報告:
[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.)構建中止 未命名11: 3 個錯誤, 0 個警告
實驗后的源程序:
/*小寫字母轉大寫字母*/ #include
三、實驗前的源程序:
/*查看某一年是否為閏年*/ #include
{
if(year%100==0)
{
if(year%400==0)
i=1;
else
江西理工大學
i=0;
}
else
i=1;
} else
i=0;if(i)
printf(“%d 是閏年n”,year);else
printf(“%d 不是閏年n”,year);}
實驗錯誤報告:
[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 構建中止 未命名14: 2 個錯誤, 0 個警告
實驗后的源程序:
/*查看某一年是否為閏年*/ #include
{
if(year%100==0)
{
if(year%400==0)
i=1;
else
i=0;
}
else
i=1;
} else
i=0;if(i)
江西理工大學
printf(“%d 是閏年n”,year);else
printf(“%d 不是閏年n”,year);}
數據的輸入和輸出
四、程序改錯題
改錯前的源程序;#include
#include
改錯前的源程序;#include
江西理工大學
#include
long x=7654123;x*=10;printf(“x=%7d”,x);}
改錯前的源程序:
#include
#include
五、程序編寫題:已知char ch’b’;int i=3 ,j=5;float x=22.354,y=435.6789;根據下面的輸出結果編寫程序。ch =’b’,ASCII=98 i=3□□□□□□j=5 x=22.35□□□y=435.68 實驗前的源程序:
#include
江西理工大學{ 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);} 實驗錯誤報告:無 實驗后的源程序:
#include
j=%dn”,i,j);printf(“x=%.2f
y=%.2fn”,x,y);}
六、從鍵盤輸入一行字符,統計其中小寫字母、大寫字母和其它字符的個數:
實驗前的源程序:
#include “stdio.h” void main(){ printf(“請任意輸入一串字符: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(“大寫字母的個數:%dn”,sum1);printf(“小寫字母的個數:%dn”,sum2);
江西理工大學printf(“其他字符母個數:%dn”,other);}
實驗錯誤報告:
[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.)構建中止 未命名7: 3 個錯誤, 0 個警告
實驗后的源程序:
#include “stdio.h” void main(){ printf(“請任意輸入一串字符: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(“大寫字母的個數:%dn”,sum1);printf(“小寫字母的個數:%dn”,sum2);printf(“其他字符母個數:%dn”,other);}
七、使用以下公式求∏的近似值,要求精確到最后一項的絕對值小于10e-4
∏/4=1-1/3+1/5-1/7+……
實驗前的源程序:
#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.o/j);continue;break;} printf(“∏=%fn”,sum*4.0);
實驗錯誤報告:
[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 構建中止 未命名9: 2 個錯誤, 0 個警告
實驗后的源程序:
#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);}
八、用選擇法對10個整數排序: 實驗前的源程序:
江西理工大學#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個整數從小到大排列為:”);for(j=0;j<10;j++){
printf(“%d ”,a[j]);} printf(“n”);printf(“這10個整數從大到小排列為:”);for(j=9;j>=0;j--){
printf(“%d ”,a[j]);}
實驗錯誤報告:
[Error] D:Program FilesC-Free 4temp未命名1.cpp:33: parse error at end of
input 構建中止 未命名1: 1 個錯誤, 0 個警告
實驗后的源程序:
//用選擇法對10個整數排序
#include
江西理工大學 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個整數從小到大排列為:”);for(j=0;j<10;j++){ printf(“%d ”,a[j]);} printf(“n”);printf(“這10個整數從大到小排列為:”);for(j=9;j>=0;j--){ printf(“%d ”,a[j]);} }
九、求一個3*3的整數矩陣對角線元素之積:
實驗前的源程序:
#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”);
}
printf(“n”);
for(i=0;i<3;i++)
{
for(j=0;j<3;j++)
if(i=j)
ji*=a[i][j];
printf(“主對角線的積為:%dn”,ji);
} }
實驗錯誤報告:
[Error] D:Program FilesC-Free 4temp未命名4.cpp:11: parse error before
`}' 構建中止 未命名4: 1 個錯誤, 0 個警告
實驗后的源程序:
#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”);
}
江西理工大學
printf(“n”);
for(i=0;i<3;i++)
{
for(j=0;j<3;j++)
if(i=j)
ji*=a[i][j];
printf(“主對角線的積為:%dn”,ji);
} }
十、將一個數組中的值按你需從新存放。例如,原來順序為8,6,5,4,1。要求改為1,4,5,6,8。
實驗前的源程序:
#include scanf(“%d”,&a[i]);} for(i=0;i t=a[i]; a[i]=a[j-i-1]; t=a[j-i-1];} printf(“該數組逆序排列為:”); for(i=0;i printf(“%d ”,a[i]);printf(“n”);} 實驗錯誤報告: [Error] D:Program FilesC-Free 4temp未命名3.cpp:25: parse error at end of input 構建中止 未命名3: 1 個錯誤, 0 個警告 江西理工大學實驗后的源程序: #include scanf(“%d”,&a[i]);} for(i=0;i t=a[i]; a[i]=a[j-i-1]; a[j-i-1]=t;} printf(“該數組逆序排列為:”); for(i=0;i printf(“%d ”,a[i]);} printf(“n”);} 江西理工大學 C語言程序設計(B) (2010-2011-2) 實驗報告 教學班級: 學號: 姓名: 課程教師:王華金 實驗輔導教師:王華金 江西理工大學P123-- 五、1、編寫函數,找出5*5數組對角線上元素的最小值,并在主函數中調用它。要求元素的值通過鍵盤輸入。 實驗前的源程序: #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(“請輸入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(“主對角線上元素的最小值為:%dn”,m);} 實驗錯誤報告: [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 構建中止 未命名4: 1 個錯誤, 1 個警告 江西理工大學 實驗后的源程序: #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(“請輸入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(“主對角線上元素的最小值為:%dn”,m);} P123-- 五、3、編寫從整形數組中檢索給定數值的函數,若找到則輸出該數值在數組中的位置。 實驗前的源程序: #include “stdio.h” int Find(int array[],int Array size,int num){ int i;for(i=0;i 江西理工大學int main(){ int a[]={1,2,3,4,5};num=4,n=5,index;index=find(a,5,num);if(index)printf(“%d在數組中第%d位置”,num,index);else printf(“數組中沒有這個數!”);} 實驗錯誤報告: [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 江西理工大學[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 實驗后的源程序: #include “stdio.h” int Find(int Array[], int Array_size, int num){ int i;for(i=0;i P123-- 五、6、輸入10名學生5門課的成績,分別用函數求:(1)每門課的平均分。(2)找出最高的分數所對應的學生和成績。 實驗前的源程序: #include for(i=0;i<10;i++) { printf(“輸入第%d個學生五門課的成績:”,i+1); for(j=0;j<5;j++) scanf(“%f”,&a[i][j]); } } void aver_cour(float a[10][5])//課程的平均分 江西理工大學 { 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門課的平均成績為:%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語言實驗報告