c语言实验八 二维数组,☆C语言实验六(二维数组、字符串数组).doc
☆C語言實驗六(二維數組、字符串數組)
第七章二維數組、字符串數組題
[書面作業]以書面作業形式上交,2010年11月1日課堂交三道題的源程序
編寫一個主函數:用二維數組存放六行的“楊輝三角形”。
編寫一個主函數:輸入五個國家的名稱存放在字符串數組,然后按字母順序排列輸出。
編寫一個主函數:實現兩串字符串的合并
上課演示名單及提問名單選定:1、0821張成龍;周俊杰
2、0823陳智勇、戴佳
3、周徐明、顧文斌
單選、填空題:0822(重點關注楊輝三角形、Fibonnacii數列形成)
【第一題具體要求】參考下列三個資料后,
教科書P153習題7.6 (實驗指導書P55);
軟件中“第七章填空第21題(或2010春閱讀程序第11題)”;或后面附錄
軟件中“第六章填空第3題(或2006秋閱讀程序第11題)”
編一主函數,用二維數組存放六行的“楊輝三角形”,并要求按六行輸出該三角形數據的參考源程序。
【第二題具體要求】輸入五個國家的名稱按字母順序排列輸出。
編程思路如下:五個國家名應由一個二維字符數組來處理。然而C語言規定可以把一個二維數組當成多個一維數組處理。 因此本題又可以按五個一維數組處理, 而每一個一維數組就是一個國家名字符串。用字符串比較函數比較各一維數組的大小,并排序, 輸出結果即可。
input country's name:
China
India
USA
BK
Korea
輸出:
BK
China
India
Korea
USA
[參考程序]
【第三題具體要求】
閱讀并理解題目要求后,用一個主函數編寫程序,實現字符串的合并。
【2009春上機編程題_C06;2010年秋上機題C02改錯題中有相同內容】
【編程要求】
編寫函數void fun( char *a, char *b, char *c),其功能是先將b指向的字符串逆序存放。然后按a[0]、b[0]、a[1]、b[1]……的順序合并a字符串和b字符串到c指向的數組中,將a或b中剩余字符拼接在c數組的尾部。
編寫main函數,聲明三個一維數組s1、s2和s,接收鍵盤輸入的兩個字符串并保存到數組s1和s2中,調用fun函數對s2字符串做逆序變換,再合并s1字符串和s2字符串到s數組中。將合并后產生的數組s中的字符串輸出到屏幕并保存到文件myf2.out中。最后將考生本人的準考證號字符串也保存到結果文件myf2.out中。
【測試數據與運行結果】
測試數據:s1字符串為"abcdefg",s2字符串為"ABCD"
運行結果:aDbCcBdAefg
【參考程序】:涉及到書P374:strlen()函數。
課堂練習空余時間或課后業余時間練習知識題
【軟件第七章】選擇題:
3、若有數組A和B的聲明"static char A[]="ABCDEF",B[]={'A', 'B', 'C', 'D', 'E', 'F'};",則數組A和數組B的的長度分別是_____(25)___。
A.7,6 B.6,7 C.6,6 D.7,7
9、若有聲明"char ss[8]= "Red";",則sizeof(ss)的值是___(30)____。
A. 8 B. 4 C. 3 I D. 1
12、已知有聲明"char s[80];",若需要將鍵盤輸入的一個不含空格的字符串保存到s數組中,則下列語句中正確的是_____________(28)________。
A. scanf("%s",s); B. scanf("%s",s[0]); C. gets(); D. s=getchar();
13、已知有聲明"char s[26]= "Hello";",在程序運行過程中,若要想使數組s中的內容修改為"Good",則以下語句中能實現此功能的是_______(26)_____。
A. s="Good"; B. s[20]= "Good"; C. strcat(s, "Good"); D. strcpy(s, "Good");
填空:
填空12、以下程序運行時,輸出結果第一行為____(13)_____,第二行為_____(14)____,第三行為_____(15)____。
#include
#define N 3
main()
{ int a[N][N],b[N*N]={1,1},i,j;
for(i=2;i
for(i=0;i
for(j=0;j
總結
以上是生活随笔為你收集整理的c语言实验八 二维数组,☆C语言实验六(二维数组、字符串数组).doc的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Java创建GIF图,带透明背景
- 下一篇: 51单片机实现独立按键控制LED灯