【必備】歷年全國計算機等級考試二級C語言上機考試題庫及答案【值得一看】

上傳人:仙*** 文檔編號:28253869 上傳時間:2021-08-24 格式:DOC 頁數:72 大?。?66KB
收藏 版權申訴 舉報 下載
【必備】歷年全國計算機等級考試二級C語言上機考試題庫及答案【值得一看】_第1頁
第1頁 / 共72頁
【必備】歷年全國計算機等級考試二級C語言上機考試題庫及答案【值得一看】_第2頁
第2頁 / 共72頁
【必備】歷年全國計算機等級考試二級C語言上機考試題庫及答案【值得一看】_第3頁
第3頁 / 共72頁

下載文檔到電腦,查找使用更方便

15 積分

下載資源

還剩頁未讀,繼續(xù)閱讀

資源描述:

《【必備】歷年全國計算機等級考試二級C語言上機考試題庫及答案【值得一看】》由會員分享,可在線閱讀,更多相關《【必備】歷年全國計算機等級考試二級C語言上機考試題庫及答案【值得一看】(72頁珍藏版)》請在裝配圖網上搜索。

1、 1. 填空 給定程序的功能是調用fun函數建立班級通訊錄。通訊錄中記錄每位學生的編號,姓名和電話號碼。班級的人數和學生的信息從鍵盤讀入,每個人的信息作為一個數據塊寫到名為myfile5.dat的二進制文件中。 請在程序的下劃線處填入正確的內容并把下劃線刪除,是程序得出正確的結果。 注意:源程序存放在考生文件夾下的BLANK1.c中 不得增行或刪行,也不得更改程序的結構! void check(); /**********found**********/ int fun(___1___ *std) { /**********found********

2、**/ ___2___ *fp; int i; if((fp=fopen("myfile5.dat","wb"))==NULL) return(0); printf("\nOutput data to file !\n"); for(i=0; i

3、的功能是:先將在字符串s中的字符按正序存放到t串中,然后把s中的字符按逆序連接到t串后面。 例如:當s中的字符串為:“ABCDE”時, 則他中的字符串應為:“ABCDEEDCBA”。 請改正程序中的錯誤,使他能得出正確的結果。 注意:不要改動main函數,不能增行或刪行,也不得更改程序的結構! void fun (char *s, char *t) { int i, sl; sl = strlen(s); /************found************/ for( i=0; i<=s1; i ++) t[i

4、] = s[i]; for (i=0; i

5、中的任何內容,僅在函數fun的花括號中填入你編寫的若干語句。 答案: B: STYPE FILE fp M: for(i = 0 ; i < sl ; i++) t[2*sl] = 0; P: *c=(a/10)*1000+(b/10)*100+(a%10)*10+(b%10); 2. 填空 給定程序的功能是:從鍵盤輸入若干行文本(每行不超過80個字符),寫到文件myfile4.txt中,用-1作為字符串輸入結束的標記。然后將文件的內容讀出顯示在屏幕上。文件的讀寫分別有自定義函數ReadText和WriteText實現。 請在程序的下劃線處填入正確的

6、內容并把下劃線刪除,是程序得出正確的結果。 注意:源程序存放在考生文件夾下的BLANK1.c中 不得增行或刪行,也不得更改程序的結構! main() { FILE *fp; if((fp=fopen("myfile4.txt","w"))==NULL) { printf(" open fail!!\n"); exit(0); } WriteText(fp); fclose(fp); if((fp=fopen("myfile4.txt","r"))==NULL) { printf(" open fail!!

7、\n"); exit(0); } ReadText(fp); fclose(fp); } /**********found**********/ void WriteText(FILE ___1___) { char str[81]; printf("\nEnter string with -1 to end :\n"); gets(str); while(strcmp(str,"-1")!=0) { /**********found**********/ fputs(___2___,fw); fputs("\n",fw

8、); gets(str); } } void ReadText(FILE *fr) { char str[81]; printf("\nRead file and output to screen :\n"); fgets(str,81,fr); while( !feof(fr) ) { /**********found**********/ printf("%s",___3___); fgets(str,81,fr); } } 修改 給定程序MODI1.c中函數fun的功能是:從低位開始取出長整

9、形變量s中的奇數位上的數,依次構成一個新數放在t中,高位仍放在高位,低位仍放在低位。 例如:當s中的數為:7654321時,t中的數為:7531 請改正程序中的錯誤,使他能得出正確的結果。 注意:不要改動main函數,不能增行或刪行,也不得更改程序的結構! #include /************found************/ void fun (long s, long t) { long sl=10; *t = s % 10; while ( s > 0) { s = s/100;

10、 *t = s%10 * sl + *t; /************found************/ sl = sl*100; } } 程序 函數fun的功能是:將兩個兩位數的正整數a,b合并成一個整數放在c中。合并的方式是:將a數的十位和個位數依次放在c數的千位和十位上,b數的十位和個位數依次放在c數的百位和個位上。 例如:a=45,b=12時,調用該函數后,c=1524. 注意:部分源程序存在文件PROG1.C中。數據文件IN.DAT中的數據不得修改。 請勿改動主函數main和其他函數中的任何內容,僅在函數fun的花括號中填入你編寫的若干語

11、句。 2、B: *fw str str M: long *t sl = sl*10; P: *c=(b/10)*1000+(a%10)*100+(b%10)*10+(a/10); 3. 填空 給定程序中,函數fun的功能是:將自然數1~10以及它們的平方根寫到名為myfile3txt的文本文檔中,然后再順序讀出顯示在屏幕上。 請在程序的下劃線處填入正確的內容并把下劃線刪除,是程序得出正確的結果。 注意:源程序存放在考生文件夾下的BLANK1.c中 不得增行或刪行,也不得更改程序的結構! int fun(char *fna

12、me ) { FILE *fp; int i,n; float x; if((fp=fopen(fname, "w"))==NULL) return 0; for(i=1;i<=10;i++) /**********found**********/ fprintf(___1___,"%d %f\n",i,sqrt((double)i)); printf("\nSucceed!!\n"); /**********found**********/ ___2___; printf("\nThe data in

13、file :\n"); /**********found**********/ if((fp=fopen(___3___,"r"))==NULL) return 0; fscanf(fp,"%d%f",&n,&x); while(!feof(fp)) { printf("%d %f\n",n,x); fscanf(fp,"%d%f",&n,&x); } fclose(fp); return 1; } 修改 給定程序MODI1.c中fun函數的功能是:將n個無序整數從小到大排序。 fun ( int n, i

14、nt *a ) { int i, j, p, t; for ( j = 0; ja[i] ) /************found************/ t=i; if ( p!=j ) { t = a[j]; a[j] = a[p]; a[p] = t; } } } 程序 函數fun的功能是:將兩個兩位數

15、的正整數a,b合并成一個整數放在c中。合并的方式是:將a數的十位和個位數依次放在c數的千位和十位上,b數的十位和個位數依次放在c數的百位和個位上。 例如:a=45,b=12時,調用該函數后,c=2514 注意:部分源程序存在文件PROG1.C中。數據文件IN.DAT中的數據不得修改。 請勿改動主函數main和其他函數中的任何內容,僅在函數fun的花括號中填入你編寫的若干語句。 3、B: fp fclose(fp) fname M: i

16、序的功能是:調用函數fun將指定源文件中的內容復制到指定的目標文件中,復制成功時函數返回值為1,失敗時返回值為0,在復制的過程中,把復制的內容輸出到終端屏幕。主函數中源文件名放在變量sfname中,目標文件名放在變量tfname中 int fun(char *source, char *target) { FILE *fs,*ft; char ch; /**********found**********/ if((fs=fopen(source, ___1___))==NULL) return 0; if((ft=fopen(target

17、, "w"))==NULL) return 0; printf("\nThe data in file :\n"); ch=fgetc(fs); /**********found**********/ while(!feof(___2___)) { putchar( ch ); /**********found**********/ fputc(ch,___3___); ch=fgetc(fs); } fclose(fs); fclose(ft); printf("\n\n");

18、return 1; } 修改 給定程序MODI1.C中函數fun的功能是:將長整形數中每一位上為偶數的數依次取出,構成一個新數放在t中。高位仍在高位,低位仍在低位。 例如:當s中的數為:87653142時,t中的數為:8642 void fun (long s, long *t) { int d; long sl=1; *t = 0; while ( s > 0) { d = s%10; /************found************/ if (d%2=0) { *t=d* s

19、l+ *t; sl *= 10; } /************found************/ s \= 10; } } 程序 函數fun的功能是:將兩個兩位數的正整數a,b合并成一個整數放在c中。合并的方式是:將a數的十位和個位數依次放在c數的千位和十位上,b數的十位和個位數依次放在c數的百位和個位上。 例如:a=45,b=12時,調用該函數后,c=5142 注意:部分源程序存在文件PROG1.C中。數據文件IN.DAT中的數據不得修改。 請勿改動主函數main和其他函數中的任何內容,僅在函數fun的花括號中

20、填入你編寫的若干語句。 4、B: “r” fs ft M: (d%2==0) s /= 10; P: *c=(a%10)*1000+(b/10)*100+(a/10)*10+(b%10); 5. 填空 給定程序中已建立一個帶有頭結點的單向鏈表,鏈表中的各節(jié)點按結點數據域中的數據遞增有序鏈表。函數fun的功能是:把形參x的值放入一個新結點并插入到鏈表中,插入后結點數據域的值仍保持遞增有序。 typedef struct list { int data; struct list *next; } SLIST; void fun( SL

21、IST *h, int x) { SLIST *p, *q, *s; s=(SLIST *)malloc(sizeof(SLIST)); /**********found**********/ s->data=___1___; q=h; p=h->next; while(p!=NULL && x>p->data) { /**********found**********/ q=___2___; p=p->next; } s->next=p; /**********found**********/

22、 q->next=___3___; } 修改 給定程序MODI1.C中函數fun的功能是:計算正整數num的各位上的數字之積。例如,若輸入:252,則輸入應該是:20.若輸入:202,則輸出應該是:0. long fun (long num) { /************found************/ long k; do { k*=num%10 ; /************found************/ num\=10 ; } while(num) ; return (k) ; } 請編寫一個函數f

23、un,它的功能是:它的功能是:計算n門課程的平均分,計算結果作為函數值返回。 例如:若有5門課程的成績是:90.5,72,80,61.5,55 則函數的值為:71.80 5、B: x p s M: long k=1; num/=10 ; P: int i; float ave=0.0; for(i=0; i

24、釋放該節(jié)點,是鏈表縮短。 void fun( SLIST *p) { SLIST *t, *s; t=p->next; s=p; while(t->next != NULL) { s=t; /**********found**********/ t=t->___1___; } /**********found**********/ printf(" %d ",___2___); s->next=NULL; /**********found**********/ free(___3___); }

25、 修改 給定程序MODI1.C中函數fun的功能是:將字符串中的字符按逆序輸出,單補改變字符串中的內容。 例如,若字符串味abcd,則應輸出:dcba /************found************/ fun (char a) { if ( *a ) { fun(a+1) ; /************found************/ printf("%c" *a) ; } } 程序 請編寫一個函數fun,他的功能是:比較兩個字符串的長度(不得調用c語言提供的求字符串長度的函數),函數返回較長的字符串。若兩個字符串長度相

26、同,則返回第一個字符串。 例如,輸入beijingshanghai(為回車鍵),函數將返回shanghai 6、B: next t->data t M: fun (char *a) printf("%c", *a) ; P: int i; char *p=s, *q=t; for(i=0;*p && *q; i++) { p++; q++; } if(*p == 0 && *q == 0) return s ; if(*p) return s ; else return t ; 7. 填空

27、給定程序中建立一個帶有頭結點的單向鏈表,鏈表中的各節(jié)點按數據域遞增有序連接。函數fun的功能是:刪除鏈表中數據域值相同的結點,使之只保留一個 typedef struct list { int data; struct list *next; } SLIST; void fun( SLIST *h) { SLIST *p, *q; p=h->next; if (p!=NULL) { q=p->next; while(q!=NULL) { if (p->data==q->data) {

28、p->next=q->next; /**********found**********/ free(___1___); /**********found**********/ q=p->___2___; } else { p=q; /**********found**********/ q=q->___3___; } } } } 修改 給定程序MODI1.C中函數fun的功能是:用選擇法對數組中的n個元素按

29、從小到大的順序進行排序。 void fun(int a[], int n) { int i, j, t, p; for (j = 0 ;j < n-1 ;j++) { /************found************/ p = j for (i = j;i < n; i++) if(a[i] < a[p]) /************found************/ p = j; t = a[p] ; a[p] = a[j] ; a[j] = t; } } 請編寫一個函數fun,它的功能是:

30、求出1到m之間(含m)能被7或11整除的所有整數放在數組a中,通過n返回這些數的個數。例如,若傳3送給m的之位50,則程序輸出:7 11 14 21 22 18 33 35 42 44 49 答案: 7、B: q next next M: p = j; p=i; P: int i ; *n=0 ; for(i=7 ; i<=m; i++) if((i % 7 == 0) || (i % 11 == 0)) a[(*n)++]=i ; 8. 填空 給定程序中,函數fun的gongn是:在帶有頭結點的單向鏈表中,查找數據域中值為ch的結點。找到后

31、通過函數值返回改結點在鏈表中所處的順序號;若不存在值為ch的結點,函數返回0值 typedef struct list { int data; struct list *next; } SLIST; SLIST *creatlist(char *); void outlist(SLIST *); int fun( SLIST *h, char ch) { SLIST *p; int n=0; p=h->next; /**********found**********/ while(p!=___1___) {

32、 n++; /**********found**********/ if (p->data==ch) return ___2___; else p=p->next; } return 0; } 修改 給定程序MODI1.C中函數fun的功能是:刪除p所指字符串中的所有空白字符(包括制表符,回車符及換行符) 輸入字符串是用“#”結束輸入。 fun ( char *p) { int i,t; char c[80]; /************found************/ For (i = 0,t = 0;

33、p[i] ; i++) if(!isspace(*(p+i))) c[t++]=p[i]; /************found************/ c[t]="\0"; strcpy(p,c); } 程序 請編寫一個函數fun,它的功能是:將ss所指字符串中所有下標為奇數位置上的字母轉換成大寫(若該位置上不是字母,則不轉換) 例如:若輸入“abc4EFg”,則應輸出“aBc4Efg”。 答案: 8、B: NULL n head,ch M: for c[t]=\0; P: int i ; for(i = 1 ; i < st

34、rlen(*ss) ; i+=2) { if(ss[i] >= a && ss[i] <= z) ss[i] -= 32 ; 9. 填空 給定程序中,函數fun的功能是:統(tǒng)計出帶有頭結點的單向鏈表中的個數,存放在形參n所指的存儲單元中。 void fun( SLIST *h, int *n) { SLIST *p; /**********found**********/ ___1___=0; p=h->next; while(p) { (*n)++; /**********found**********/ p=p->___

35、2___; } } main() { SLIST *head; int a[N]={12,87,45,32,91,16,20,48}, num; head=creatlist(a); outlist(head); /**********found**********/ fun(___3___, &num); printf("\nnumber=%d\n",num); } 修改 給定程序MODI1.C中函數fun的功能是:求出s所指字符串中最后一次出現的t所指子字符串的地址,通過函數返回值返回,在主函數中輸出從此地址開始的字符串;若

36、未找到,則函數值為NULL 例如:當字符串中的內容為“abcdefabcdx”t中的內容為“ab”時,輸出的結果應是:abcdx 當字符串中的內容為“abcdefabcdx”t中的內容為“abd”時,則程序輸出未找到信息 not be found char * fun (char *s, char *t ) { char *p , *r, *a; /************found************/ a = Null; while ( *s ) { p = s; r = t; while ( *r ) /*******

37、*****found************/ if ( r == p ) { r++; p++; } else break; if ( *r == \0 ) a = s; s++; } return a ; } 程序 函數fun的功能是:將s所指字符串中除了下標問為偶數,同時ASCII值也為偶數的字符外,其余的全部刪除:串中剩余字符所形成的一個新串放在t所指的數組中 例如,若s所指的字符串中的內容為“ABCDEFG123456”,其中字符A的ASCII碼味奇數,因此應當刪除,其中字符b

38、的ASCII碼值為偶數,但是在數組中的下標為基數,因此也當刪除; 答案 9、B: *n next head M: a = NULL; *r == *p P: int i, j = 0 ; for(i = 0 ; i < strlen(s) ; i += 2) if(s[i] % 2 == 0) t[j++] = s[i] ; t[j] = 0 ; 10. 填空 給定程序中,函數fun的功能是:計算出帶有頭結點的單向鏈表中各結點數據域中值之和作為函數的返回值。 int fun( SLIST *h) { SLIST *p; int

39、s=0; p=h->next; while(p) { /**********found**********/ s+= p->___1___; /**********found**********/ p=p->___2___; } return s; } 修改 給定程序MODI1.C中函數fun的功能是:將s所指字符串中出現的與t1所指字符串相同的字串全部替換成t2所指字符串,所形成的新串放在w所指的數組中,在此處,要求t1和t2所指字符串的長度相同。 int fun (char *s, char *t1, ch

40、ar *t2 , char *w) { int i; char *p , *r, *a; strcpy( w, s ); while ( *w ) { p = w; r = t1; /************found************/ while ( r ) if ( *r == *p ) { r++; p++; } else break; if ( *r == \0 ) { a = w; r = t2; while ( *r ){ /*****

41、*******found************/ *a = *r; a++; r++ } w += strlen(t2) ; } else w++; } } 程序 函數fun的功能是;將s所指字符串下標為偶數的字符刪除,串中剩余字符形成的新串放在t所指的數組中 例如:當s所指字符串中的內容為:“ABCDEFGHIJK” 在t所指數組中的內容應是“BDFHJ” 10、B: data next head M: *r r++; P: int i, j = 0 ; for(i

42、 = 1 ; i < strlen(s); i+=2) t[j++] = s[i] ; t[j] = 0 ; 11. 填空 人員記錄有編號和出生年月日組成,N名人員的數據已在主函數中存入結構體數組std中,且編號唯一。函數fun的功能是:找出數據中的編號為空串。 /**********found**********/ ___1___ fun(STU *std, char *num) { int i; STU a={"",9999,99,99}; for (i=0; i

43、 if( strcmp(___2___,num)==0 ) /**********found**********/ return (___3___); return a; } 修改 給定程序MODI1.C中函數fun的功能是:從s所指字符串中,找出與t所指字符串相同的字串的個數作為函數返回值 例如,當s所指字符串中的內容為:“abcdabfab”,t所指字符串的內容為:“ab”則函數返回整數3 int fun (char *s, char *t) { int n; char *p , *r; n = 0;

44、 while ( *s ) { p = s; r = t; while ( *r ) if ( *r == *p ) { /************found************/ r++; p++ } else break; /************found************/ if ( r == \0 ) n++; s++; } return n; } 函數fun的功能是:將s所指字符串中ASCI

45、I值為偶數的字符刪除,串中剩余字符形成一個新串放在t所指的數組中 例如,若s所指字符串中的內容為“ABCDEFG12345”,其中字符B的ASCII碼值為偶數….. 答案: 11、B: STU std[i].num std[i] M: p++; *r==’\0’ ; P: int i, j = 0 ; for(i = 0 ; i < strlen(s); i++) if(s[i] % 2) t[j++] = s[i] ; t[j] = 0 ; 12.填空 人員的記錄由編號和出生年月日組成N名成員的數據已在主函數中存入結構體數組std中,函數fun的功能是:找出指定出生年份

46、的人員,將其數據放在形參k所指的數組中,由主函數輸出,同事有函數值返回滿足指定條件的人數 int fun(STU *std, STU *k, int year) { int i,n=0; for (i=0; i

47、程序MODI12。C的功能是:讀入一個整數k(2《k《1000),打印她的所有因子 例如2310,則應輸出2,3,5,7,11 /************found************/ IsPrime ( int n ); { int i, m; m = 1; for ( i = 2; i < n; i++ ) /************found************/ if !( n%i ) { m = 0; break ; } return ( m ); } 設計 已知學

48、生的記錄有學號成績構成,N名學生的數據已經存入結構體數組a中。編寫函數fun,函數功能是:找出成績最高的學生記錄,通過形參指針傳回主函數(規(guī)定只有一個最高分)。已給出函數的首部,請完成該函數 12、B: std[i].year std[i] n M: 分號去掉 if (!( n%i )) P: int i, max = a[0].s, j = 0; for(i = 1 ; i < N ; i++) if(max < a[i].s) { j = i ; max = a[i].s ; } *s = a[j] ; 13.填空 給定程序通過定義并賦初值的方式,利用結構體

49、變量存儲了一名學生的學號,姓名和3們課程的成績,函數fun的功能是將該學生的各科成績都乘以一個系數a void show(STU tt) { int i; printf("%d %s : ",tt.num,tt.name); for(i=0; i<3; i++) printf("%5.1f",tt.score[i]); printf("\n"); } /**********found**********/ void modify(___1___ *ss,float a) { int i; for(i=0; i<3; i+

50、+) /**********found**********/ ss->___2___ *=a; } main( ) { STU std={ 1,"Zhanghua",76.5,78.0,82.0 }; float a; printf("\nThe original number and name and scores :\n"); show(std); printf("\nInput a number : "); scanf("%f",&a); /**********found**********/ modify(_

51、__3___,a); printf("\nA result of modifying :\n"); show(std); } 修改 給定程序MODI。C中函數fun的功能是:求k!(k<13),所求階乘的值作為函數值返回,例如若(k=10,則應輸出:3628800 long fun ( int k) { /************found************/ if k > 0 return (k*fun(k-1)); /************found************/ else if ( k=0 )

52、 return 1L; } 設計 程序定義了N*N的二維數組。并在主函數中自動賦值,請編寫函數fun,函數的功能是:使數組左下三角元素的值乘以n 例如:若n的值為3,a數組的值為 13、B: STU score[i] &std M: ( ) k= =0 P: int i, j; for(i = 0 ; i < N ; i++) for(j = 0 ; j <= i; j++) a[i][j] *= n ; 14.填空 給定程序中,函數fun的功能是:將形參所指結構體數組中的三個元素按num成員進行升序排列 /**********found**********/

53、 void fun(PERSON ___1___) { /**********found**********/ ___2___ temp; if(std[0].num>std[1].num) { temp=std[0]; std[0]=std[1]; std[1]=temp; } if(std[0].num>std[2].num) { temp=std[0]; std[0]=std[2]; std[2]=temp; } if(std[1].num>std[2].num) { temp=std[1]; std[1]=s

54、td[2]; std[2]=temp; } } main() { PERSON std[ ]={ 5,"Zhanghu",2,"WangLi",6,"LinMin" }; int i; /**********found**********/ fun(___3___); printf("\nThe result is :\n"); for(i=0; i<3; i++) printf("%d,%s\n",std[i].num,std[i].name); } 修改 給定程序MODI1.c中函數fun的功能是:將m個字符串連接起來組

55、成一個新串,放入pt所指存儲區(qū)中 int fun ( char str[][10], int m, char *pt ) { /************found************/ Int k, q, i ; for ( k = 0; k < m; k++ ) { q = strlen ( str [k] ); for (i=0; i

56、 pt[0] = 0 ; } } 設計 程序定義了N*N的二維數組, 并在主函數中自動賦值,請編寫函數fun,函數的功能是:使數組左下三角元素中的值全部值0 14、B: *std PERSON std M: int str[k][i] P: int i, j; for(i = 0 ; i < N ; i++) for(j = 0 ; j <= i; j++) a[i][j] =0; 15.填空 給定程序中,函數fun的功能是:將形參std所指結構體數組中年齡最大者的數據作為函數值返回,并在主函數中輸出 STD fun(STD std

57、[], int n) { STD max; int i; /**********found**********/ max= ___1___; for(i=1; i

58、td,5); printf("\nThe result: \n"); /**********found**********/ printf("\nName : %s, Age : %d\n", ___3___,max.age); } 修改 給定程序MODI1.c中函數fun的功能是:實現兩個整數的交換 例如給a和b分別輸入60和65,輸出為:a=65 b=60 /**********found**********/ void fun ( int a, b ) { int t; /**********found**********/ t =

59、b; b = a ; a = t; } 設計 請編制一個函數fun,tt指向一個M行N列的二維數組,求二維數組每列中最小元素,并以此放入pp所指一維數組中。二維數組中的數已在主函數中賦予 15、B: *std std[i].age max.name M: int *b t = *b; *b = *a ; *a = t; P: int i,j, min, k ; for(i = 0 ; i < N ; i++) { min = tt[0][i] ; k = 0 ; for(j = 1 ; j < M ; j++) if(min > tt[j][i]) { min=t

60、t[j][i] ; k = j ; } pp[i] = tt[k][i] ; } 16.填空 程序通過定義并賦初值的方式,利用結構體變量存儲了一名學生的信息,函數fun的功能是輸出這位學生的信息 /**********found**********/ void show(STU ___1___) { int i; printf("\n%d %s %c %d-%d-%d", tt.num, tt.name, tt.sex, tt.birthday.year, tt.birthday.month, tt.birthday.day);

61、for(i=0; i<3; i++) /**********found**********/ printf("%5.1f", ___2___); printf("\n"); } main( ) { STU std={ 1,"Zhanghua",M,1961,10,8,76.5,78.0,82.0 }; printf("\nA student data:\n"); /**********found**********/ show(___3___); } 修改 給定程序MODI1.c中函數fun的功能是:求出數組中最大數和次大數,并把最大數

62、和a【0】中的數對調,次最大數和a【1】中的書對調 int fun ( int * a, int n ) { int i, m, t, k ; for(i=0;i<2;i++) { /**********found**********/ m=0; for(k=i+1;ka[m]) k=m; t=a[i];a[i]=a[m];a[m]=t; } } 設計 請編寫一個函數unsigned fun ,w是一個大與10的無符號整數,若w

63、是n為的整數,函數求出w的低n-1位的數作為函數值返回 例如 w為5923 則函數返回923; 16、B: tt tt.score[i] std M: m=i m=k P: if(w>10000) w %= 10000 ; else if(w>1000) w %= 1000 ; else if(w>100) w %= 100 ; else if(w>10) w %=10 ; return w ; 17.填空 給定程序中,函數fun的功能是:對形參ss所指字符串數組中的M個字符串按長度由短到長進行排序。Ss所指字符串數組中共有M個字符串,且串長《N void f

64、un(char (*ss)[N]) { int i, j, k, n[M]; char t[N]; for(i=0; in[j]) ___2___; if(k!=i) { strcpy(t,s

65、s[i]); strcpy(ss[i],ss[k]); /**********found**********/ strcpy(ss[k],___3___); n[k]=n[i]; } } } 給定程序MODI。C中函數fun的功能是:判斷ch中字符是否與str所指串中的某個字符相同;若相同,什么也不做,若不同,則將其插在串的最后 #include /**********found**********/ void fun(char str, char ch ) { while

66、 ( *str && *str != ch ) str++; /**********found**********/ if ( *str == ch ) { str [ 0 ] = ch; /**********found**********/ str[1] = 0; } } 設計 請編制一個函數fun,函數功能是吧s所指字符串中的內容逆值 17、B: i+1 k=j t M: char *str != 0 P: char b[N] ; int i = 0, j ; for(j = strlen(s) - 1 ; j >= 0 ; j--) b[i++] = s[j] ; b[i]=0; strcpy(s, b) ; 18.填空 給定程序中,函數fun的功能是:求出形參ss所指的字符串數組中最長字符串的長度,其余字符串左邊用字符*補齊,使其與最長的字符串等長,字符串數組中共有M個字符串 void fun(char (*ss)[N]) { int i,

展開閱讀全文
溫馨提示:
1: 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
2: 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
3.本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
5. 裝配圖網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

相關資源

更多
正為您匹配相似的精品文檔
關于我們 - 網站聲明 - 網站地圖 - 資源地圖 - 友情鏈接 - 網站客服 - 聯系我們

copyright@ 2023-2025  zhuangpeitu.com 裝配圖網版權所有   聯系電話:18123376007

備案號:ICP2024067431-1 川公網安備51140202000466號


本站為文檔C2C交易模式,即用戶上傳的文檔直接被用戶下載,本站只是中間服務平臺,本站所有文檔下載所得的收益歸上傳人(含作者)所有。裝配圖網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對上載內容本身不做任何修改或編輯。若文檔所含內容侵犯了您的版權或隱私,請立即通知裝配圖網,我們立即給予刪除!