2023年9月份計(jì)算機(jī)二級(jí)C語(yǔ)言上機(jī)題庫(kù)_第1頁(yè)
2023年9月份計(jì)算機(jī)二級(jí)C語(yǔ)言上機(jī)題庫(kù)_第2頁(yè)
2023年9月份計(jì)算機(jī)二級(jí)C語(yǔ)言上機(jī)題庫(kù)_第3頁(yè)
2023年9月份計(jì)算機(jī)二級(jí)C語(yǔ)言上機(jī)題庫(kù)_第4頁(yè)
2023年9月份計(jì)算機(jī)二級(jí)C語(yǔ)言上機(jī)題庫(kù)_第5頁(yè)
已閱讀5頁(yè),還剩114頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

第一套程序填空程序通過(guò)定義學(xué)生結(jié)構(gòu)體數(shù)組,存儲(chǔ)了若干個(gè)學(xué)生的學(xué)號(hào)、姓名和三門(mén)課的成績(jī)。函數(shù)fun的功能是將存放學(xué)生數(shù)據(jù)的結(jié)構(gòu)體數(shù)組,按照姓名的字典序(從小到大排序)。請(qǐng)?jiān)诔绦虻南聞澗€處填入對(duì)的的內(nèi)容并把下劃線刪除,使程序得出對(duì)的的結(jié)果。第一處structstudentt;第二處for(i=0;i<n-1;i++)第三處if(strcmp(a[i].name,a[j].name)>0)程序修改給定程序MODI1.C中函數(shù)fun的功能是:在p所指字符串中找出ASCII碼值最大的字符,將其放在第一個(gè)位置上;并將該字符前的原字符向上順序移動(dòng)。/**found**/q=p+i;/**found**/while(q>p)3程序設(shè)計(jì)學(xué)生的記錄由學(xué)號(hào)和成績(jī)組成,N名學(xué)生的數(shù)據(jù)已在主函數(shù)中放入結(jié)構(gòu)體數(shù)組s中,請(qǐng)編寫(xiě)了函數(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,intl,inth){inti,j=0;for(i=0;i<N;i++)if((a[i].s>=1&&a[i].s<=h)b[j++]=a[i];returnj;}第二套程序填空給定程序中已建立一個(gè)帶有頭結(jié)點(diǎn)的單向鏈表,鏈表中的各結(jié)點(diǎn)按數(shù)據(jù)域遞增有序連接。函數(shù)fun的功能是:刪除鏈表中數(shù)據(jù)域值相同的結(jié)點(diǎn),使之只保存一個(gè)。第一處free(q);第二處q=p->next;第三處q=q->next;2.程序修改給定程序MODI1.C中函數(shù)fun的功能是:用選擇法對(duì)數(shù)組中的n各元素按從小到大的順序進(jìn)行排序。/**found**/p=j;/**found**/p=i;3.程序設(shè)計(jì)請(qǐng)編寫(xiě)一個(gè)fun函數(shù),它的功能是:求出1到m之間(含m)能被7或11整除的所有整數(shù)放在數(shù)組a中,通過(guò)n返回這些數(shù)的個(gè)數(shù)。voidfun(intm,int*a,int*n){inti;*n=0;for(i=7;i<=m;i++)if((i%7==0)||(i%11==0))a[(*n)++]=i;}第三套1.程序填空函數(shù)fun的功能是:逆置數(shù)組元素是的值。例如:若a所指數(shù)組中的數(shù)據(jù)依次為:1、2、3、4、5、6、7、8、9,則逆置后依次為:9、8、7、6、5、4、3、2、1。形參n給出數(shù)組中數(shù)組中數(shù)據(jù)的個(gè)數(shù)。第一處for(i=0;i<n/2;i++)第二處a[i]=a[n-1-i];第三處a[n-i-1]=t;2程序修改給定程序MODI1.C中函數(shù)fun的功能是:將一個(gè)由八進(jìn)制數(shù)字字符串組成的字符串轉(zhuǎn)換為與其面值相等的十進(jìn)制整數(shù)。規(guī)定輸入的字符串最多只能包含5位八進(jìn)制數(shù)字字符。/**found**/n=*p-‘0’;/**found**/n=n*8+*p-‘0’;3.程序設(shè)計(jì)學(xué)生的記錄由學(xué)號(hào)和成績(jī)組成,N名學(xué)生的數(shù)據(jù)已在主函數(shù)中放入結(jié)構(gòu)體數(shù)組s中,請(qǐng)編寫(xiě)了函數(shù)fun,它的功能是:函數(shù)返回指定學(xué)號(hào)的學(xué)生數(shù)據(jù),指定的學(xué)生號(hào)在主函數(shù)中輸入,若沒(méi)有找到指定學(xué)號(hào),在結(jié)構(gòu)體變量中給學(xué)號(hào)置空串,給成績(jī)置-1,作為函數(shù)值返回。(用于字符串比較的函數(shù)是strcmp)。STRECfun(STREC*a,char*b){STRECc;Inti;c.num[0]=’\0’;c.s=-1;for(i=0;i<N;i++)if(strcmp(a[i].num,b)==0){strcpy(c.num,a[i].num);c.s=a[i].s;break;}returnc;}第四套程序填空給定程序中,函數(shù)fun的功能是:在帶有頭結(jié)點(diǎn)的單向鏈表中,查找數(shù)據(jù)域中值為ch的結(jié)點(diǎn)。找到后通過(guò)函數(shù)值返回該結(jié)點(diǎn)在鏈表中所處的順序號(hào):若不存在值為ch的結(jié)點(diǎn),函數(shù)值返回0.第一處while(p!=0)第二處if(p->data==ch)returnn;第三處k=fun(head,ch);2.程序修改給定程序MODI1.C中函數(shù)fun的功能是:刪除p所指字符串的所有空白字符(涉及制表符、回車符及換行符)。輸入字符串時(shí)用‘#’結(jié)束輸入。/**found**/for(i=0,t=0;p[i];i++)/**found**/c[t]=’\0’;3.程序設(shè)計(jì)請(qǐng)編寫(xiě)一個(gè)函數(shù)fun,將ss所指字符串中所有下標(biāo)為奇數(shù)位置上的字母轉(zhuǎn)換為大寫(xiě)(若該位置上不是字母,則不轉(zhuǎn)換)。voidfun(char*ss){inti;for(i=1;i<strlen(ss);i+=2){if(ss[i]>=’a’&&ss[i]<=’z’)ss[i]-=32;}}第五套1.程序填空給定程序中,函數(shù)fun的功能是:計(jì)算下式前n項(xiàng)的和作為函數(shù)值返回。例如:當(dāng)形參n的值為10的時(shí),函數(shù)返回:9.6125588。第一處s=0;第二處for(i=1;i<=n;i++)第三處s=s+(2.0*i-1)*(2.0*i+1)/(t*t);2.程序修改給定程序MODI1.C中函數(shù)fun的功能是:記錄substr所指字符串在str所指字符串中出現(xiàn)伯次數(shù)。/**found**/for(i=0;str[i];i++)/**found**/if(substr[k+1]==’\0’)3.程序設(shè)計(jì)請(qǐng)編寫(xiě)一個(gè)函數(shù)fun,它的功能是:根據(jù)以下公式求JI的值(規(guī)定滿足精度0.0005,即某項(xiàng)小于0.0005時(shí)停止送代):程序運(yùn)營(yíng)后,假如輸入精度為0.0005,則程序輸出為3.14…。doublefun(doubleeps){doubles=1,t=1./3;intn=1;while(t>=eps){s+=t;n++;t=t*n/(2.0*n+1);}return(s*2.0);}第六套1.程序填空給定程序中,函數(shù)fun的功能是:將形參s所指定字符串中所有的字母字符順序前移,其他字母順序后移,解決后字符串的首地址作為函數(shù)值返回。第一處t[j]=s[i];j++;第二處for(i=0;i<k;i++)t[j+i]=p[i];第三處t[j+k]=0;2.程序修改給定程序MODI1.C中函數(shù)fun的功能是:將s所指字符串中最后一次出現(xiàn)的與t1所指字符串相同的子串替換成t2所指定字符串,所形成的新串放在w所指的數(shù)組中。在此處,規(guī)定t1和t2所指字符串的長(zhǎng)度相同。/**found**/while(*w)/**found**/if(*r==*p)3.程序設(shè)計(jì)函數(shù)fun的功能是:將s所指字符串中ASCII值為奇數(shù)的字符刪除,串中剩余字符形成一個(gè)新串放在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[j]=0;}第七套程序填空程序通過(guò)定義學(xué)生結(jié)構(gòu)體變量,存儲(chǔ)了學(xué)生的學(xué)號(hào)、姓名和三門(mén)課的成績(jī)。函數(shù)fun的功能是將形參a所指結(jié)構(gòu)體變量s中的數(shù)據(jù)進(jìn)行修改,并把a(bǔ)中地址作為函數(shù)值返回主函數(shù),在主函數(shù)中輸出修改后的數(shù)據(jù)。第一處structstudent*fun(structstudent*a)第二處for(i=0;i<3;i++)a->score[i]+=1;第三處returna;2.程序修改給定程序MODI1.C中函數(shù)fun的功能是:從N個(gè)字符串中找出最長(zhǎng)的那個(gè)串,并將其地址作為函數(shù)值返回。各字符串在主函數(shù)中輸入,并放在一個(gè)字符串?dāng)?shù)組中。/**found**/char*fun(char(*sq)[M])/**found**/returnsp;3.程序設(shè)計(jì)函數(shù)fun的功能是:將a、b中的兩位正整數(shù)合并形成一個(gè)新的整數(shù)放在c中。合并的方式是:將a中的十位和個(gè)位依次放在變量c的百位和個(gè)位上,b中的十位和個(gè)位數(shù)依次放在變量c的十位和千位上。#include<stdio.h>voidfun(inta,intb,long*c){*c=(b%10)*1000+(a/10)*100+(b/10)*10+a%10;}第八套1.程序填空函數(shù)fun的功能是:將形參觀者工所指數(shù)組中的前半部分元素中的值和后半部分元素中的值對(duì)換。形參n中存放數(shù)組中數(shù)據(jù)的個(gè)數(shù),若n為奇書(shū),則中間元素不動(dòng)。第一處p=(n%2==0)?n/2:n/2+1;第二處a[i]=a[p+i];第三處a[p+i]=t;2.程序修改給定程序MODI1.C中函數(shù)fun的功能是:把主函數(shù)中輸入的三個(gè)數(shù),最大的放在a中,最小的放在c中,中間的放在b中。/**found**/floatk;/**found**/if(*a<*c)3.程序設(shè)計(jì)學(xué)生的記錄由學(xué)號(hào)和成績(jī)組成,N名學(xué)生的數(shù)據(jù)已在主函數(shù)中放入結(jié)構(gòu)體數(shù)組s中,請(qǐng)編寫(xiě)了函數(shù)fun,它的功能是:把分?jǐn)?shù)最高的學(xué)生數(shù)據(jù)放在b所指的數(shù)組中,注意:分?jǐn)?shù)最高的學(xué)生也許不止一個(gè),函數(shù)返回分?jǐn)?shù)最高的學(xué)生的人數(shù)。intfun(STREC*a,STREC*b){inti,max=a[0].s,n=0;for(i=1;i<N;i++)if(max<a[i].s)max=a[i].s;for(i=0;i<N;i++)if(max==a[i].s)b[n++]=a[i];returnn;}第九套1.程序填空給定程序中,函數(shù)fun的功能是:計(jì)算形參x所指數(shù)組中N個(gè)數(shù)的平均值,(規(guī)定所有數(shù)均為正數(shù)),將所指數(shù)組中小于平均值的數(shù)據(jù)移至數(shù)據(jù)的前部,大于等于平均數(shù)的移至x所指數(shù)組的后部,平均值作為函數(shù)值返回,在主函數(shù)中輸出平均值和移動(dòng)后的數(shù)據(jù)。第一處for(i=0;i<N;i++)av+=x[i]/N第二處y[j]=x[i];x[i]=-1;j++;}第三處i++;2.程序修改給定程序MODI1.C中函數(shù)fun的功能是:記錄字符串各元音字母(即:A、E、I、O、U)的個(gè)數(shù)。注意字母不分大小寫(xiě)。/**found**/num[k]=0;/**found**/switch(*s)3.程序設(shè)計(jì)請(qǐng)編寫(xiě)函數(shù)fun,函數(shù)的功能是:求出二級(jí)數(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-1][i];}for(i=1;i<M-1;i++){tot+=a[i][0];tot+=a[i][N-1];}returntot;}第十套程序填空程序通過(guò)定義學(xué)生結(jié)構(gòu)體變量,存儲(chǔ)了學(xué)生的學(xué)號(hào)、姓名和三門(mén)課的成績(jī)。函數(shù)fun的功能是將形參a中的數(shù)據(jù)進(jìn)行修改,把修改后的數(shù)據(jù)作為函數(shù)值返回主函數(shù)進(jìn)行輸出。第一處structstudentfun(structstudenta)第二處strcpy(,”LiSi”);第三處a.score[i]+=1;2程序修改假定整數(shù)數(shù)列中的數(shù)不反復(fù),并存放在數(shù)組中。給定程序MODI1.C中函數(shù)fun的功能是:刪除數(shù)列中值為x的元素。N中存放的是數(shù)列中元素的個(gè)數(shù)。/**found**/if(p==n)return-1’/**found**/a[i]=a[i+1];3.程序設(shè)計(jì)學(xué)生的記錄由學(xué)號(hào)和成績(jī)組成,N名學(xué)生的數(shù)據(jù)已在主函數(shù)中放入結(jié)構(gòu)體數(shù)組s中,請(qǐng)編寫(xiě)了函數(shù)fun,它的功能是:把分?jǐn)?shù)最低的學(xué)生數(shù)據(jù)放在b所指的數(shù)組中,注意:分?jǐn)?shù)最低的學(xué)生也許不止一個(gè),函數(shù)返回分?jǐn)?shù)最低的學(xué)生的人數(shù)。intfun(STREC*a,STREC*b){inti,j=0,min=a[0].s;for(i=0;i<N;i++){if(min>a[i].s){j=0;b[j++]=a[i];min=a[i].s;}elseif(min==a[i].s)b[j++]=a[i];}returnj;}第十一套1.程序填空給定程序中,函數(shù)fun的功能是:計(jì)算形參x所指數(shù)組中N個(gè)數(shù)的平均值,(規(guī)定所有數(shù)均為正數(shù)),將所指數(shù)組中大于平均值的數(shù)據(jù)移至數(shù)據(jù)的前部,小于等于平均數(shù)的移至x所指數(shù)組的后部,平均值作為函數(shù)值返回,在主函數(shù)中輸出平均值和移動(dòng)后的數(shù)據(jù)。第一處av=s/N;第二處y[j++]=x[i];x[i]=-1;}第三處if(x[i]!=-1)y[j++]=x[i];2.程序修改給定程序MODI1.C中函數(shù)fun的功能是:讀入一行英文文本行,將其中每個(gè)單詞的第一個(gè)字母改成大寫(xiě),然后輸出次文本行(這里的“單詞”是指由空格隔開(kāi)的字符串)。/**found**/#include<stdio.h>/**found**/upfst(char*p)3.程序設(shè)計(jì)程序定義了N×N的二級(jí)數(shù)組,并在主函數(shù)中賦值,請(qǐng)編寫(xiě)函數(shù)fun,函數(shù)的功能是:求出數(shù)組周邊元素的平均值并作出函數(shù)值飯給主函數(shù)中的s。doublefun(intw[][N]){inti,j,n=0;doublesum=0;for(i=0;i<N;i++){sum+=w[0][i]+w[N-1][i];n+=2;}for(i=1;i<N-1;i++){sum+=w[i][0]+w[i][N-1];n+=2;}returnsum/n;}第十二套1.程序填空給定程序中,函數(shù)fun的功能是:將自然數(shù)1—10以及它們的平方根寫(xiě)到名為myfile3.txt的文本文獻(xiàn)中,然后再順序讀出顯示在屏幕上。第一處fprintf(fp,”%d%f\n”,i,sqrt((double)i));第二處fclose(fp);第三處if((fp=fopen(fname,”r”))==NULL)2.程序修改給定程序MODI1.C中函數(shù)fun的功能是:將n個(gè)無(wú)序整數(shù)從小到大排序。/**found**/for(i=j+1;i<n;i++)/**found**/p=i;3.程序設(shè)計(jì)函數(shù)fun的功能是:將a、b中的兩位正整數(shù)合并形成一個(gè)新的整數(shù)放在c中。合并的方式是:將a中的十位和個(gè)位依次放在變量c的個(gè)位和百位上,b中的十位和個(gè)位數(shù)依次放在變量c的十位和千位上。#include<stdio.h>voidfun(inta,intb,long*c){*c=(b%10)*1000+(a%10)*100+(b/10)*10+(a/10);}第十三套1.程序填空給定程序中,函數(shù)fun的功能是:找出N*N矩陣中每列元素中的最大值,并按順序一次存放于形參b所指的一維數(shù)組中。第一處b[i]=a[0][i];第二處if(b[i]<a[j][i])b[i]=a[j][i];第三處fun(x,y);2.程序修改給定程序MODI1.C中函數(shù)fun的功能是:互換主函數(shù)中的兩個(gè)變量的值。/**found**/intfun(int*x,int*y)/**found**/t=*x;*x=*y;*y=t;3.程序設(shè)計(jì)編寫(xiě)函數(shù)fun,函數(shù)的功能是求出小于或等于lim的所有素?cái)?shù)并放在aa數(shù)組中,函數(shù)返回所求出的素?cái)?shù)的個(gè)數(shù)。函數(shù)fun中給出的語(yǔ)句僅供參考。#include<stdio.h>#defineMAX100intfun(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.程序填空函數(shù)fun的功能是進(jìn)行字母轉(zhuǎn)換。若形參ch中小寫(xiě)英文字母,則轉(zhuǎn)換成相應(yīng)的大寫(xiě)英文字母;若形參ch中是大寫(xiě)英文字母,則轉(zhuǎn)換成相應(yīng)的小寫(xiě)英文字母;并將轉(zhuǎn)換的結(jié)果作為函數(shù)值返回。第一處if((ch>=’a’)&&(ch<=’z’))第二處returnch+’a’-‘A’第三處returnch;2.程序修改給定程序MODI1.C中函數(shù)fun的功能是:給一維數(shù)組a輸入任意四個(gè)整數(shù)并按下列的規(guī)律輸出。例如輸出1、2、3、4,程序輸出一下方陣。123341223411234/**found**/voidfun(int*a)/**found**/a[j]=a[j-1];3.程序設(shè)計(jì)請(qǐng)編寫(xiě)函數(shù)fun,函數(shù)的功能是:計(jì)算并輸出給定整數(shù)n的所有因子(不包過(guò)1和n自身)之和。規(guī)定n的值不大于1000.intfun(intn){ints=0,i;for(i=2;i<n;i++)if(n%i==0)s+=i;returns;}第十五套1.程序填空給定程序中,函數(shù)的功能是:把形參s所指字符串下標(biāo)為奇數(shù)的字符右移到下一個(gè)奇書(shū)位置,最右邊唄移出字符串的字符繞回放到第一個(gè)奇數(shù)位置,下標(biāo)為偶數(shù)的字符不動(dòng)(注:字符串的長(zhǎng)度大于等于2)。例如,形參s所指的字符串為:abcdefgh,執(zhí)行結(jié)果為:ahcbedg。第一處if(n%2==0)k=n-1;第二處c=s[k];第三處s[1]=c;2.程序修改給定程序MODI1.C中函數(shù)fun的功能是:求s=aa…aa—…—aaa—aa—a(此處aa…aa表達(dá)n個(gè)a,a和n的值在1至9之間)。/**found**/longs=0,t=0;/**found**/t=t/10;3.程序設(shè)計(jì)請(qǐng)編寫(xiě)一個(gè)函數(shù)voidfun(char*tt,intpp[]),記錄在tt所指字符串中‘a(chǎn)’至‘z’26個(gè)小寫(xiě)字母各自出現(xiàn)在的次數(shù),并依次放在pp數(shù)組中。voidfun(char*tt,intpp[]){char*p=tt;inti;for(i=0;i<26;i++)pp[i]=0;while(*p){if(*p>=’a’&&*p<=’z’)pp[*p-‘a(chǎn)’]+=1;p++;}}第十六套1.程序填空人員的記錄由編號(hào)和出生年、月、日組成,N名人員的數(shù)據(jù)已在主函數(shù)中存入結(jié)構(gòu)體數(shù)組std中,且編號(hào)唯一。函數(shù)fun的功能是:找出指定編號(hào)人員數(shù)據(jù),作為函數(shù)值返回,由主函數(shù)輸出,若指定編號(hào)不存在,返回?cái)?shù)據(jù)中編號(hào)為空串。第1處STUfun(STU*std,char*num)第2處if(strcmp(std[i].num,num)==0)第3處return(std[i]);2.程序修改給定程序MODI1.C中函數(shù)fun的功能是:從s所指字符串中,找出與t所指字符串相同的子串的個(gè)數(shù)作為函數(shù)值返回。/**found**/r++;p++;/**found**/if(*r==0)3.程序設(shè)計(jì)函數(shù)fun的功能是:將s所指字符串中ASCII值為偶數(shù)的字符刪除,串中剩余字符形成一個(gè)新串放在t所指數(shù)組中。#include<stdio.h>#include<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]=0;}第十七套1.程序填空給定程序中,函數(shù)fun的功能是:記錄形參s所指字符串中數(shù)字字符出現(xiàn)的次數(shù),并存放在形參t所指的變量中,最后在主函數(shù)中輸出。例如,形參s所指的字符串為:abcdef35adgh3kjsdf7。輸出結(jié)果為:4。第1處for(i=0;s[i]!=NULL;i++)第2處if(s[i]>=’0’&&s[i]<=’9’)n++;第3處*t=n;2.程序修改給定程序MODI1.C中函數(shù)fun的功能是:通過(guò)某種方式實(shí)現(xiàn)兩個(gè)變量的互換,規(guī)定不允許增長(zhǎng)語(yǔ)句和表達(dá)式。例如變量a中的值原為8,b中的值原為3,程序運(yùn)營(yíng)后a中值為3,b中的值為8./**found**/t=*x;*x=y;/**found**/return(t);3.程序設(shè)計(jì)請(qǐng)編寫(xiě)函數(shù)fun,函數(shù)的功能是:求出1到1000之間能被7或11整除,但不能同時(shí)被7和11整除的所有整數(shù)并將它們放在a所指的數(shù)組中,通過(guò)n返回這些數(shù)的個(gè)數(shù)。#include<stdio.h>viodfun(int*a,int*n){inti;*n=0;for(i=7;i<1000;i++)if(((i%7)==0││(i%11)==0&&(i%77)!=0)a[(*n)++]=i;}第十八套1.程序填空給定程序中,函數(shù)fun的功能是:有N×N矩陣,根據(jù)給定的m(m<=n)值,將每行元素中的值均右移m個(gè)位置,左邊值為0.第1處for(i=0;i<N;i++)第2處t[i][j+m]=t[i][j];第3處for(j=0;j<m;j++)2.程序修改給定程序MODI1.C中函數(shù)fun的功能是:計(jì)算并輸出high以內(nèi)最大的10個(gè)素?cái)?shù)之和。high的值由主函數(shù)傳給fun函數(shù)。/**found**/while((2<=high)&&(n<10))/**found**/yes=0;break;3.程序設(shè)計(jì)請(qǐng)編寫(xiě)函數(shù)fun,函數(shù)的功能是:運(yùn)用一下所示的簡(jiǎn)樸迭代方法求方程求方程:cos(x)-x=0的一個(gè)實(shí)根。xn+1=cos(xn)迭代環(huán)節(jié)如下:(1)取x1的初值為0.0;(2)x0=x1,把x1的值賦給x0;(3)x1=cos(x0),求出一個(gè)新的x1;(4)若x0-x1的絕對(duì)值小于0.000001執(zhí)行環(huán)節(jié)(5)否則執(zhí)行環(huán)節(jié)(2);(5)所求x1就是方程cos(x)-x=0的一個(gè)實(shí)根作為函數(shù)值返回。程序?qū)⑤敵鼋Y(jié)果為:Root=0.739058。floatfun(){floatx0,x1=0.0;do{x0=x1;x1=cos(x0);}while(fabs(x0-x1)>0.000001);returnx1;}第十九套1.程序填空給定程序中,函數(shù)fun的功能是:將a所指的3×5矩陣中第k列的元素左移到第0列,第k列以后的每列元素行依次左移,本來(lái)左邊的各列依次繞到右邊。第1處for(p=1;p<=k;p++)第2處for(j=0;j<N-1;j++)a[i][j]=a[i][j+1];第3處a[i][N-1]=temp;2.程序修改給定程序MODI1.C中函數(shù)fun的功能是:根據(jù)形參m的值(2<=m<=9),在m行m列的二維數(shù)組中存放如下所示規(guī)律的數(shù)據(jù),由main函數(shù)輸出。例如,若輸入2則輸出:24/**found**/fun(inta[][M],intm)/**found**/a[j][k]=(k+1)*(j+1);3.程序設(shè)計(jì)函數(shù)fun的功能是:將a、b中的兩位正整數(shù)合并形成一個(gè)新的整數(shù)放在c中。合并的方式是:將a中的十位和個(gè)位依次放在變量c的十位和千位上,b中的十位和個(gè)位數(shù)依次放在變量c的個(gè)位和百位上。voidfun(inta,intb,int*c){*c=(a%10)*1000+(b%10)*100+(a/10)*10+(b/10);}第二十套1.程序填空給定程序中,函數(shù)fun的功能是:對(duì)形參s所指字符串中下標(biāo)為奇數(shù)的字符ASCII碼大小遞增排序,并將排序后的下標(biāo)為奇數(shù)的字符取出,形成一個(gè)新串。第1處t=i;第2處for(j=i+2;j<n;j=j+2)第3處p[j]=0;2.程序修改給定程序MODI1.C中函數(shù)fun的功能是:用下面的公式求π的近似值,知道最后一項(xiàng)的近似值小于指定數(shù)(參數(shù)num)為止:例如程序0.0001,則程序輸出3.1414。/**found**/while((fabs(t))>=num)/**found**/t=s/n3.程序設(shè)計(jì)請(qǐng)編寫(xiě)一個(gè)函數(shù)voidfun(chara[],charb[],intn),其功能是:刪除一個(gè)字符串指定下標(biāo)的字符。其中,a指向原字符串,刪除指定字符后的字符串放在b所指的n中存入指定的下標(biāo)。viodfun(chara[],charb[],intn){strncpy(b,a,n);b[n]=0;strcat(b,a+n+1);}第二十一套1.程序填空給定程序中,函數(shù)fun的功能是:在形參ss所指字符串?dāng)?shù)組中,將所有串長(zhǎng)超過(guò)k的字符串右邊的字符刪去,只保存左邊的k個(gè)字符。ss所指字符串?dāng)?shù)組中共有N個(gè)字符串,且串小于M。第一處voidfun(char(*ss)[M],intk)第二處while(i<N){第三處ss[i][k]=0;i++;}2.程序修改給定程序MODI1.C中函數(shù)fun的功能是:根據(jù)以下公式求π值,并作為函數(shù)值返回。例如,給指定精度的變量eps輸入0.0005時(shí),應(yīng)當(dāng)輸出Pi=30140578.。/**found**/t=1;/**found**/return(2*s);3.程序設(shè)計(jì)假定輸入字符串中只包含字母和*號(hào)。請(qǐng)編寫(xiě)函數(shù)fun,它的功能是:將字符串的前導(dǎo)*號(hào)不得多于n個(gè);若多于n個(gè),則刪除多余的*號(hào);若少于或等于n個(gè),則什么也不做,字符串中間和尾部的*號(hào)不刪除。函數(shù)fun中給出的語(yǔ)句僅供參考。voidfun(char*a,intn){inti=0,k=0;while(a[k]==’*’)k++;if(k>n){i=n;j=k;for(;a[j]!=0;j++)a[i++]=a[j];a[i]=0;}}第二十二套1.程序填空給定程序中,函數(shù)fun的功能是:a所指4×3矩陣中第k行的元素與第0行元素互換。例如:有下列矩陣23456789101112若k為2,程序執(zhí)行結(jié)果為789456123101112第一處voidfun(int(*a)[N],intk)第二處for(i=0;i<N;i++)第三處a[0][i]=a[k][i];2.程序修改給定程序MODI1.C中函數(shù)fun的功能是:讀入一個(gè)字符串(長(zhǎng)度<20),將該字符串中的所有字符串按ASCII碼升序排序后輸出。例如,若輸入edcba,則應(yīng)輸出:abcde。/**found**/for(i=strlen(t)-1;i;i--)/**found**/if(t[j]>t[j+1])3.程序設(shè)計(jì)請(qǐng)編寫(xiě)函數(shù)fun,函數(shù)的功能是:將ss所指字符串中所有下標(biāo)為奇數(shù)位置上的字母轉(zhuǎn)換為大寫(xiě)(若該位置上不是字母,則不轉(zhuǎn)換)。voidfun(char*ss){char*p=ss;inri=0;while(*p){if((i%2)&&(*p>=’a’&&*p<=’z’))*p-=32;p++;i++;}}第二十三套1.程序填空給定程序的功能是:調(diào)用函數(shù)fun將指定源文獻(xiàn)中的內(nèi)容復(fù)制到指定的目的文獻(xiàn)中,復(fù)制成功時(shí)函數(shù)的返回值是1,失敗是返回值是0.在復(fù)制的過(guò)程中,把復(fù)制的內(nèi)容輸出到終端屏幕。主函數(shù)源文獻(xiàn)名放在變量sfname中,目的文獻(xiàn)放在變量tfname中。第一處if((fs=fopen(source,”r”))==NULL)第二處while(!feof(fs))第三處fputc(ch,ft);2.程序修改給定程序MODI1.C中函數(shù)fun的功能是:將長(zhǎng)整型中每一位上為偶數(shù)的數(shù)依次取出,構(gòu)成一個(gè)新數(shù)放在t中。高位仍在高位,低位仍在低位。/**found**/if(d%2==0)/**found**/s/=10;3.程序設(shè)計(jì)函數(shù)fun的功能是:將兩位正整數(shù)a、b合并形成一個(gè)新的整數(shù)放在c中。合并的方式是:將a中的十位和個(gè)位依次放在變量c的十位和千位上,b中的十位和個(gè)位數(shù)依次放在變量c的百位和個(gè)位上。voidfun(inta,intb,long*c){*c=(a%10)*1000+(b/10)*100+(a/10)*10+(b%10);第二十四套程序填空程序通過(guò)定義學(xué)生結(jié)構(gòu)體變量,存儲(chǔ)了學(xué)生的學(xué)號(hào)、姓名和三門(mén)課的成績(jī)。函數(shù)fun的功能是將形參a所指結(jié)構(gòu)體變量中的數(shù)據(jù)賦給函數(shù)中的結(jié)構(gòu)體變量b,并修改b中的學(xué)號(hào)和姓名,最后輸出修改后的數(shù)據(jù)。第一處b=a;第二處strcpy(,”LiSi”)第三處for(i=0;i<3;i++)printf(“%6.2f”,b.score[i]);2.程序修改給定程序MODI1.C中函數(shù)fun的功能是:從s所指字符串中刪除所有小寫(xiě)字母c。請(qǐng)改正程序中的錯(cuò)誤,使它能計(jì)算出對(duì)的的結(jié)果。/**found**/s[j++]=s[i];/**found**/s[j]=’\0’;3.程序設(shè)計(jì)假定輸入的字符串中只包含字母和*號(hào)。請(qǐng)編寫(xiě)函數(shù)fun,它的功能是:將字符串的前導(dǎo)*號(hào)所有移到字符串的尾部。函數(shù)fun中給出的函數(shù)僅供參考。voidfun(char*a){char*p,*q;intn=0;p=a;while(*p==’*’){n++;p++;}q=a;while(*p){*q=*p;p++;q++;}for(;n>0;n--)*q++=’*’;*q=’\0’;}第二十五套1.程序填空用篩選法可得到2—n(n<10000)之間的所有素?cái)?shù),方法是:一方面從素?cái)?shù)2開(kāi)始,將所有2的倍數(shù)的數(shù)從數(shù)表中刪去(把數(shù)表中相應(yīng)位置的值置成0);接著從數(shù)表中找下一個(gè)非0數(shù),并從數(shù)表中刪去該數(shù)的所有倍數(shù),依此類推,直到所找的下一個(gè)數(shù)等于n為止。這樣會(huì)得到一個(gè)序列:2、3、5、7、11、13、17、19、23……函數(shù)fun用篩選法找出所有小于等于n的素?cái)?shù),并記錄素?cái)?shù)的個(gè)數(shù)作為函數(shù)值返回。第一處for(j=a[i]*2;j<=n;j+=a[i])第二處while(a[i]==0)第三處if(a[i]!=0)2.程序修改給定程序MODI1.C中函數(shù)fun的功能是:為一個(gè)偶數(shù)尋找兩個(gè)素?cái)?shù),這兩個(gè)素?cái)?shù)之和等于該偶數(shù),并將這兩個(gè)素?cái)?shù)通過(guò)形參指針傳回主函數(shù)。/**found**/y=1;/**foune**/d=a-i;3.程序設(shè)計(jì)請(qǐng)編寫(xiě)函數(shù)fun,它的功能是:計(jì)算并輸出n(涉及n)以內(nèi)能被5或9整除的所有自然數(shù)的倒數(shù)之和。doublefun(intn){inti;doublesum=0.0;for(i=1;i<n;i++)if(i%5==0||i%9==0)sum+=1.0/i;returnsum;}第二十六套1.程序填空給定程序中,函數(shù)fun的功能是建立一個(gè)N×N的矩陣。矩陣元素的構(gòu)成規(guī)律是:最外層元素的值所有是1;從外向內(nèi)第二層元素的值所有為2;第三層元素的值所有是3,…依此類推。第一處voidfun(int(*a)[N])第二處for(j=i;j<N-i;j++)第二處a[k][i]=a[k][N-i-1]=i+1;2.程序修改給定程序MODI1.C中函數(shù)fun的功能是:將十進(jìn)制正整數(shù)m轉(zhuǎn)換成k(2<=k<=9)進(jìn)制數(shù),并按高位到低位順序輸出。/**found**/aa[i]=m%k;/**found**/printf(“%d”,aa[i-1]);3.程序設(shè)計(jì)編寫(xiě)一個(gè)函數(shù),從num個(gè)字符串中找出最長(zhǎng)的一個(gè)字符串,并通過(guò)形參指針max傳回該串地址。(注意:主函數(shù)中用****作為結(jié)束輸入的標(biāo)志,函數(shù)fun中給出的語(yǔ)句僅供參考)。fun(char(*a)[81],intnum,char**max){inti,k=0,maxlen;maxlen=strlen(a[k]);for(i=1;i<num;i++){if(strlen(a[i])>maxlen){maxlen=strlen(a[i]);k=i;}}*max=a[k];}第二十七套1.程序填空函數(shù)fun的功能是計(jì)算f(x)=1+x-2/2!+3/3!-4/4!+……的前n項(xiàng)和。若x=2.5,n=15時(shí),函數(shù)值為1.917914。第一處f=1;第二處t*=(-1)*x/i;第三處f+=t;2.程序修改給定程序MODI1.C中函數(shù)fun的功能是:從三個(gè)紅球,5個(gè)白球,6個(gè)黑球中任意取出8個(gè)作為一組,進(jìn)行輸出。在沒(méi)組中,可以沒(méi)有黑球,但必須要有紅球和白球。組合數(shù)作為函數(shù)值返回。對(duì)的的組合數(shù)應(yīng)當(dāng)是15.程序中i的值代表紅球數(shù),j代表白球數(shù),k代表黑球數(shù)。/**found**/for(i=1;i<=3;i++)/**found**/if(k>=0&&k<=6)3.程序設(shè)計(jì)請(qǐng)編寫(xiě)函數(shù)fun,它的功能是:計(jì)算并輸出下列多項(xiàng)式的值:sn=1+1/1!+1/2!+1/3!+1/4!+……1/n!。例如:在主函數(shù)中從鍵盤(pán)給n輸入15,則輸出為:s=2.718282。注意:規(guī)定n的值大于1但不大于100。doublefun(intn){doubles=1’longt=1;inti;for(i=1;i<=n;i++){t=t*i;s+=1.0/t;}returns;}第二十八套1.程序填空給定程序中,函數(shù)fun的功能是:計(jì)算N*N矩陣的主對(duì)角線元素和方向?qū)蔷€元素之和,并作為函數(shù)值返回。注意:規(guī)定先累加主對(duì)角線元素中的值,然后累加反響對(duì)角線元素的值。第一處sum=0;第二處sum+=t[i][i];第三處sum+=t[i][n-i-1];2.程序修改給定程序MODI1.C中函數(shù)fun和funx的功能是:用二分法求方程2x3-4x2+3x-6=0的一個(gè)根,并規(guī)定絕對(duì)誤差不超過(guò)0.001。/**found**/doubler;/**found**/while(fabs(n-m)>0.001)3.程序設(shè)計(jì)假定輸入的字符串中只包含字母和*號(hào)。請(qǐng)編寫(xiě)函數(shù)fun,它的功能是:除了字符串前導(dǎo)和尾部的*號(hào)之外,將串中其他*號(hào)所有刪除。形參h已指向字符串中的第一個(gè)字母,形參p已指向字符串中最后一個(gè)字母。在編寫(xiě)函數(shù)時(shí),不得使用c語(yǔ)言提供的字符串函數(shù)。voidfun(char*a,char*h,char*p){intj=0;char*q=a;while(*q&&q<h)a[j++]=*q++;while(*h&&*p&&h<p){if(*h!=’*’)a[j++]=*h;h++;}while(*p)a[j++]=*p++;a[j]=0;}第二十九套1.程序填空給定程序中,函數(shù)fun的功能是:有N*N矩陣,將矩陣的外圍元素順時(shí)針旋轉(zhuǎn)。操作的順序是:一方面將第一行元素的值存入臨時(shí)數(shù)組r,然后使第一列成為第一行,最后一行成為第一列,最后一列成為第一行,臨時(shí)數(shù)組中和元素成為最后一列。第一處t[0][N-j-1]=t[j][0];第二處for(j=N-1;j>=0;j--)第三處t[j][N-1]=r[j];2.程序修改給定程序MODI1.C中函數(shù)fun的功能是:計(jì)算s=f(-n)+f(-n+1)+……+f(0)+f(1)+f(2)+……f(n)的值。例如,當(dāng)n為5時(shí),函數(shù)值應(yīng)當(dāng)是:10.407143。/**found**/doublef(doublex)/**found**/returns;3.程序設(shè)計(jì)編寫(xiě)一個(gè)函數(shù)fun,它的功能是計(jì)算:s=根號(hào)下(ln(1)+ln(2)+ln(3)+……ln(m))S作為函數(shù)返回,在C語(yǔ)言中可以調(diào)用log(n)求ln(n)。log函數(shù)引用說(shuō)明是:Doublelog(doublex)例如,若m的值為:20,fun函數(shù)值為:60506583。doublefun(intm){doubles=0.0;inti;for(i=0;i<=m;i++)s+=log(1.0*i);s=sqrt(s);returns;}第三十套1.程序填空函數(shù)fun的功能是:反形參a所指數(shù)組中的奇數(shù)按原順序依次存放到a[0]、a[1]、a[2]……中,把偶數(shù)從數(shù)組中刪除,奇數(shù)個(gè)數(shù)通過(guò)函數(shù)值返回。例如:若a所指數(shù)組中的數(shù)據(jù)最初排列為:9、1、4、2、3、6、5、8、7,刪除偶數(shù)后a所指數(shù)組中的數(shù)據(jù)為:9、1、3、5、7,返回值為5。第一處if(a[i]%2==1)第二處j++;第三處returnj;2.程序修改給定程序MODI1.C中函數(shù)fun的功能是:求出兩個(gè)非零正整數(shù)的最大公約數(shù),并作為函數(shù)值返回。/**found**/t=a;a=b;b=t;/**found**/return(b);3.程序設(shè)計(jì)假定輸入的字符串中只包含字母和*號(hào)。請(qǐng)編寫(xiě)函數(shù)fun,它的功能是:刪除字符串中所有的*號(hào)。在編寫(xiě)函數(shù)時(shí),不得使用C語(yǔ)言提供的字符串函數(shù)。voidfun(char*a){intj=0;char*p=a;while(*p){if(*p!=’*’)a[j++]=*p;p++;}a[j]=0;}第三十一套1.程序填空給定程序中,函數(shù)fun的功能是:在形參ss所指字符串?dāng)?shù)組中,刪除所有串長(zhǎng)超過(guò)k的字符串,函數(shù)返回所剩字符串的個(gè)數(shù)。Ss所指字符串?dāng)?shù)組中共有N個(gè)字符串,且串長(zhǎng)小于M。第一處for(i=0;i<N;i++)第二處if(len<=k)第三處strcpy(ss[j++],ss[i]);2.程序修改給定程序MODI1.C中函數(shù)fun的功能是:逐個(gè)比較p、q所指兩個(gè)字符串相應(yīng)位置中的字符,把ASCII值或相等的字符依次存放在c所指數(shù)組中,形成一個(gè)新的字符串。/**found**/intk=0;/**found**/while(*p||*q)3.程序設(shè)計(jì)假定輸入的字符串中只包含字母和*號(hào)。請(qǐng)編寫(xiě)函數(shù)fun,它的功能是:除了字符串前導(dǎo)*號(hào)之外,將串中其它*號(hào)所有刪除。在編寫(xiě)函數(shù)時(shí),不得使用C語(yǔ)言提供的字符串函數(shù)。函數(shù)fun中給出的語(yǔ)句僅供參考。voidfun(char*a){inti=0,k;while(a[i]!==’*’)i++;k=i;while(a[i]!=’\0’){if(a[i]!=’*’)a[k++]=a[i];i++;}a[k]=’\0’;}第三十二套1.程序填空給定程序中已建立一個(gè)帶頭結(jié)點(diǎn)的單向鏈表,鏈表中的各結(jié)點(diǎn)按結(jié)點(diǎn)數(shù)據(jù)域中的數(shù)據(jù)遞增有序鏈接。函數(shù)fun的功能是:把形參x的值放入一個(gè)新結(jié)點(diǎn)并插入到鏈表中,插入后各結(jié)點(diǎn)數(shù)據(jù)域的值仍保持遞增有序。第一處s->data=x;第二處q=p;第三處q->next=s;2.程序修改給定程序MODI1.C中函數(shù)fun的功能是:計(jì)算正整數(shù)num的各位上的數(shù)字之積。/**found**/longk=1;/**found**/num/=103.程序設(shè)計(jì)請(qǐng)編寫(xiě)函數(shù)fun,它的功能是:計(jì)算n門(mén)課程的平均分,計(jì)算結(jié)果作為函數(shù)返回。floatfun(float*a,intn){inti;floatave=0.0;for(i=0;i<n;i++)ave=ave+a[i];ave=ave/n;returnave;}第三十三套1.程序填空給定程序中,函數(shù)fun的功能是:在形參ss所指字符串?dāng)?shù)組中,查找具有形參substr所指子串的所有字符串并輸出,若沒(méi)找到輸出相應(yīng)信息。Ss所指字符串?dāng)?shù)組中共有N個(gè)字符,且串長(zhǎng)小于M。程序中庫(kù)函數(shù)strstr(s1、s2)的功能是早s1串中查找s2子串,若沒(méi)有,函數(shù)值為0,若有,為非0。第一處for(i=0;i<N;i++)第二處if(strstr(ss[i],substr)!=NULL)第三處if(find==0)2.程序修改給定程序MODI1.C中函數(shù)fun的功能是:求三個(gè)數(shù)的最小公倍數(shù)。/**found**/fun(intx,inty,intz)/**found**/returnj;3.程序設(shè)計(jì)假定輸入的字符串中只包含字母和*號(hào)。請(qǐng)編寫(xiě)函數(shù)fun,它的功能是:只刪除字符串前導(dǎo)和尾部的*號(hào),串中字母之間的*號(hào)都不刪除。形參n給出了字符串的長(zhǎng)度,形參h給出了字符串中前導(dǎo)*號(hào)的個(gè)數(shù)。在編寫(xiě)函數(shù)時(shí),不得使用C語(yǔ)言提供的字符串函數(shù)。voidfun(char*a,intn,inth,inte){char*p=a;intj=0,len=0;while(*p){p++;len++;}while(j<len-h-e){a[j]=a[h+j];j++;}a[j]=0;}第三十四套1.程序填空給定程序中,函數(shù)fun的功能是:在形參ss所指字符串?dāng)?shù)組中查找與形參t所指字符串相同的串,找到后返回該串在字符串中的位置(下標(biāo)值),未找到則返回-1。ss所指字符串?dāng)?shù)組中共有N個(gè)內(nèi)容不同的字符串,且串長(zhǎng)小于M。第一處for(i=0;i<N;i++)第二處if(strcmpss[i],t)==0returni;第三處if(n==-1)printf(“\nDon’tfound!\n”);2.程序修改給定程序MODI1.C中函數(shù)fun的功能是:從整數(shù)1到55之間,選出能被3整除、且有一位上的數(shù)是5的那些事,并且把這些數(shù)放在b所指的數(shù)組中,這些數(shù)作為函數(shù)值返回。規(guī)定,函數(shù)中a1放個(gè)位數(shù),a2放十位數(shù)。/**found**/a2=k/10;/**found**/returni;3.程序設(shè)計(jì)假定輸入的字符串中只包含字母和*號(hào)。請(qǐng)編寫(xiě)函數(shù)fun,它的功能是:將字符串尾部的*號(hào)所有刪除,前面和中間的*號(hào)不刪除。voidfun(char*a){char*p=a;while(*p)p++;p--;while(*p==’*’)p--;p++;*p=0;}第三十五套1.程序填空給定程序中,函數(shù)fun的功能是:記錄出帶有頭結(jié)點(diǎn)的單向鏈表中結(jié)點(diǎn)的個(gè)數(shù),存放在形參n所指的存儲(chǔ)單元中。第一處*n=0;第二處p=p->next;第三處fun(head,&num);2.程序修改給定程序MODI1.C中函數(shù)fun的功能是:求出s所指字符串最后一次出現(xiàn)的t所指字符串的地址,通過(guò)函數(shù)值返回,在主函數(shù)中輸出從此地址開(kāi)始的字符串;若未找到,則函數(shù)值NULL。/**found**/a=NULL;/**found**/if(*r==*p)3.程序設(shè)計(jì)函數(shù)fun的功能是:將s所指字符串中除了下標(biāo)為偶數(shù),同時(shí)ASCII指也為偶數(shù)的字符外,其余的所有都刪除:串中剩余字符所形成的一個(gè)新串放在t所指的數(shù)組中。voidfun(char*s,chart[]){inti,j=0;for(i=0;i<strlen(s);i+=2)if(s[i]%2==0)t[j++]=s[i];t[j]=0;}第三十六套1.程序填空函數(shù)fun的功能是:進(jìn)行數(shù)字字符轉(zhuǎn)換。若形參ch中是數(shù)字字符‘0’—‘9’,則‘0’轉(zhuǎn)換成‘9’,‘1’轉(zhuǎn)換成‘8’,‘2’轉(zhuǎn)換成‘7’,……‘9’轉(zhuǎn)換成‘0’;若是其他字符則保持不變,并將轉(zhuǎn)換后的結(jié)果做函數(shù)值返回。第一處charfun(charch)第二處if(ch>=’0’&&ch<=’9’)第三處return‘9’-(ch-‘0’);2.程序修改給定程序MODI1.C中函數(shù)fun的功能是:將p所指字符串中所有字符復(fù)制到b中,規(guī)定復(fù)制第三個(gè)字符之后插入一個(gè)空格。/**found**/b[k]=*p;/**found**/b[k++]=’‘;3.程序設(shè)計(jì)N名學(xué)生的成績(jī)已在主函數(shù)中放入一個(gè)帶頭結(jié)點(diǎn)的鏈表結(jié)構(gòu)中,h指向鏈表的頭結(jié)點(diǎn)。請(qǐng)編寫(xiě)函數(shù)fun,它的功能是:求出平均分,有函數(shù)值返回。doublefun(STREC*h){STREC*p=h->next;doubleav=0.0;intn=o;while(p!=NULL){av=av+p->s;p=p->next;n++;}av/=n;returnav;}第三十七套1.程序填空函數(shù)fun的功能是:把形參a所指數(shù)組中的偶數(shù)按原順序依次存放a[0]、a[1]、a[2]……中,把奇數(shù)從數(shù)組中刪除,偶數(shù)個(gè)數(shù)通過(guò)函數(shù)值返回。第一處if(a[i]%2==0){第二處a[j]=a[i];j++;第三處returnj;2.程序修改給定程序MODI1.C中函數(shù)fun的功能是:按以下遞推公式求函數(shù)值。例如,當(dāng)給n輸出5時(shí),函數(shù)值為18;當(dāng)給n輸入3時(shí),函數(shù)值為14./**found**/fun(intn)/**found**/if(n==1)3.程序設(shè)計(jì)假定輸入的字符串中只包含字母和*號(hào)。請(qǐng)編寫(xiě)函數(shù)fun,它的功能是:使字符串中尾部的*號(hào)不得多于n個(gè);若多于n個(gè)則刪除多余的*號(hào);若少于或等于n個(gè),則什么也不做,字符串中間和前面的*號(hào)不刪除。voidfun(char*a,intn){char*p=a;intj=0;while(*p)p++;p--;while(*p==’*’)p--;p++;while(j<n&&*p){p++;j++;}*p=0;}第三十八套1.程序填空給定程序中,函數(shù)fun的功能是:運(yùn)用指針數(shù)組對(duì)形參ss所指字符串?dāng)?shù)組中的字符串按由長(zhǎng)到短的順序排列,并輸入排序結(jié)果。ss所指定字符串?dāng)?shù)組中共有N個(gè)字符串,且串長(zhǎng)小于M。第一處k=i第二if(strlen(ps[k])<strlen(ps[j]))k=j;第三處tp=ps[i];ps[i]=ps[k];ps[k]=tp;2.程序修改已知一個(gè)數(shù)列從第0項(xiàng)開(kāi)始的前三項(xiàng)分別是0、0、1以后的各項(xiàng)都是它相鄰的前三項(xiàng)之和。給定程序MODI1.C中函數(shù)fun的功能是:計(jì)算并輸出該數(shù)列前n項(xiàng)的平方根之和。n的值通過(guò)形參傳入。/**found**/doublefun(intn)/**found**/returnsum;3.程序設(shè)計(jì)請(qǐng)編寫(xiě)函數(shù)fun,它的功能是:計(jì)算下列級(jí)數(shù)和,和值由函數(shù)值返回。例如,當(dāng)n=10,x=0.3時(shí),函數(shù)值為1.349859。doublefun(doublex,intn){doubles=1.0,y=x;inti;for(i=1;i<=n;i++){s+=y/(double)jc(i);y*=x;}returns;}第三十九套1.程序填空給定程序中,函數(shù)fun的功能是:計(jì)算x所指數(shù)組中N個(gè)數(shù)的平均值(規(guī)定所有數(shù)均為正數(shù)),平均值通過(guò)形參返回主函數(shù),將小于平均值且最接近平均值的數(shù)作為函數(shù)值返回,在主函數(shù)中輸出。第一處*av=s/N;第二處d=*av-x[i];j=i;}第三處returnx[j];2.程序修改給定程序MODI1.C中函數(shù)fun的功能是:根據(jù)整型形參n計(jì)算如下公式的值。例如:若n=10,則應(yīng)輸出:0.617977./**found**/floatfun(intn)/**found**/for(i=2;i<=n;i++)3.程序設(shè)計(jì)程序定義了N×N的二維數(shù)組,并在主函數(shù)中自動(dòng)賦值,請(qǐng)編寫(xiě)函數(shù)fun,它的功能是:使數(shù)組右上三角元素中的值乘以fun(inta[][N],intm){inti,j;for(i=0;i<N;i++)for(j=i;j<N;j++)a[i][j]*=m;}第四十套1.程序填空給定程序中,函數(shù)fun的功能是:將s所指字符串所有數(shù)字字符移到所有非數(shù)字字符之后,并保持?jǐn)?shù)字字符串和非數(shù)字字符串原有的先后順序。第一處j++;第二處s[i]=t1[i];第三處for(i=0;i<j;i++)2.程序修改給定程序MODI1.C中函數(shù)fun的功能是:用冒泡法對(duì)6個(gè)字符串按由小到大的順序排列。/**found**/for(j=i+1;j<6;j++)/**found**/*(pstr+i)=*(pstr+j);3.程序設(shè)計(jì)請(qǐng)編寫(xiě)函數(shù)fun,它的功能是:求出ss所指字符串中指定字符個(gè)數(shù),并返回次值。intfun(char*ss,charc){intcnt=0;char*p=ss;while(*p){if(*p==c)cnt++;p++;}returncnt;}第四十一套1.程序填空給定程序中,函數(shù)fun的功能是:將形參s所指定字符串中的數(shù)字字符轉(zhuǎn)換成相應(yīng)的數(shù)值,計(jì)算出這些數(shù)值的累加和作為函數(shù)值返回。第1處if(isdigit(*s))sum+=*s-48;第2處s++;第3處returnsum;2.程序修改給定程序MODI1.C中函數(shù)fun的功能是:計(jì)算小于形參k的最大的10個(gè)能被13或17整除的自然數(shù)之和。K的值由主函數(shù)傳入,若K的值為500.則主函數(shù)為4622。/**found**/if((k%13==0││(k%17==0))/**found**/}3.程序設(shè)計(jì)請(qǐng)編寫(xiě)函數(shù)fun,它的功能是:求小于形參n同時(shí)能被3和7整除的所有自然數(shù)之和的平方根,并作函數(shù)的返回值。doublefun(intn){doublesum=0.0;inti;for(i=21;i<=n;i++)if((i%3==0)&&(i%7==0))sum+=i;returnsqrt(sum);}第四十二套1程序填空給定程序中,函數(shù)fun的功能是:將不帶頭結(jié)點(diǎn)的單向鏈表結(jié)點(diǎn)數(shù)據(jù)域中的數(shù)據(jù)從小到大排序。即若原鏈表節(jié)點(diǎn)數(shù)據(jù)域從頭到位的數(shù)據(jù)為10、4、2、8、6,排序后鏈表結(jié)點(diǎn)數(shù)據(jù)域從頭至尾的數(shù)據(jù)為2、4、6、8、10.第1處q=p->next;第2處while(q)第3處p=p->next;2程序修改給定程序MODI1.C中函數(shù)fun的功能是:將s所指字符串中的字母轉(zhuǎn)換為按字母順序的后續(xù)字母(但Z轉(zhuǎn)化成A,z轉(zhuǎn)換為a),其它字符不變。/**found**/while(*s)/**found**/s++;3程序設(shè)計(jì)voidfun(int*w,intp,intn){inti,j=0,b[N];for(i=p+1;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所指的N乘以N(規(guī)定N為奇數(shù))的矩陣是否是“幻方”,若是,函數(shù)返回值是1;不是,函數(shù)返回值為0.“幻方”的鑒定條件是:矩陣每行、每列、主對(duì)角線及反對(duì)角線上元素之和都相等。第1處row=colum=0;第2處if((row!=colum)││(row!=m1))return0;第3處return1;2程序修改給定程序MODI1.C中函數(shù)fun的功能是:根據(jù)整型形參m計(jì)算如下公式的值。/**found**/t=t-1.0/i;/**found**/returnt;3程序設(shè)計(jì)請(qǐng)編寫(xiě)一個(gè)函數(shù),函數(shù)的功能是:刪除字符串中所有的空格。intfun(char*str){char*p=str;inti=0;while(*p){if(*p!=’’)str[i++]=*p;p++;}str[i]=0;}第四十四套1程序填空給定程序中,函數(shù)fun的功能是:將N乘以N矩陣中元素的值按列右移一個(gè)位置,右邊被移出矩陣的元素繞回左邊。第1處for(i=0;i<N;i++)第2處x=t[i][N-1];第3處t[i][0]=x;2程序修改給定程序MODI1.C中函數(shù)fun的功能是:計(jì)算并輸出下列級(jí)數(shù)的前n項(xiàng)的和Sn,直到Sn+1大于q為止,q的值通過(guò)形參傳入。/**found**/s=s+(n+1.0)/n;/**found**/returnt;3程序編寫(xiě)編寫(xiě)函數(shù)fun,它的功能是:求Fibonacci數(shù)列中大于t的最小一個(gè)數(shù),結(jié)果由函數(shù)返回。其中Fibonacci數(shù)列F(n)定義為F(0)=0,F(1)=1,F(n)。。。intfun(intt){intf0=0,f1=1,f;do{f=f0+f1;f0=f1;f1=f;}while(f<t);returnf;}第四十五套1程序填空給定程序中,函數(shù)fun的功能是將帶頭結(jié)點(diǎn)的單向鏈表逆置。即若原鏈表中從頭至尾結(jié)點(diǎn)數(shù)據(jù)域依次為:2、4、6、8、10,逆置后,從頭至尾結(jié)點(diǎn)數(shù)據(jù)域依次為:10、8、6、4、2.。第1處p=h->next;第2處if(p==0)return;第3處p=q;q=r;2程序修改給定MODI1.Cfun函數(shù)的功能是:計(jì)算s所指字符串中具有t所指字符串的數(shù)目,并作為函數(shù)值返回。請(qǐng)改正函數(shù)fun中指定部位的錯(cuò)誤,使它能得出對(duì)的的結(jié)果。/**found**/r=t;/**found**/if(*r==0)3程序設(shè)計(jì)請(qǐng)編寫(xiě)函數(shù)fun,函數(shù)的功能是:將放在字符串?dāng)?shù)組中的M個(gè)字符串(每串的長(zhǎng)度不超過(guò)N),按順序合并組成一個(gè)新的字符串,函數(shù)fun中給出的語(yǔ)句提供參考。voidfun(chara[M][N]),char*b){inti;*b=0;for(i=0;i<M;i++)strcat(b,a[i]);}第四十六套1程序填空給定程序中,函數(shù)fun的功能是:將形參s所指字符串所有ASCII碼小于97的字符存入形第1處*(t+n)=*s;n++;}第2處s++;第3處returnn;2程序修改給定程序MODI1.C中函數(shù)fun的功能是:由形參給定n個(gè)實(shí)數(shù),輸出平均值以上(含平均值)的實(shí)數(shù)個(gè)數(shù)。/**found**/intj,c=0;floatxa=0.0;/**found**/if(x[j]>=xa)3程序設(shè)計(jì)編寫(xiě)函數(shù)fun,其功能是:根據(jù)以下公式求p的值,結(jié)果由函數(shù)值帶回。m與n為兩個(gè)正整數(shù)且規(guī)定m>n。p=m!/(n!*(m-n)!)floatfun(intm,intn){floatp;p=1.0*jc(m)/jc(n)/jc(m-n);returnp;}第四十七套1程序填空函數(shù)fun的功能是:計(jì)算f(x)=1+x-x2∕2!+x3∕3!-X4/4!直到∣xn/n!∣<10-6若x=2.5,函數(shù)值為:1.917915。第1處t=x第2處t*=(-1.0)*x/n;第3處while(fabs(t)>=1e-6)2程序修改給定程序MODI1.C中函數(shù)fun的功能是:求整數(shù)x的y次方的低3位值。例如,整數(shù)5的6次方為15625,此值的低3位值為625。/**found**/for(i=1;i<=y;i++)/**found**/t=t%1000;3程序設(shè)計(jì)請(qǐng)編寫(xiě)函數(shù)fun,其功能是:計(jì)算并輸出當(dāng)x﹤0.97時(shí)下列多項(xiàng)式的值,直到Sn-Sn-1<0.000001為止。doublefun(doublex){intn=1;doublesn=1;doublexn=1,xn1=0;while(fabs(xn-xn1)>=0.000001){xn=xn*x*(0.5-n+1)/n;n+=1;sn+=xn;}return(sn);}第四十八套1程序填空給定程序中,函數(shù)fun的功能是:計(jì)算出帶有頭節(jié)點(diǎn)的單向鏈表中各節(jié)點(diǎn)數(shù)據(jù)域中值之和作為函數(shù)值帶回。第1處s+=p->data;第2處p=p->next;第3處printf(“\nsum=%d\n”,fun(head));2程序修改給定程序MODI1.C中函數(shù)fun的功能是:將s所指字符串中出現(xiàn)的與t1所指字符串相同的子串所有替換成t2所指字符串,所形成的新串放在w所指的數(shù)組中。在此處,規(guī)定t1和t2所指字符串的長(zhǎng)度相同。/**found**/while(*r)/**found**/*a=*r;a++;r++;3程序設(shè)計(jì)函數(shù)fun的功能是:將s所指字符串中下標(biāo)為偶數(shù)的字符刪除,串中剩余字符形成的新串放在t所指數(shù)組中。voidfun(char*s,chart[]){inti,j=0;for(i=1;i<strlen(s);i+=2)t[j++]=s[i];t[j]=0;}第四十九套1程序填空給定程序中,函數(shù)fun的功能是:把形參s所知字符串中最左邊的n個(gè)字符復(fù)制到形參t所指字符數(shù)組中,形成一個(gè)新串,若s所指字符串的長(zhǎng)度小于n,則將整個(gè)字符串復(fù)制到形參t所指字符數(shù)組中。第1處if(n>=len)strcpy(t,s);第2處t[j++]=s[i];第3處t[j]=0;2程序修改給定程序MODI1.C中函數(shù)fun的功能是:找出一個(gè)大于形參m且緊隨m的素?cái)?shù),并作為函數(shù)值帶回。/**found**/if(i%k==0)/**found**/if(k>=i)3程序設(shè)計(jì)編寫(xiě)函數(shù)fun,它的功能是:求出能整除形參x切不是偶數(shù)的各整數(shù),并按從小到大的順序放在pp所指的數(shù)組中,這些除數(shù)的個(gè)數(shù)通過(guò)形參n返回。voidfun(intx,intpp[],int*n){inti;*n=0;for(i=1;i<=x;i++)if((x%i==0)&&(i%2))pp[(*n)++]=i;}第五十套1程序填空給定程序中,函數(shù)fun的功能是:將形參s所知字符串中的所有數(shù)字字符順序前移,其他字符順序后移,解決后新字符串的首地址作為函數(shù)值返回。第1處p[j]=s[i];j++;}第2處for(i=0;i<k;i++)p[j+i]=t[i];第3處returnp;2程序修改給定程序MODI1.C中函數(shù)fun的功能是:一方面把b所指字符串中的字符按逆序存放,然后將a所指字符串中的字符和b所指字符串中的字符,按排列的順序交叉合并到c所指數(shù)組中,過(guò)長(zhǎng)的剩余字符接在c所指數(shù)組的尾部。/**found**/while(i<j)/**found**/if(*a)3程序設(shè)計(jì)函數(shù)fun的功能是:將s所指字符串中下標(biāo)為偶數(shù)同時(shí)ASCII值為奇數(shù)的字符刪除,s所指串中剩余的字符形成的新串放在t所指的數(shù)組中。voidfun(char*s,chart[]){inti,j=0;for(i=0;i<strlen(s);i++)if(!((i%2)==0&&(s[i]%2)))t[j++]=s[i];t[j]=0;}第五十一套1程序填空給定程序中,函數(shù)fun的功能是:計(jì)算下式s=1/22+3/42+5/62…+(2×n-1)/(2×n)2直到︱(2×n-1)/(2×n)2︱《10-3并把計(jì)算結(jié)果作為函數(shù)值返回。例如,若形參e的值le-3,函數(shù)值的返回值為2.735678。第1處i=0;第2處i++;第3處x=(2.0*i-1)/((2.0*i)*(2.0*i));2程序修改給定程序MODI1.C中函數(shù)fun的功能是:將s所指字符串的正序和反序進(jìn)行連接,形成一個(gè)新串放在t所指的數(shù)組中。/**found**/voidfun(char*s,char*t)/**found**/t[2*d]=’\0’;3程序設(shè)計(jì)函數(shù)fun的功能是:將s所指字符串中除了下標(biāo)為奇數(shù)、同時(shí)ASCII值也為奇數(shù)的字符之外,其余的所有字符都刪除,串中剩余字符所形成的一個(gè)新串放在t所指的數(shù)組中。viodfun(char*s,chatt[]){inti,j=0;for(i=1;i<strlen(s);i+=2)if(s[i]%2)t[j++]=s[i];t[j]=0;}第五十二套1程序填空給定程序中,函數(shù)fun的功能是:在3×4的矩陣中找出在行上最大,列上最小的那個(gè)元素,若沒(méi)有符合條件的元素則輸出相應(yīng)信息。第1處max=a[i][j];c=j;}第2處find=0;第3處i++;2程序修改給定程序MODI1.C中函數(shù)fun的功能是:根據(jù)整形形參m的值:計(jì)算如下公式的值?……例如:若m中的值為5,則應(yīng)輸出:0.536389。/**found**/for(i=2;i<=m;i++)/**found**/y-=1.0/(i*i);3程序設(shè)計(jì)m個(gè)人的成績(jī)存放在score數(shù)組中,請(qǐng)編寫(xiě)函數(shù)fun,它的功能是:將低于平均分的人數(shù)作為函數(shù)值返回,將低于平均分的分?jǐn)?shù)放在below所指的數(shù)組中。intfun(intscore[],intm,intbelow[]){floatav=0.0;inti,j=0;for(i=0;i<m;i++)av+=score[i];av/=m;for(i=0;i<m;i++)if(av>score[i])below[j++]=score[i];returnj;}第五十三套1程序填空給定程序中,函數(shù)fun的功能是將形參指針?biāo)附Y(jié)構(gòu)體數(shù)組中的三個(gè)元素按num成員進(jìn)行升序排列。第1處voidfun(PERSON*std)第2處PERSONtemp;第3處fun(std);2程序修改給定程序MODI1.C中函數(shù)fun的功能是:將m(1≦m≦10)個(gè)字符串連接起來(lái),組成一個(gè)新串,放入pt所指存儲(chǔ)區(qū)中。/**found**/intk,q,i;/**found**/pt[i]=str[k][i];3程序設(shè)計(jì)程序定義了N×N的二維數(shù)組,并在主函數(shù)中自動(dòng)賦值。請(qǐng)編寫(xiě)函數(shù)fun(inta[][N]),函數(shù)的功能是:使數(shù)組左下三角元素中的值所有置成0。intfun(inta[][N]){inti,j;for(i=0;i<N;i++)for(j=0;j<=i;j++)a[i][j]=0;}第五十四套1程序填空給定程序中,函數(shù)fun的功能是:計(jì)算形參x所指數(shù)組中N個(gè)數(shù)的平均值(規(guī)定所有數(shù)均為正數(shù)),作為函數(shù)值返回,并將大于平均值的數(shù)放在形參Y所指數(shù)組中,在主函數(shù)中輸出。第1處av=0;第2處av=av+x[i]/N;第3處y[j++]=x[i];2程序修改給定程序MODI1.C中函數(shù)fun的功能是:根據(jù)整形形參m,計(jì)算如下公式的值。/**found**/doublefun(intm)/**found**/for(i=100;i<=m;i+=100)3程序設(shè)計(jì)已知學(xué)生的記錄由學(xué)號(hào)和學(xué)習(xí)成績(jī)構(gòu)成,N名學(xué)生的數(shù)據(jù)已存入a結(jié)構(gòu)體數(shù)組中,輕便鞋函數(shù)的功能是:找出成績(jī)最低的學(xué)生記錄,通過(guò)形參返回主函數(shù)(規(guī)定只有一個(gè)最低分)fun(STUa[],STU*s){inti,min=a[0],s,j=0;for(i=1;i<N;i++)if(min>a[i].s){j=i;min=a[i].s;}*s=a[j];}第五十五套1程序填空給定程序中,函數(shù)fun的功能是:判斷形參s所指字符串是否是“回去”(Palindrome)若是,函數(shù)返回值為1;不是,函數(shù)返回值為0,“回文”是正讀和反讀都是同樣的字母串(不區(qū)分大小寫(xiě)字母)。第1處1p=s;第2處1p++;rp--;}第3處if(1p<rp)return0;2程序修改給定程序MODI1.C中函數(shù)fun的功能是:求出以下分?jǐn)?shù)序列的前n項(xiàng)之和。2/1+3/2+5/3+8/5+13/8+21/13+……和值通過(guò)函數(shù)值返回main函數(shù)。例如n=5,則應(yīng)輸出:8.391667。/**found**/doublefun(intn)/**found**/c=a;a+=b;b=c;3程序設(shè)計(jì)請(qǐng)編寫(xiě)函數(shù)fun,函數(shù)的功能是:將大于形參m且緊靠m的k個(gè)素?cái)?shù)存入xx所指的數(shù)組中。19,23,29,31,37,函數(shù)fun中給出的語(yǔ)句僅供參考。voidfun(intm,intk,intxx[]){inti,j=1,t=m+1;while(j<=k){for(i=2;i<t;i++)if(t%i==0)break;if(i==t){xx[j-1]=i;j++;}t++;}}第五十六套1

溫馨提示

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

評(píng)論

0/150

提交評(píng)論