c語言實驗報告

2022-08-15 11:33:08 字數 1727 閱讀 7581

一.實驗題目,設計思路,實現方法

1.實驗題目

11-6 方陣迴圈右移

本題要求編寫程式,將給定n

×n方陣中的每個元素迴圈向右移m

個位置,即將第0、1、⋯、n

−1列變換為第n

−m、n

−m+1、⋯、n

−1、0、1、⋯、n

−m−1列。

12-7 輸出大寫英文本母

本題要求編寫程式,順序輸出給定字串中所出現過的大寫英文本母,每個字母只輸出一遍;若無大寫英文本母則輸出「not found」。

13-4 使用函式的選擇法排序

本題要求實現乙個用選擇法對整數陣列進行簡單排序的函式。

14-2 刪除字元

本題要求實現乙個刪除字串中的指定字元的簡單函式。

15-6 按等級統計學生成績

本題要求實現乙個根據學生成績設定其等級,並統計不及格人數的簡單函式。

2.設計思路

11-6 方陣迴圈右移

定義兩個二維陣列a b,a存放輸入的陣列,將右移後陣列的值賦值到b的相應下標。這裡的重點是新列下標的計算。

12-7 輸出大寫英文本母

此題主要難點在於大寫字母的不重複輸出。通過定義第二個字元陣列存放。加乙個迴圈判斷重複的不在放入。

13-4 使用函式的選擇法排序

與陣列選擇法排序相同,通過迴圈比較大小在交換字串陣列元素的值。

14-2 刪除字元

錄入要刪除的指定字元,通過指標的移動*取元素值,遇到需要刪除的元素跳過賦值,達到刪除效果。

15-6 按等級統計學生成績

按照題目設定標準將成績轉換成等級儲存到結構體的grade中。

3.實現方法

11-6 方陣迴圈右移

我採用求餘的辦法,原本的列下標加上位移數求餘列數得到新的下標然後儲存到新的陣列中。

12-7 輸出大寫英文本母

用乙個flag變數來標記,j計數並用j迴圈查詢是否有相同的大寫字母,不同寫入新字串陣列,有相同則flag為1跳過下乙個語句。末尾flag歸0.最後列印新陣列。

13-4 使用函式的選擇法排序

乙個外迴圈進行字串陣列的單個元素讀取,index標記外迴圈下標。內迴圈從index開始並找出後續最大或者最小的值並賦給index下標。交換index下標與i下標元素的值。

14-2 刪除字元

新定義乙個與傳遞過來指標位址相同的指標,判斷指標如果不為空則在定義乙個新的指標。第乙個用來記錄字串首位址,第二個與傳遞的指標移動賦值,遇到制定字母跳過,最後返回第乙個指標。

15-6 按等級統計學生成績

乙個變數計數計不及格的人數,還是通過指標的變化來對分數判斷並賦值給grade.

二.源程式(可只擷取最關鍵的部分)

11-6 方陣迴圈右移

for(i=0;i

12-7 輸出大寫英文本母

for(i=0;s[i]!='\0';i++)

str++; 

}  *p = *str; 

}  return ret; 

} 15-6 按等級統計學生成績

int set_grade( struct student *p, int n )

p++;

}return cnt;

}

c語言實驗報告

1 字元與ascii碼 2 運算子與表示式的應用 3 順序結構應用程式 4 數學函式的演算法描述 5 雞兔同籠的演算法描述 6 確定座標的演算法描述 實驗目的 要求 1 從鍵盤輸入任意字元,且在輸入前要求有提示資訊 2 輸出兩行 第1行是字元形式輸出3個字元,3個字元以逗號隔開,第2行是輸出字元對應...

c語言實驗報告

一 實驗題目,設計思路,實現方法 1 實驗題目 7 7 計算火車執行時間 本題要求根據火車的出發時間和達到時間,編寫程式計算整個旅途所用的時間。4 7 求平方與倒數序列的部分和 本題要求對兩個正整數m和n m n 編寫程式,計算序列和m 2 1 m m 1 2 1 m 1 n 2 1 n 4 2 6...

C語言實驗報告

4 6 輸出華氏 攝氏轉換表 4 7 求平方與倒數序列的部分和 4 2 8 判斷天數 4 6 輸出華氏 攝氏轉換表 先判斷輸入資料是否合法,若不合法則直接輸出。合法則迴圈輸出相應的華氏攝氏溫度表。4 7 求平方與倒數序列的部分和 先明確題目中的函式如何用c語言表達,再構建出相應的迴圈語句求解即可。4...