當前位置:才華齋>計算機>C語言>

C語言上級實驗報告精選三篇

C語言 閱讀(1.28W)

C語言上級實驗報告精選三篇

C語言上級實驗報告精選三篇

篇一:C語言程式設計 實驗報告---範例

C語言程式設計實驗報告

學號:

姓名:

1、設計一個函式fc,統計陣列中偶數和奇數的個數,陣列元素個數不多於10個。編寫main函式,正確呼叫fc函式,實現對陣列a的統計,輸出統計結果。

#include "stdio.h"

int j=0;

int fun(int a[],int n)

{

int i,c=0;

for(i=0;i<n;i++)

if(a[i]%2==0) c=c+1;

else j=j+1;

return(c);

}

int main()

{

int i,num[5];

for(i=0;i<5;i++)

scanf("%d",&num[i]);

printf("oushu: %d ",fun(num,5));

printf("jishu: %d ",j);

return 0;

}

篇二:C語言_上機實驗報告樣例

實 驗 報 告

課程名稱 程式設計語言C 實驗名稱 控制結構程式設計

姓 名

學 號

專業班級 材料1006

實驗日期

成 績

指導教師

一、 實驗目的

1. 學會正確使用關係運算符和關係表示式、邏輯運算子和邏輯表示式。

2. 掌握if語句和switch語句的結構和使用。

3. 掌握用while語句,do-while語句和for語句實現迴圈的方法。

4. 編寫含有選擇結構的程式

5. 練習迴圈程式的設計和除錯一、實驗目

P二,實驗內容。

1分段函式求最大值,

2. 儲存源程式,檔名為xt7-4.c

3. 執行程式,輸入5

程式輸出如下:

array a:

1 4 6 9 13 16 19 28 40 100

data:5

Now,array a:

1 4 5 6 9 13 16 19 28 40 100

習題7.6

1.開啟TC++3。1整合開發環境,編寫程式程式碼如下:

#include

#define N 11

void main()

{

int i,j,a[N][N];

for(i=1;i<N;i++)

{

a[i][i]=1;

a[i][1]=1;

}

for(i=3;i<N;i++)

for(j=2;j<=i-1;j++)

a[i][j]-a[i-1][j-1]+a[i-1][j];

for(i=1;i<N;i++)

{

for(j=1;j<=i;j++)printf("%6d",a[i][j]);

printf(" ");

}

printf(" ");

}

2.儲存源程式,檔名為xt7-6.c

3.輸出結果:

1

1

1

1

1

1

1

1

1

1 1 2 1 3 3 1 4 6 4 1 5 10 10 5 1 6 15 20 15 6 1 7 21 35 35 21 7 1 8 28 56 70 56 28 8 1 9 36 84 126 126 84 36 9 1

習題7.8

1.開啟TC++3。1整合開發環境,編寫程式程式碼如下:

#include

#define N 4

#define M 5

void main()

{

int i,j,k,a[N][M],max,maxj,flag;

printf("please input matrix: ");

for(i=0;i<N;i++)

for(j=0;j<M;j++)

scanf("%d",&a[i][j]);

for(i=0;i<N;i++)

{

max=a[i][0];

maxj=0;

for(j=0;j<M;j++)

if(a[i][j]>max)

{

max=a[i][j];

maxj=j;

}

flag=1;

for(k=0;k<N;k++)

if(max>a[k][maxj])

{

flag=0;

continue;}

if(flag)

{

printf("a[%d][%d]=%d ",i,maxj,max);

break;

}

}

if(! flag)

printf("It is not exist! ");

}

2.儲存源程式,檔名為:xt7-8.c

3.輸入please input matrix:

1

2

3

4 2 3 4 5 4 6 8 10 6 9 12 15 8 12 16 20

輸出結果:a[0][4]=5

五、實驗分析和總結

1. 本程式的'功能是將數以陣列輸入,結合迴圈進行排序,運算等, 演算法的基本思想是進

