



版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
國家計算機(jī)二級c語言歷年上級100套第一套程序填空給定程序中,函數(shù)fun的功能是:將形參n所指變量中,各位上為偶數(shù)的數(shù)去除,剩余的數(shù)按原來從高位到低位的順序組成一個新的數(shù),并通過形參指針n傳回所指變量。如輸入ー個數(shù):27638496,新的數(shù)為729第一空:{t=*n%10;第二空:if(t%2!=0)第三空:*n=x;2.程序修改給定程序modil.c中函數(shù)fun的功能是:計算n!。例如,給n輸入5,則輸出120.000000。doublefun(intn){doubleresult=l.0;/ound******/if(n==0)return1.0;while(n>l&&n<170)/*****found******/result*=n--:.returnresult;:程序設(shè)計請編寫ー個函數(shù)fun,它的功能是:將一個數(shù)字字符串轉(zhuǎn)換為ー個整數(shù)(不得調(diào)用C語言提供的將字符串轉(zhuǎn)換為整數(shù)的函數(shù))。例如,若輸入字符串“T234”,則函數(shù)把它轉(zhuǎn)換為整數(shù)值ー1234。longfun(char*p)Iinti,len,t;longx=0;len=strlen(p);if(p[0]=='二‘){t="l;len-;p++;}elset=l;while(*p)x=x*]0-48+(*p++);returnx*t;第二套. 給定程序中,函數(shù)fun的功能是將形參給定的字符串、整數(shù)、浮點數(shù)寫到文本文件中,再用字符方式從此文本文件中逐個讀入并顯示在終端屏幕上。請在程序的下劃線處填入正確的內(nèi)容并把下劃線刪除,使程序得出正確的結(jié)果。注意:源程序存放在考生文件夾下的BLANKLC中。第1處FILE*fp;第2處while(!feof(fp)){第3處putchar(ch);ch=fgetc(fp);}.程序修改給定程序M0DH.C中函數(shù)fun的功能是:依次取出字符串中所有數(shù)字字符,形成新的字符串,并取代原字符串。voidfun(char*s){inti,j;for(i=0,j=O;s[i]!='、〇';i++)if(s[i]>='0'&&s[i"ソ9')/*****found******/s[j++]=s[i];/*****found******/s[j]=‘、0';}.程序設(shè)計題請編寫函數(shù)fun,函數(shù)的功能是:將M行N列的二維數(shù)組中的字符數(shù)據(jù),按列的順序依次放到ー個字符串中。voidfun(chars[][N],char*b)Iinti,j,n=0;for(i=0;i<N;i++)/?請?zhí)顚懫湎鄳?yīng)語句完成其功能?/[for(j=0;jくM;j++){b[n]=s[j][i];n=i*M+j+1;b[n]=‘、0'第三套程序填空程序通過定義學(xué)生結(jié)構(gòu)體變量,存儲了學(xué)生的學(xué)號、姓名和3門課的成績。所有學(xué)生數(shù)據(jù)均以二進(jìn)制方式輸出到文件中。函數(shù)fun的功能是重寫形參filename所指的文件中最后ー個學(xué)生的數(shù)據(jù),即用新的學(xué)生數(shù)據(jù)覆蓋該學(xué)生原來的數(shù)據(jù),其它學(xué)生的數(shù)據(jù)不變。第1處:fp=fopen(filename,“rb+”)第2處:fseek(fp,TL*sizeof(STU),SEEK_END);第3處:fwrite(&n,sizeof(STU),1,fp);程序修改給定程序MODILC中的函數(shù)Creatlink的功能是創(chuàng)建帶頭結(jié)點的單向鏈表,并為各結(jié)點數(shù)據(jù)域賦〇到m-1的值。請改正函數(shù)Creatlink中指定部位的錯誤,使它能得出正確的結(jié)果。NODE*Creatlink(intn,intm){NODE*h=NULL,*p,*s;inti;/ound******/p=(NODE*)malloc(sizeof(NODE));h=p;p->next=null;for(i=l;i<=n;i++){s=(NODE*)malloc(sizeof(NODE));s->data=rand()%m;s->next=p->next;p->next=s;p=p->next;/ound******/returnh;)程序設(shè)計請編寫函數(shù)fun,函數(shù)的功能是:統(tǒng)計一行字符串中單詞的個數(shù),作為函數(shù)值返回。一行字符串在主函數(shù)中輸入,規(guī)定所有單詞由小寫字母組成,單詞之間由若干個空格格開,一行的開始沒有空格。intfun(char*s)Iintk=l;while(*s){if(*s==,,)k++;s++;}returnk;第四套程序填空程序通過定義學(xué)生結(jié)構(gòu)體變量,存儲了學(xué)生的學(xué)號、姓名和3門課的成績。所有學(xué)生數(shù)據(jù)均以二進(jìn)制方式輸出到文件中。函數(shù)fun的功能是從形參filename所指的文件中讀入學(xué)生數(shù)據(jù),并按照學(xué)號從小到大排序后,再用二進(jìn)制方式把排序后的學(xué)生數(shù)據(jù)輸出到fi1ename所指的文件中,覆蓋原來的文件內(nèi)容。第1處fp=fopen(filename,"rb");第2處if(s[i].sno>s[j].sno)第3處fwrite(s,sizeof(STU),N,fp);程序修改給定程序M0DI1.C中函數(shù)fun的功能是:在字符串的最前端加入n個?號,形成新串,差且覆蓋原串。注意:字符串的長度最長允許為79.voidfun(chars[],intn)Ichara[80],*p;inti;/*****found******/P=s;for(i=0;i<n;i++)a[i]='*';do{a[i]=*p;i++;)/*****found******/while(*p++)a[i]=0;strcpy(s,a);}程序設(shè)計請編寫函數(shù)fun,函數(shù)的功能是:統(tǒng)計各年齡段的人數(shù),N個年齡能過調(diào)用隨機(jī)函數(shù)獲得,并放在主函數(shù)的age數(shù)組中:要求函數(shù)把0至9歲的年齡段的人數(shù)放在d[0]中,把10至19歲的年齡段的人數(shù)放在d[l]中,把20至29歲的年齡段的人數(shù)放在d[2]中,其余依次類推,把100歲(含100歲)以上年齡的人數(shù)都放在d[10]中。結(jié)果在主函數(shù)中輸出。voidfun(int*a,int*b)[inti,j;for(i=0;i++)b[i」=0;for(i=0;iくN;i++)L_J=a[i]/10;elseb[j]++;第五套1. 程序填空給定程序中,函數(shù)fun的功能是將參數(shù)給定的字符串、整數(shù)、浮點數(shù)寫到文件文件中,再用字符串方式從此文本文件中逐個讀入,并調(diào)用庫函數(shù)atoi和atof將字符串換成相應(yīng)的整數(shù)和浮點數(shù),然后將其顯示在屏幕上。第1處:FILE*fp;第2處:fclose(fp);第3處:fscanf(fp,"%s%s%s”,str,strl,str2);給定程序MODIl.C中函數(shù)fun的功能是:對N名學(xué)生的學(xué)生成績,按從高到低的順序找出前m(m<10)名學(xué)生來,將這些學(xué)生數(shù)據(jù)存放在一個動態(tài)分配的連續(xù)存儲區(qū)中,此存儲區(qū)的首地址作為函數(shù)值返回。STU*fun(STUa[],intm){STUb[N],*t;inti,j,k;/*****found******/t=(STU*)calloc(sizeof(STU),m);for(i=0;i<N;i++)b[i]=a[i];for(k=0;k<m;k++){for(i=j=0;i<N;i++)if(b[i].s>b[j].s)j=i;/*****found******/t[k]=b[j];b[j].s=0;}returnt;請編寫函數(shù)fun,函數(shù)的功能是,刪去ー維數(shù)組中所有相同的數(shù),使之只剩ー個。數(shù)組中的數(shù)已按從小到大的順序排序,函數(shù)返回刪除后數(shù)組中數(shù)據(jù)的個數(shù)。intfun(inta[],intn)I:inti,j=l,k=a[0];for(i=l;i〈n;i++)if(k!=a[i]){a[j++]=a[i];k=a[i];}a[.j]=O;return,j;1.給定程序中,函數(shù)fun的功能是根據(jù)形參i的值返回某個函數(shù)年值。當(dāng)調(diào)用正確時,程序輸出:xl=5.000000x2=3.000000.xl*xl+xl*x2=4〇.000000第一處:doublefun(inti,doublex,doubley)第二處:returnfl(x);第三處:returnf2(x,y);.程序修改給定程序MODH.C中函數(shù)fun的功能是:比較兩個字符串,將長的那個字符串的首地址作為函數(shù)值返回。ttinclude<stdio.h>/*****found******/char*fun(char*s,char*t)Iintsl=0,tl=0;char*ss,*tt;ss=s;tt=t;while(*ss){sl++;/*****found******/ss++;while(*tt){tl++;/*****found******/tt++;)if(tl>sl)returnt;elsereturns;).程序設(shè)計請編寫函數(shù)fun,函數(shù)的功能是:移動字符串中的內(nèi)容,移動的規(guī)則如下:把第1到第m個字符,平均移到字符串的最后,把第m+1個到最后的;字符移到字符串的前部。voidfun(char*w,intm)Iinti;for(i=0;iくm;i++)第七套1.程序填空程序通過定義并賦初值的方式,利用結(jié)構(gòu)體變量存儲了一名學(xué)生的信息,函數(shù)fun的功能是輸出這位學(xué)生的信息。第1處voidshow(STUtt)第2處printf("%5.If”,tt.score[i]);第2處show(std)2.程序修改給定程序M0DU中函數(shù)fun的功能是:求出數(shù)組中最大數(shù)和次最大數(shù),并把最大數(shù)和a[0]中的數(shù)對調(diào)、次最大數(shù)和a[l]中的數(shù)對調(diào)。intfun(int*a,intn){inti,m,t,k;for(i=0;iく2;i++){/ound******/m=i;for(k=i+l;k<n;k++)/ound******/if(a[k]>a[m])m=k;t=a[i];a[i]=a[m];a[m]=t;))3.程序設(shè)計請編寫ー個unsignedfun(unsignedw),w是一個大于10的無符號整數(shù),若w是n(n>=2)位的整數(shù),函數(shù)求出w的后nT位的數(shù)作為函數(shù)值返回。例如:w值為5923,則函數(shù)返回923;w值為923則函數(shù)返回23。unsignedfun(unsignedw)(if(w>=10000)returnw%10000;if(w>=1000)returnw%1000;if(w>=100)returnw%100;returnw%10;第八套.程序填空給定程序通過定義并賦值的方式,利用結(jié)構(gòu)體變量存儲了一名學(xué)生學(xué)號、姓名和3門課的成績。函數(shù)fun的功能是將該學(xué)生的各科成績都乘以ー個系統(tǒng)a。第1處voidmodify(STU*ss,floata)第2處ssー>score[i]*=a;第3處modify(&std,a);.程序修改給定程序MODH.C中函數(shù)fun的功能是:求k!く13>,所求階乘的值作為函數(shù)值返回。例如:若k=10,則應(yīng)輸出:3628800clongfun(intk)I/*****found******/if(k>0)return(k*fun(k-l));/*****found******/elseif(k==0)returnIL;.程序設(shè)計程序定義了N*N的二維數(shù)組,并在主函數(shù)中自動賦值。請編寫函數(shù)fun(inta[][N],intn),函數(shù)的功能是:使數(shù)組左下三角元素中的值乘以nointfun(inta[][N],intn){inti,j;for(i=0;i<N;i++)for(j=0;j<=i;j++)a[i][j]*=n;第九套.程序填空給定程序中,函數(shù)fun的功能是將不帶頭節(jié)點的單向鏈表結(jié)點數(shù)據(jù)域中的數(shù)據(jù)從小到大排序。即若原鏈表結(jié)點數(shù)據(jù)域從頭到尾的數(shù)據(jù)為:10、4、2、8、6,排序后鏈表結(jié)點數(shù)據(jù)域從頭至尾的數(shù)據(jù)為2、4、6、8、10o第1處q=pー〉next;第2處while(q)第3處p=p->next;.程序修改給定程序M0DH.C中函數(shù)fun的功能是:將s所指字符串中的字母轉(zhuǎn)換為按字母序列的后續(xù)字母(但Z轉(zhuǎn)換為A,z轉(zhuǎn)換成a),其它字符不變。voidfun(char*s)I/ound******/while(*s){if(*s>'A'&&*sく='VI|*s>='a,&&*sく='z,){if(*s=='T)*s='A';elseif(*s=='z')*s='af;else*s二*s+1;}/*****found******/s++;))3.程序設(shè)計voidfun(int*w,intp,intn){inti,j=0,b[N];for(i=p+l;i<n;i++)b[j++]=w[i];for(i=0;i<=p;i++)b[j++]=w[i];for(i=0;i<n;i++)w[i]=b[i];第十套1程序填空給定程序中,函數(shù)fun的功能是:判定形參a所指的NXN(規(guī)定N為奇數(shù))的矩陣是否是“幻方”,若是,函數(shù)返回值為!:不是,函數(shù)返回值為〇。"幻方”的判定條件是:矩陣每行、每列、主對角線及反對角線上元素之和都相等。第1處row=colum=0;第2處if((row!=colum)||(row!=ml))return0;第3處return1;2程序修改給定MODH.Cfun函數(shù)的功能是:根據(jù)整型形參m,計算如下公式的值。t=l-l/2-l/3-……-1/m.ttinclude<sdio.h>doublefun(intm)Idoublet=1.0;for(i=2;iく=m;i++)/********fotind***********/t=t-l.0/i;/********founcl***********/returnt;:3程序設(shè)計請編寫ー個函數(shù),函數(shù)的功能是刪除字符串中的所有空格。intfun(char*str)(char*p=str;inti=0;while(*p){if(*p!='')str[i++]=*p;p++;}str[i]=0;第Hー套!程序填空給定程序中,函數(shù)fun的功能是將帶頭結(jié)點的單向鏈表逆置。即若原鏈表中從頭至尾結(jié)點數(shù)據(jù)域依次為:2、4、6、8、10,逆置后,從頭至尾結(jié)點數(shù)據(jù)域依次為:10、8、6、4、2、。第!?處p=hー>next;第2處if(p==0)return;第3處p=q;q=r;2.程序修改給定MODIl.Cfun函數(shù)的功能是:計算s所指字符串中含有t所指字符串的數(shù)目,并作為函數(shù)值返回。請改正函數(shù)fun中指定部位的錯誤,使它能得出正確的結(jié)果。#include<stdio.h>#include<string.h>#defineN80intfun(char*s,char*t){intn;char*p,*r;n=0;while(*s){P=s;/*******found******/r=t;while(*r)if(*r==*p){r++;p++;}elsebreak;/*******found******/if(*r==0)n++;s++;)returnn;3程序設(shè)計請編寫函數(shù)fun,函數(shù)的功能是:將放在字符串?dāng)?shù)組中的M個字符串(每串的長度不超過N),按順序合并組成一個新的字符串,函數(shù)fun中給出的語句供供參考。voidfun(chara[M][N]),char*b){inti;*b=0;for(i=0;i<M;i++)strcat(b,a[i]);第十二套!程序填空給定程序中,函數(shù)fun的功能是將不帶頭結(jié)點的單向鏈表逆置。即若原鏈表中從頭至尾結(jié)點數(shù)據(jù)域依次為:2、4、6、8、10,逆置后,從頭至尾結(jié)點數(shù)據(jù)域依次為:10、8、6、4、2。請在程序的下劃線處填入正確的內(nèi)容并把下劃線刪除,使程序得出正確的結(jié)果。第!處NODE*fun(NODE*h)第2處r=q->next;第3處q=r;2程序修改給定程序M0DH.C中函數(shù)fun的功能是:將s所指字符串中位于奇數(shù)位置的字符或ASCI!碼為偶數(shù)的字符放入t所指數(shù)組中(規(guī)定第一個字符放在第0位中)。#include<stdio.h>#include<string.h>ttdefineN80voidfun(char*s,chart[]){inti,j=0;for(i=0;iくstrlen(s);i++)/*******found******/if(i%2||s[i]%2==0)t[j++]=s[i];/*******found******/山ヒ‘、〇;;3程序設(shè)計請編寫函數(shù)fun,函數(shù)的功能是:將M行N列的二維數(shù)組中的數(shù)據(jù),按列的順序依次放到ー維數(shù)組中。函數(shù)fun中給出的語句僅供參考。#include<stdio.h>voidfun(int(n=np;s)[10],int*b,int*n,intmm,intnn)n=np;inti,j,np=0;for(i=0;i<nn;i++)for(j=0;j<mm;j++)(b[np]=s[j][i];np=i*mm+j+l;第十三套!程序填空給定程序中,函數(shù)fun的功能是將帶頭節(jié)點的單向鏈表結(jié)點數(shù)據(jù)域中的數(shù)據(jù)從小到大排序,即若原鏈表結(jié)點數(shù)據(jù)域從頭至尾的數(shù)據(jù)為:10、4、2、8、6,排序后鏈表結(jié)點數(shù)據(jù)域從頭至尾的數(shù)據(jù)為:2、4、6、8、10o請在程序的下劃線處填入正確的內(nèi)容并把下劃線刪除,使程序得出正確的結(jié)果。第1處p=hー)next;第2處q=p->next;第3處if(p->data>=q->data))2程序修改給定程序M0DI1.C是建立一個帶頭結(jié)點的單向鏈表,并用隨機(jī)函數(shù)為各結(jié)點數(shù)據(jù)域賦值。函數(shù)fun的作用是求出單向鏈表結(jié)點(不包括頭結(jié)點)數(shù)據(jù)域中的最大值,并且作為函數(shù)值返回。請改正函數(shù)fun中指定部位的錯誤,使它能得出正確的結(jié)果。fun(NODE*h){intmax=-l;NODE*p;/*******found******/p=h->next:.while(p){if(p->data>max)max=p->data;/*******found******/p=p->next:.)returnmax;}3程序設(shè)計請編寫函數(shù)fun,函數(shù)的功能是:將M行N列的二維數(shù)組中的數(shù)據(jù),按行的順序依次放到ー維數(shù)組中。ー維數(shù)組中數(shù)據(jù)的個數(shù)存放在形參n所指的存儲單元中。voidfun(int(*s)[10],int*b,int*n,intmm,intnn)Iinti,j,k;for(i=0;iくmm;i++)for(j=0;jくnn;j++){k=i*nn+j;b[k]=s[i][j];*n=mm*nn;第十四套!程序填空給定程序中,函數(shù)fun的功能是用函數(shù)指針指向要調(diào)用的函數(shù),并進(jìn)行調(diào)用。規(guī)定在ー2ー處使f指向函數(shù)fl,在ー3ー處使f指向函數(shù)f2。當(dāng)調(diào)用正確時,程序輸出:xl=5.000000,x2=3.000000,xl*xl+xl*x2=4〇.00000〇請在程序的下劃線處填入正確的內(nèi)容并把下劃線刪除,使程序得出正確的結(jié)果。第!處double(*f)();第2處f=fl;第3處f=f2;2程序修改給定程序M0DI1.C是建立一個帶頭點的單向鏈表,并用隨機(jī)函數(shù)為各結(jié)點賦值。函數(shù)fun的功能是將單向鏈表結(jié)點(不包括頭結(jié)點)數(shù)據(jù)域為偶數(shù)的值累加起來,并且作為函數(shù)值返回。請改正函數(shù)fun中指定部位的錯誤,使它能得出正確的結(jié)果。intfun(NODE*h){intsum=0;NODE*p;/*******found******/p-h->next;while(p){if(p->data%2==0)sum+=p->data;/*******found******/p=pー〉next:.)returnsum;3程序設(shè)計請編寫函數(shù)fun,函數(shù)的功能是:判斷字符串是否為回文?叵是,函數(shù)返回1,主函數(shù)中輸出:YEX,否則返回0,主函數(shù)中輸出N0o回文是指順讀t和倒讀都一樣的字符串。intfun(char*str)inti,,j=strlen(str);for(i=0;iくj/2;i++)if(str[i]!=str[j-i-l])return。;return1;第十五套!程序填空程序通過定義學(xué)生結(jié)構(gòu)體變量,存儲了學(xué)生的學(xué)號,姓名和3門課的成績。所有學(xué)生數(shù)據(jù)均以二進(jìn)制方式輸出到student.dat文件中。函數(shù)fun的功能是從指定文件中找出指定學(xué)號的學(xué)生數(shù)據(jù),讀入此學(xué)生數(shù)據(jù),對該生的分?jǐn)?shù)進(jìn)行修改,使每門課的分?jǐn)?shù)加3分,修改后重寫文件中該學(xué)生的數(shù)據(jù),即用該學(xué)生的背后數(shù)據(jù)覆蓋原數(shù)據(jù),其它學(xué)生數(shù)據(jù)不變;若找不到,則什么都不做。請在程序的下劃線處填入正確的內(nèi)容并把下劃線刪除,使程序得出正確的結(jié)果。第1處while(!feof(fp))第2處if(n.sno==sno)break;第3處fseek(fp,-lL*sizeof(STU),SEEKCUR);2程序修改給定程序M0DI1.C中函數(shù)fun的功能是:利用插入排序法對字符串中的字符按從小到大的順序進(jìn)行排序,插入法的基本算法是:先對字符串中的頭兩個元素進(jìn)行排序,然后把第三個字符插入到前兩個字符中,插入后前三個字符依然有序;再把第四個字符插入到前三個字符中,……。待排序的字符串已在主函數(shù)中賦予。請改正函數(shù)fun中指定部位的錯誤,使它能得出正確的結(jié)果。voidinsert(char*aa){inti,j,n;charch;/*******found******/n=strlen(aa);for(i=l;i<n;i++){/*******found******/ch-aa[i];j=iT;while((j>=0)&&(ch<aa[j])){aa[j+l]=aa[j];j—;}aa[j+l]=ch;}}3程序設(shè)計N名學(xué)生的成績已在主函數(shù)中放入ー個帶頭節(jié)點的鏈表結(jié)構(gòu)中,h指向鏈表的頭節(jié)點。請編寫函數(shù)fun,它的功能是:找出學(xué)生的最高分,由函數(shù)值返回。doublefun(STREC*h)Idoublemax=hー〉s;STREC*p;p=h->next;while(p){if(p-s>max)max=p->s;p=p->next;returnmax;第十六套!程序填空給定程序中,函數(shù)fun的功能是:求出形參ss所指字符串?dāng)?shù)組中最長字符串的長度,將其余字符串右邊用字符?補齊,使其與最長的字符串等長。Ss所指字符串?dāng)?shù)組中共有M個字符串,且串長くN。請在程序的下劃線處填入正確的內(nèi)容并把下劃線刪除,使程序得出正確的結(jié)果。第1處n=strlen(ss[i]);第2處ss[i][n+j]=' ;第3處ss[i][n+j+l]='、0';2程序修改給定程序MODI1.C中fun函數(shù)的功能是:將p所指字符串中每個單詞的最后ー個字母改成大寫。(這里的“單詞”是指由空格隔開的字符串)。請改正程序中的錯誤之處,使它能得出正確的結(jié)果。#include<ctype.h>voidfun(char{k=0;{k=0;/*******found******/(p-l)=toupper(*(p-l));Iintk=0;for(;*p;p++)if(k)/*******found******/*p==,')elsek=l;)3程序設(shè)計請編寫函數(shù)fun,對長度為7個字符的字符串,除首、尾字符外,將其余5個字符ASCI!碼降序排列。intfun(char*s,intnum)Icharch;inti,j;for(i=l;i<6;i++)for(j=i+l;j<6;j++){if(*(s+i)<(s+j))Ich=*(s+j);*(s+j)=*(s+i);*(s+i)=ch;第十七套!程序填空程序通過定義學(xué)生結(jié)構(gòu)體數(shù)組,存儲了若干名學(xué)生的學(xué)號、姓名和3門課的成績。函數(shù)fun的功能是將存放學(xué)生數(shù)據(jù)的結(jié)構(gòu)體數(shù)組,按照姓名的字典序(從小到大)排序。請在程序的下劃線處填入正確的內(nèi)容并把下劃線刪除,使程序得出正確的結(jié)果。第1處structstudentt;第2處for(i=0;i<n-l;i++)第3處if(strcmp(a[i].name,a[j].name)>0)2程序修改給定程序MODH.C中函數(shù)fun的功能是:在p所指字符串中找出ASCH碼值最大的字符,將其放在第一個位置上;并將該字符前的原字符向后順序移動。fun(char*p){charmax,*q;inti=0;max=p[i];while(p[i]!=0){if(max<pLi]){max=p[i];/*******found******/q^p+iLi++;/*******found******/while(q>p){*q=*(q—l);q-;)p[0[=max;)3程序設(shè)計學(xué)生的記錄由學(xué)號和成績組成,N名學(xué)生的數(shù)據(jù)已在主函數(shù)中放入結(jié)構(gòu)體數(shù)組s中,請編寫了函數(shù)fun,它的功能是:把指定分?jǐn)?shù)范圍內(nèi)的學(xué)生數(shù)據(jù)放在b所指的數(shù)組中,分?jǐn)?shù)范圍內(nèi)的學(xué)生人數(shù)由函數(shù)值返回。intfun(STREC*a,STREC*b,int1,inth){inti,j=0;for(i=0;i<N;i++)if((a[i].s>=l&&a[i].s<=h)b[j++]=a[i];returnj;/*程序中1是用L的小寫?/第十八套!程序填空給定程序中,函數(shù)fun的功能是:將形參s所指字符串中的所有字母字符順序前移,其他字符順序后移,處理后新字符串的首地址作為函數(shù)值返回。第1處 ;j++;第2處for(i=0;iくk;i++)t[j+i]=p[i];第3處t[j+k]=O;2程序修改給定程序M0DI1.C中函數(shù)fun的功能是:將s所指字符串中最后一次出現(xiàn)的與tl所指字符串相同的子串替換成t2所指字符串,所形成的新串放在w所指的數(shù)組中。在此處,要求tl和t2所指字符串的長度相同。intfun(char*s,char*tl,char*t2,char*w)inti;char*p,*r,*a;strcpy(w,s);/*******found******/while(*w){p=w;r=tl;while(*r)/*******found******/if(*r==*p){r++;p++;}elsebreak;if(*r==‘、〇')a=w;w++;)r=t2;while(*r){*a=*r;a++;r++;})3程序設(shè)計函數(shù)fun的功能是:將s所指字符串中ASCII值為奇數(shù)的字符刪除,串中剩余字符形成一個新串放在t所指的數(shù)組中。voidfun(char*s,chart[]){inti,j=0;for(i=0;i<strlen(s);i++)if(s[i]%2==0)t[j++]=s[i];t[ホ0;}第十九套!程序填空程序通過定義學(xué)生結(jié)構(gòu)體變量,存儲了學(xué)生的學(xué)號、姓名和3門課的成績。函數(shù)fun的功能是將形參a所指結(jié)構(gòu)體變量s中的數(shù)據(jù)進(jìn)行修改,并把a中地址作為函數(shù)值返回主函數(shù),在主函數(shù)中輸出修改后的數(shù)據(jù)。第1處structstudent*fun(structstudent*a)第2處for(i=0;i<3;i++)a->score[i]+=l;第3處returna;2程序修改給定程序M0DI1.C中函數(shù)fun的功能是:從N個字符串中找出最長的那個串,并將其地址作為函數(shù)值返回。各字符串在主函數(shù)中輸入,并放入ー個字符串?dāng)?shù)組中。/*******found******/char*fun(char(*sq)[M]){inti;char*sp;sp=sq[0];for(i=0;i<N;i++)if(strlen(sp)<strlen(sq[i]))sp=sq[i];/*******found******/returnsp;函數(shù)fun的功能是:將a、b中的兩個兩位正整數(shù)合并形成一個新的整數(shù)放在c中。合并的方式是:將a中的十位和個位數(shù)依次放在變量c的百位和個位上,b中的十位和個位數(shù)依次放在變量c的十位和千位上。ttinclude<stdio.h>voidfun(inta,intb,long*c){*c=(b%10)*1000+(a/10)*100+(b/10)*10+a%10;第二十套!程序填空給定程序中,函數(shù)fun的功能是:計算形參x所指數(shù)組中N個數(shù)的平均值,(規(guī)定所有數(shù)均為正數(shù)),將所指桑罵槐數(shù)組中小于平均值的數(shù)據(jù)移至數(shù)據(jù)的前部,大于等于平均值的數(shù)據(jù)移至x決指數(shù)組的后部,平均值作為函數(shù)值返回,在主函數(shù)中輸出平均值和移動后的數(shù)據(jù)。第1處for(i=0;i<N;i++)av+=x[i]/N第2處y[j]=x[i];x[i]=T;j++;}第3處i++;2程序修改給定程序M0DH.C函數(shù)fun的功能是:統(tǒng)計字符串各元音字母(即:A、E、I、0、U)的個數(shù)。注意字母不分大、小寫。fun(char*s,intnum[5]){intk,i=5;for(k=O;kくi;k++)/*******found******/num[k]-0;for(;*s;s++){i=T;/*******found******/switch(*s){case'a':case'A':{i=0;break;}{case'e':case'E':{i=l;break;}{case'i':caseT:{i=2;break;}{case’〇':case'0':{i=3;break;}{case'u':case'U':{i=4;break;}}if(i>=0)num[i]++;)}3程序設(shè)計請編寫函數(shù)fun,函數(shù)的功能是求出二級數(shù)組周邊元素之和,作為函數(shù)值返回。二維數(shù)組中的值在主函數(shù)中賦予。intfun(inta[M][N])[inttot=0,i,j;for(i=0;i<N;i++)tot+=a[0][i];tot+=a[M-l][i];for(i=l;iくMT;i++){tot+=a[i][〇];tot+=a[i][NT];)returntot;1程序填空給定程序中,函數(shù)fun的功能是:計算形參x所指數(shù)組中N個數(shù)的平均值(規(guī)定所有數(shù)均為正數(shù)),將所指數(shù)組中大于平均值的數(shù)據(jù)移至數(shù)組的前部,小于等于平均值的數(shù)據(jù)移至x所指數(shù)組的后部,平均值作為函數(shù)值返回,在主函數(shù)中輸出平均值和移動后的數(shù)據(jù)。第1處av=s/N;第2處y[j++]=x[i];x[i]=-l;}第3處if(x[i]!=-1)y[j++]=x[i];2程序修改給定程序MODH.C的功能是:讀入一英文文本行,將其中每個單詞的第一個字母改成大寫,然后輸出此文本行(這里的“單詞”是指由空格隔開的字符串)/*******found******/#include<stdio.h>/*******found******/upfst(char*p){intk=0;for(;*p;p++)if(k){if(*p=='')k=0;}elseif(*p!=''){k=l;*p=toupper(*p);})3程序設(shè)計程序定義了NXN的二級數(shù)組,并在主函數(shù)中賦值,請編寫函數(shù)fun,函數(shù)的功能是:求出數(shù)組周邊元素的平均值并作出函數(shù)值返給主函數(shù)中的Sodoublefun(intw[][N]){inti,j,n=0;doublesum=0;for(i=0;i<N;i++){sum+=w[0][i]+w[N-l][i];n+=2;}for(i=l;iくN-1;i++){sum+=w[i][0]+w[i][N-1];n+=2;returnsum/n;!程序填空給定程序中,函數(shù)fun的功能是:將自然數(shù)1?10以及它們的平方根寫到名為myfile3.txt的文本文件中,然后再順序讀出顯示在屏幕上。第1處fprintf(fp,''%d%f\nz/,i,sqrt((double)i));第2處fclose(fp);第3處if((fp=fopen(fname,"r"))==NULL)2程序修改給定程序MODI1.C中fun函數(shù)的功能是:將n個無序整數(shù)從小到大排序。fun(intn,int*a){inti,j,p,t;for(j=0;j<n-l;j++){P=j;/*******found******/for(i=j+l;iくn;i++)if(a[p]>a[i])/*******found******/P二i;if(p!=j){t=a[j];a[j]=a[p];a[p]=t;}}}3程序設(shè)計函數(shù)fun的功能是:將兩個兩位數(shù)的正整數(shù)a、b合并形成一個整數(shù)放在c中。合并的方式是:將a數(shù)的十位和個位數(shù)依次放在c數(shù)的個位和百位上,b數(shù)的十位和個位數(shù)依次放在c數(shù)的十位和千位上。ttinclude<stdio.h>voidfun(inta,intb,long*c)*c=(b%10)*1000+(a%10)*100+(b/10)*10+(a/10);}第23套1程序填空給定程序中,函數(shù)fun的功能是:找出N*N矩陣中每列元素中的最大值,并按順序依次存放于形參b所指的ー維數(shù)組中。第1處b[i]=a[O][i];第2處if(b[i]<a[j][i])b[i]=a[j][i];第3處fun(x,y);2程序修改給定程序MODILC中fun函數(shù)的功能是:交換主函數(shù)中兩個變量的值。/*******found******/intfun(int*x,int*y){intt;/*******found******/t二*x;*x二?y;*y二t:}3程序設(shè)計編寫函數(shù)fun,函數(shù)的功能是求出小于或等于lim的所有素數(shù)并放在aa數(shù)組中,函數(shù)返回所求出的素數(shù)的個數(shù)。函數(shù)fun中給出的語句僅供參考。ttinclude<stdio.h>ttdefineMAX100intfun(intlim,intaa[MAX]){inti,j,k=0;for(i=2;iく=lim;i++)for(j=2;j〈=(i/2);j++)if(i%j==0)break;if(j>(i/2))aa[k++]=i;}returnk;}1程序填空程序通過定義學(xué)生結(jié)構(gòu)體變量,存儲了學(xué)生的學(xué)號、姓名和3門課的成績。函數(shù)fun的功能是將形參a中的數(shù)據(jù)進(jìn)行修改,把修改后的數(shù)據(jù)作為函數(shù)值返回主函數(shù)進(jìn)行輸出。第1處structstudentfun(structstudenta)第2處strcpy(,"LiSi);第3處a.score[i]+=l;2程序修改假定整數(shù)數(shù)列中的數(shù)不重復(fù),并存放在數(shù)組中。給定程序M0DH.C中函數(shù)fun的功能是:刪除數(shù)列中值為x的元素。N中存放的是數(shù)列中元素的個數(shù)。fun(int*a,intn,intx){intp=0,i;a[n]=x;while(x!=a[p])p=p+l;/*******found******/if(p==n)returnT'else{for(i=p;iくn;i++)/*******found******/a[i]=a[i+l];returnn-l;}}3程序設(shè)計學(xué)生的記錄由學(xué)號和成績組成。N名學(xué)生的數(shù)據(jù)已在主函數(shù)中放入結(jié)構(gòu)體數(shù)組s中,請編寫函數(shù)fun,它的功能是:把分?jǐn)?shù)最低的學(xué)生數(shù)據(jù)放在b所指的數(shù)組中,注意:分階段數(shù)最低的學(xué)生可能不止ー個,函數(shù)返回分?jǐn)?shù)最低的學(xué)生的人數(shù)。intfun(STREC*a,STREC*b)Iinti,,j-0,min=aEO].s;for(i=0;i〈N;i++){if(min>a[i].s){j=O;b[J++]=a[i];min=a[i].s;elseif(min-aLi],s)b[j++]=a[i];1return.j;!程序填空人員的記錄由編號和出生年、月、日組成,N名人員的數(shù)據(jù)已在主函數(shù)中存入結(jié)構(gòu)體數(shù)組std中,且編號唯一。函數(shù)fun的功能是:找出指定編號人員的數(shù)據(jù),作為函數(shù)值返回,由主函數(shù)輸出,若指定編號不存在,返回數(shù)據(jù)中編號為空串。第1處STUfun(STU*std,char*num)第2處if(strcmp(std[i].num,num)==O)第3處return(std[i]);2程序修改給定程序MODH.C中函數(shù)fun的功能是:從s所指字符串中,找出與t所指字符串相同的子串的個數(shù)作為函數(shù)值返回。intfun(char*s,char*t){intn;char*p,*r;n=0;while(*s){p=s;r=t;while(*r)if(*r==*p){/*******found******/r++:p++;}elsebreak;/*******found******/if(*r==0)n++;s++;}returnn;}3程序設(shè)計函數(shù)fun的功能是:將s所指字符串中ASCII值為偶數(shù)的字符刪除,串中剩余字符形成一個新串放在t所指的數(shù)組中。ttinclude<stdio.h>ttinclude<string.h>voidfun(char*s,chartロ)inti,j=0;for(i=0;iくstrlen(s);i++)if(s[i]%2)t[j++]=s[i];t[.j]=O;第26套!程序填空給定程序中已建立一個帶有頭結(jié)點的單向鏈表,鏈表中的各結(jié)點按數(shù)據(jù)域遞增有序連接。函數(shù)fun的功能是:刪除鏈表中數(shù)據(jù)域值相同的結(jié)點,使之只保留一個。第!處free(q);第2處q=pー>next;第3處q=q->next;2程序修改給定程序M0DI1.C中函數(shù)fun的功能是:用選擇法對數(shù)組中的n個元素按從小到大的順序進(jìn)行排序。voidfun(inta[],intn){inti,j,t,p;for(j=0;j<n-l;j++){/*******found******/P=j;for(i=j;i<n;i++)if(a[i]<a[pj)/*******found******/P=i;t=a[p];a[p]=a[j];a[j]=t;3程序設(shè)計請編寫ー個函數(shù)fun,它的功能是:求出1到m之間(含m)能被7或11整除的所有整數(shù)放在數(shù)組a中,通過n返回這些數(shù)的個數(shù)。voidfun(intm,int*a,int*n)inti;*n=0;for
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 收養(yǎng)家庭育兒心理健康服務(wù)體系建設(shè)路徑探索與實踐考核試卷
- 纖維原料對企業(yè)創(chuàng)新與創(chuàng)新能力的影響考核試卷
- 茶葉市場趨勢分析考核試卷
- 發(fā)射設(shè)備在廣播信號傳輸中的信號同步技術(shù)考核試卷
- 信托業(yè)務(wù)合同法律風(fēng)險與防范考核試卷
- 私募互聯(lián)網(wǎng)金融服務(wù)考核試卷
- 核子儀表在核設(shè)施輻射防護(hù)性能評估中的應(yīng)用考核試卷
- 火力發(fā)電廠能源管理與服務(wù)創(chuàng)新技術(shù)應(yīng)用考核與實踐卷考核試卷
- 綜合型公司股權(quán)分割方式優(yōu)化協(xié)議
- 網(wǎng)絡(luò)平臺內(nèi)容審核算法租賃及智能優(yōu)化服務(wù)合同
- 北京2025年中國環(huán)境監(jiān)測總站招聘(第二批)筆試歷年參考題庫附帶答案詳解
- 美國加征關(guān)稅從多個角度全方位解讀關(guān)稅課件
- “皖南八校”2024-2025學(xué)年高一第二學(xué)期期中考試-英語(譯林版)及答案
- 防洪防汛安全教育知識培訓(xùn)
- 2021年妊娠期血壓管理中國專家共識
- 一種基于STM32的智能門鎖系統(tǒng)的設(shè)計-畢業(yè)論文
- 預(yù)應(yīng)力張拉記錄四張表
- 豐田通商簡介r
- 六氟丙烯安全技術(shù)說明書MSDS
- 人體穴位與天體對應(yīng)解密
- 機(jī)械行業(yè)六個典型事故案例分享
評論
0/150
提交評論