版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領
文檔簡介
全國計算機二級C語言題庫給定程序的功能是調用fun函數(shù)建立班級通訊錄。通訊錄中記錄每位學生的編號,姓名和電話號碼。班級的人數(shù)和學生的信息從鍵盤讀入,每個人的信息作為一個數(shù)據(jù)塊寫到名為myfile5.dat的二進制文件中。請在程序的下劃線處填入正確的內(nèi)容并把下劃線刪除,是程序得出正確的結果。注意:源程序存放在考生文件夾下的BLANK1.c中不得增行或刪行,也不得更改程序的結構!voidcheck();/**********found**********/intfun(___1___*std){/**********found**********/___2___*fp;inti;if((fp=fopen("myfile5.dat","wb"))==NULL)printf("\nOutputdatatofile!\n");for(i=0;i<N;i++)/**********found**********/fwrite(&std[i],sizeof(STYPE),1,___3___);fclose(fp);return}修改unst例如:當s中的字符串為:“ABCDE”時,則他中的字符串應為:“ABCDEEDCBA”。請改正程序中的錯誤,使他能得出正確的結果。注意:不要改動main函數(shù),不能增行或刪行,也不得更改程序的結構!voidfun(char*s,char*t){inti,sl;sl=strlen(s);/************found************/for(i=0;i<=s1;i++)t[i]=s[i];for(i=0;i<sl;i++)t[sl+i]=s[sl-i-1];/************found************/t[sl]=\'\0\';}程序unabca數(shù)的十位和個位數(shù)依次放在c數(shù)的千位和十位上,b數(shù)的十位和個位數(shù)依次放在c數(shù)的百例如:a=45,b=12時,調用該函數(shù)后,c=4152.注意:部分源程序存在文件PROG1.C中。數(shù)據(jù)文件IN.DAT中的數(shù)據(jù)不得修改。請勿改動主mainfun號中填入你編寫的若干語句。答案:B:STYPEFILEfpM:for(i=0;i<sl;i++)t[2*sl]=0;P:*c=(a/10)*1000+(b/10)*100+(a%10)*10+(b%10);填空給定程序的功能是:從鍵盤輸入若干行文本(每行不超過80個字符),寫到文件myfile4.txt中,用-1作為字符串輸入結束的標記。然后將文件的內(nèi)容讀出顯示在屏幕上。文件的讀寫分別請在程序的下劃線處填入正確的內(nèi)容并把下劃線刪除,是程序得出正確的結果。注意:源程序存放在考生文件夾下的BLANK1.c中不得增行或刪行,也不得更改程序的結構!{FILE*fp;if((fp=fopen("myfile4.txt","w"))==NULL){printf("openfail!!\n");exit(0);}fclose(fp);if((fp=fopen("myfile4.txt","r"))==NULL){printf("openfail!!\n");exit(0);}fclose(fp);}/**********found**********/voidWriteText(FILE___1___){charstr[81];printf("\nEnterstringwith-1toend:\n");gets(str);while(strcmp(str,"-1")!=0){/**********found**********/fputs(___2___,fw);fputs("\n",fw);gets(str);}}voidReadText(FILE*fr){charstr[81];printf("\nReadfileandoutputtoscreen:\n");while(!feof(fr)){/**********found**********/printf("%s",___3___);}}MODIcfun取出長整形變量s中的奇數(shù)位上的數(shù),依構成一個新數(shù)放在t中,高位仍放在高位,低位仍放在低位。例如:當s中的數(shù)為:7654321時,t中的數(shù)為:7531請改正程序中的錯誤,使他能得出正確的結果。注意:不要改動main函數(shù),不能增行或刪行,也不得更改程序的結構!#include<stdio.h>/************found************/voidfun(longs,longt){longsl=10;*t=s%10;while(s>0){s=s/100;*t=s%10*sl+*t;/************found************/sl=sl*100;}}程序unabca數(shù)的十位和個位數(shù)依次放在c數(shù)的千位和十位上,b數(shù)的十位和個位數(shù)依次放在c數(shù)的百例如:a=45,b=12時,調用該函數(shù)后,c=1524.注意:部分源程序存在文件PROG1.C中。數(shù)據(jù)文件IN.DAT中的數(shù)據(jù)不得修改。請勿改動主mainfun號中填入你編寫的若干語句。M:long*tsl=sl*10;P:*c=(b/10)*1000+(a%10)*100+(b%10)*10+(a/10);.填空文檔中,然后再順序讀出顯示在屏幕上。請在程序的下劃線處填入正確的內(nèi)容并把下劃線刪除,是程序得出正確的結果。注意:源程序存放在考生文件夾下的BLANK1.c中不得增行或刪行,也不得更改程序的結構!intfun(char*fname){FILE*fp;inti,n;floatx;if((fp=fopen(fname,"w"))==NULL)return0;for(i=1;i<=10;i++)/**********found**********/fprintf(___1___,"%d%f\n",i,sqrt((double)i));printf("\nSucceed!!\n");/**********found**********/___2___;printf("\nThedatainfile:\n");/**********found**********/if((fp=fopen(___3___,"r"))==NULL)nfscanf(fp,"%d%f",&n,&x);while(!feof(fp)){printf("%d%f\n",n,x);fscanf(fp,"%d%f",&n,&x);}fclose(fp);return}修改fun(intn,int*a){inti,j,p,t;for(j=0;j<n-1;j++){p=j;/************found************/for(i=j+1;i<n-1;i++)if(a[p]>a[i])/************found************/t=i;if(p!=j){t=a[j];a[j]=a[p];a[p]=t;}}}程序unabca數(shù)的十位和個位數(shù)依次放在c數(shù)的千位和十位上,b數(shù)的十位和個位數(shù)依次放在c數(shù)的百例如:a=45,b=12時,調用該函數(shù)后,c=2514注意:部分源程序存在文件PROG1.C中。數(shù)據(jù)文件IN.DAT中的數(shù)據(jù)不得修改。請勿改動主mainfun號中填入你編寫的若干語句。Mi<np=iP:*c=(b%10)*1000+(a%10)*100+(b/10)*10+(a/10);4.填空給定程序的功能是:調用函數(shù)fun將指定源文件中的內(nèi)容復制到指定的目標文件中,復制成功時函數(shù)返回值為1,失敗時返回值為0,在復制的過程中,把復制的內(nèi)容輸出到終端屏幕。主函intfun(char*source,char*target){FILE*fs,*ft;charch;/**********found**********/if((fs=fopen(source,___1___))==NULL)nif((ft=fopen(target,"w"))==NULL)nprintf("\nThedatainfile:\n");tcfs/**********found**********/while(!feof(___2___)){putchar(ch);/**********found**********/fputc(ch,___3___);tcfs}fclose(fs);fclose(ft);printf("\n\n");return}修改給定程序MODI1.C中函數(shù)fun的功能是:將長整形數(shù)中每一位上為偶數(shù)的數(shù)依次取出,構成一t位仍在低位。例如:當s中的數(shù)為:87653142時,t中的數(shù)為:8642voidfun(longs,long*t){intd;longsl;while(s>0){d=s%10;/************found************/if(d%2=0){*t=d*sl+*t;sl*=10;}/************found************/s\=10;}}程序unabca數(shù)的十位和個位數(shù)依次放在c數(shù)的千位和十位上,b數(shù)的十位和個位數(shù)依次放在c數(shù)的百例如:a=45,b=12時,調用該函數(shù)后,c=5142注意:部分源程序存在文件PROG1.C中。數(shù)據(jù)文件IN.DAT中的數(shù)據(jù)不得修改。請勿改動主mainfun號中填入你編寫的若干語句。M:(d%2==0)s/=10;P:*c=(a%10)*1000+(b/10)*100+(a/10)*10+(b%10);5.填空給定程序中已建立一個帶有頭結點的單向鏈表,鏈表中的各節(jié)點按結點數(shù)據(jù)域中的數(shù)據(jù)遞增有序鏈表。函數(shù)fun的功能是:把形參x的值放入一個新結點并插入到鏈表中,插入后結點數(shù)據(jù)域的值仍保持遞增有序。typedefstructlistintdata;structlist*next;voidfun(SLIST*h,intx){SLIST*p,*q,*s;s=(SLIST*)malloc(sizeof(SLIST));/**********found**********/s->data=___1___;phnextwhile(p!=NULL&&x>p->data){/**********found**********/q=___2___;ppnext}s->next=p;/**********found**********/q->next=___3___;}修改MODICfunnum之積。例如,若輸入:252,則輸入應該是:20.若輸入:202,則輸出應該是:0.longfun(longnum){/************found************/ngk{k*=num%10;/************found************/num\=10;}while(num);return(k);}請編寫一個函數(shù)fun,它的功能是:它的功能是:計算n門課程的平均分,計算結果作為函數(shù)值例如:若有5門課程的成績是:90.5,72,80,61.5,55則函數(shù)的值為:71.80M:longk=1;num/=10;P:inti;floatave=0.0;for(i=0;i<n;i++)ave=ave+a[i];ave=ave/n;returnave;.填空給定程序中已建立一個帶有頭結點的單向鏈表,在main函數(shù)中將多次調用fun函數(shù),沒調用一次fun函數(shù),輸出鏈表尾部結點中的數(shù)據(jù),并釋放該節(jié)點,是鏈表縮短。voidfun(SLIST*p){SLIST*t,*s;t=p->next;s=p;while(t->next!=NULL)/**********found**********/t=t->___1___;}/**********found**********/printf("%d",___2___);s->next=NULL;/**********found**********/free(___3___);}修改給定程序MODI1.C中函數(shù)fun的功能是:將字符串中的字符按逆序輸出,單補改變字符串中的abcd應輸出:dcba/************found************/fun(chara){if(*a){fun(a+1);/************found************/printf("%c"*a);}}程序請編寫一個函數(shù)fun,他的功能是:比較兩個字符串的長度(不得調用c語言提供的求字符串長度的函數(shù)),函數(shù)返回較長的字符串。若兩個字符串長度相同,則返回第一個字符串。beijingCRshanghaiCR>(<CR>為回車鍵),函數(shù)將返回shanghaiM:fun(char*a)printf("%c",*a);P:inti;char*p=s,*q=t;for(i=0;*p&&*q;i++){pq;}if(*p==0&&*q==0)returns;if(*p)returns;elsereturnt;7.填空給定程序中建立一個帶有頭結點的單向鏈表,鏈表中的各節(jié)點按數(shù)據(jù)域遞增有序連接。函數(shù)fun的功能是:刪除鏈表中數(shù)據(jù)域值相同的結點,使之只保留一個typedefstructlistintdata;structlist*next;voidfun(SLIST*h){SLIST*p,*q;phnextif(p!=NULL){q=p->next;while(q!=NULL){if(p->data==q->data){p->next=q->next;/**********found**********/free(___1___);/**********found**********/q=p->___2___;}{p=q;/**********found**********/q=q->___3___;}}}}修改MODICfun的n個元素按從小到大的順序進voidfun(inta[],intn){inti,j,t,p;for(j=0;j<n-1;j++){/************found************/for(i=j;i<n;i++)if(a[i]<a[p])/************found************/t=a[p];a[p]=a[j];a[j]=t;}}m22183335424449答案:M:p=j;p=i;P:inti;*n=0;for(i=7;i<=m;i++)if((i%7==0)||(i%11==0))a[(*n)++]=i;8.填空點。找到后通過函數(shù)值返回改結點在鏈表中所處的順序號;若不存在值為ch的結點,函數(shù)返typedefstructlistintdata;structlist*next;SLIST*creatlist(char*);voidoutlist(SLIST*);intfun(SLIST*h,charch){SLIST*p;intn=0;phnext/**********found**********/while(p!=___1___){n++;/**********found**********/if(p->data==ch)return___2___;elsep=p->next;}n}修改MODICfunp空白字符(包括制表符,及換行符)輸入字符串是用“#”結束輸入。fun(char*p){inti,t;charc[80];/************found************/For(i=0,t=0;p[i];i++)if(!isspace(*(p+i)))c[t++]=p[i];/************found************/c[t]="\0";strcpyp,c);}程序請編寫一個函數(shù)fun,它的功能是:將ss所指字符串中所有下標為奇數(shù)位置上的字母轉換成大寫(若該位置上不是字母,則不轉換)例如:若輸入“abc4EFg”,則應輸出“aBc4Efg”。案:M:forc[t]=\'\0\';P:inti;for(i=1;i<strlen(*ss);i+=2){if(ss[i]>=\'a\'&&ss[i]<=\'z\')ss[i]-=32;9.填空fun向鏈表中的個數(shù),存放在形參n所指voidfun(SLIST*h,int*n){SLIST*p;/**********found**********/___1___=0;phnextwhile(p){(*n)++;/**********found**********/p=p->___2___;}}{SLIST*head;inta[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中函數(shù)fun的功能是:求出s所指字符串中最后一次出現(xiàn)的t所指子字符串的地址,通過函數(shù)返回值返回,在主函數(shù)中輸出從此地址開始的字符串;若未找到,則函數(shù)值例如:當字符串中的內(nèi)容為“abcdefabcdx”t中的內(nèi)容為“ab”時,輸出的結果應是:abcdx當字符串中的內(nèi)容為“abcdefabcdx”t中的內(nèi)容為“abd”時,則程序輸出未找到信息notbefoundchar*fun(char*s,char*t){charpr*a;/************found************/a=Null;while(*s){p=s;r=t;while(*r)/************found*****
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年花崗巖石材加工與批發(fā)合同協(xié)議
- 光伏工程清包勞務獨家承包合同(2024年修訂)
- 2025年度建筑工程竣工驗收合作施工合同示范文本
- 2025年度電機租賃服務合同規(guī)范文本
- 2025年度智慧城市建設股權合作及技術服務合同
- 二零二五年度個人小額信用貸款合同2篇
- 二零二五年度地質災害風險評估承包土石方運輸合同3篇
- 2025年度品牌廣告策劃執(zhí)行合同范本
- 二零二五年度拱門空飄體育賽事贊助安裝合同3篇
- 二零二五合伙購房合同標準文本-@-2
- 人教版五年級上冊小數(shù)除法豎式計算練習練習300題及答案
- 綜合素質提升培訓全面提升個人綜合素質
- 如何克服高中生的社交恐懼癥
- 聚焦任務的學習設計作業(yè)改革新視角
- 《監(jiān)理安全培訓》課件
- 2024高二語文期末試卷(選必上、中)及詳細答案
- 淋巴瘤患者的護理
- 水利工程建設管理概述課件
- 人美版初中美術知識點匯總九年級全冊
- 2022中和北美腰椎間盤突出癥診療指南的對比(全文)
- 乳房整形知情同意書
評論
0/150
提交評論