行陣列引用。

2. 程式編譯和執行時出現瞭如下錯誤:

陣列中分號亂用

出錯的原因和除錯(糾錯)步驟如下:

對陣列引用不夠熟練,理解不夠透徹。

3. 通過編寫本程式,有如下,體會:陣列引用很方便,能使大量運算簡化。

篇三:C語言實驗報告

C語言程式設計實驗報告

1 實驗目的

第一個實驗:

1熟練掌握順序結構程式設計; ○

○2學會正確使用邏輯運算子及邏輯表示式;

○3熟練掌握if、ifelse、ifelse if語句,掌握if語句中的巢狀關係和匹配原則,利用if語句實現分支選擇結構;

○4熟練掌握switch語句格式及使用方法,利用switch語句實現分支選擇結構 ○5掌握簡單、常用的演算法,並在程式設計過程中體驗各種演算法的程式設計技巧,進一步學習除錯程式,掌握檢查語法錯誤和邏輯錯誤的的方法。

第二個實驗:

○1熟練掌握while語句、do-while語句和for語句格式及使用方法,掌握三種迴圈控制語句的迴圈過程以及迴圈結構的巢狀,利用三種迴圈語句實現迴圈結構; ○2掌握簡單、常用的演算法,並在程式設計過程中體驗各種演算法的程式設計技巧; ○3進一步學習除錯程式,掌握語法錯誤和邏輯錯誤的檢查方法。

2 實驗內容

第一個實驗:

輸入一個整數m,將其數值按照大於0,小於等於0兩個類別分類顯示。 要求:

1該程式利用if-else語句實現; ○

2將變數m定義為整型; ○

3通過scanf函式輸入變數m的值; ○

4輸入整數m前,利用puts()或printf()給出提示資訊; ○

5輸出結果時有必要的說明,例如:輸入358時,顯示 358 ○is greater than 0,輸入-23時,顯示 -23 is less than or equal to 0;

6執行程式,分別輸入123,0,-22,並檢查輸出資訊的的正確性。 ○

第二個實驗:

輸入一串字元(以回車鍵結束),統計其中數字、大寫字母、小寫字母、以及其他字元的個數。

要求:

1通過鍵盤輸入字串;○

2在輸入字串之前給出相應提示;○

3按照數字、大寫字母、小寫字母和其他字元數的順序輸出結果。○

3 演算法描述流程圖

4 源程式

第一個實驗:

#include

main()

{

int m;

scanf("%d",m);

printf("enter a character:");

{

if(m>0)

printf("%d is greater than 0",m);

else

printf("%d is less than or equal to 0",m);

}

}

第二個實驗:

#include

#include

main()

{

char c;

int w=0,x=0,y=0,z=0;

printf("enter characters:");

while((c=get))!=' ')

{

if((c>='0'&&c<='9'))

w++;

else if(c>='A'&&c<='Z')

x++;

else if(c>='a'&&c<='z')

y++;

else

z++;

}

printf("w=%d,x=%d,y=%d,z=%d",w,x,y,z); }

5 測試資料

第一個實驗:

測試資料為:123,0,-22

第二個實驗:

所輸入的字串為:

6 執行結果

7 出現問題及解決方法

1第一個實驗中,○對於“printf("%d is greater than 0",m);”的輸入存在一些問題;通過查課本,找到類似輸出形式的寫法;

2第二個實驗中需要用到函式string,通過百度查閱弄懂這個函式的使用方法,○

還是對這個用法不太瞭解。

8 實驗心得

1對if,if-else,if-else if語句的使用方法及具體含義有了更深次的瞭解,○

對編寫條件控制結構的程式有了一定的認識和思路;

2對於do-whil

e,while瞭解不太深刻,○需要進一步學習和上機實驗的練習進行鞏固和熟練;

3對於除錯程式中出現的error和warning的解決方法有了更深的認識。 ○