2019年計算機二級C語言題庫_第1頁
2019年計算機二級C語言題庫_第2頁
2019年計算機二級C語言題庫_第3頁
2019年計算機二級C語言題庫_第4頁
已閱讀5頁,還剩152頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

2019年計算機二級C語言上機題庫第一套.程序填空程序通過定義學生結(jié)構(gòu)體數(shù)組,存儲了若干個學生的學號、姓名和三門課的成績.函數(shù)fun的功能是將存放學生數(shù)據(jù)的結(jié)構(gòu)體數(shù)組,按照姓名的字典序(從小到大排序)?請在程序的下劃線處壊入正確的內(nèi)容并把下劃線刪除,使程序得出正確的結(jié)果。第一處structstudentt;第二處for(i=0;i<n-l;i++)第三處if(strcmp(a[i].name,a[j].name)>0)程序修改給定程序M0DI1.C中函數(shù)fun的功能是:在p所指字符串中找出ASCH碼值最大的字符,將其放在第一個位置上;并將該字符前的原字符向上順序移動。/??founds/q=p+i;/??found3*8*/while(q>p)3程序設(shè)計學生的記錄由學號和成績組成,N名學生的數(shù)據(jù)己在主函數(shù)中放入結(jié)構(gòu)體數(shù)組s中,請編寫了函數(shù)fun,它的功能是:把指定分數(shù)范圍內(nèi)的學生數(shù)據(jù)放在b所指的數(shù)組中,分數(shù)范圍內(nèi)的學生人數(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;}第二套.程序填空給定程序中已建立一個帶有頭結(jié)點的單向鏈表,鏈表中的各結(jié)點按數(shù)據(jù)域遞增有序連接。函數(shù)fun的功能是:刪除鏈表中數(shù)據(jù)域值相同的結(jié)點,使之只保留一個。第一處free(q);第二處q=p->next;第三處q=q->next;.程序修改給定程序MODU.C中函數(shù)fun的功能是:用選擇法對數(shù)組中的n各元素按從小到大的順序進行排序。/??found3**/P=j;/??found3**/P=i;.程序設(shè)計請編寫ー個fun函數(shù),它的功能是:求出1到m之間(含通能被7或11整除的所有整數(shù)放在數(shù)組a中,通過n返回這些數(shù)的個數(shù)。voidfun(intm,int*a,int*n){inti;?n=0;for(i=7;i<=m;i++)if((i%7=0)||(i%ll=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ù)的個數(shù)。第一處for(i=0;i<n/2;i++)第二處a[i]=a[n-l-i];第三處a[n-i-l]=t;2程序修改給定程序M0DI1.C中函數(shù)fun的功能是:將一個由八進制數(shù)字字符串組成的字符串轉(zhuǎn)換為與其面值相等的十進制整數(shù)。規(guī)定輸入的字符串最多只能包含5位八進制數(shù)字字符。/??founds/n=*p-'〇';/??found3*8*/n=n*8+*p-'〇';3.程序設(shè)計學生的記錄由學號和成績組成,N名學生的數(shù)據(jù)已在主函數(shù)中放入結(jié)構(gòu)體數(shù)組s中,請編寫了函數(shù)fun,它的功能是:函數(shù)返回指定學號的學生數(shù)據(jù),指定的學生號在主函數(shù)中輸入,若沒有找到指定學號,在結(jié)構(gòu)體變量中給學號置空串,給成績置ー1,作為函數(shù)值返回。(用于字符串比較的函數(shù)是strcmp)。STRECfun(STREC*a,char*b)(STRECc;Inti;c.num【〇]='\0';c.s=-l;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é)點的單向鏈表中,査找數(shù)據(jù)域中值為ch的結(jié)點。找到后通過函數(shù)值返回該結(jié)點在鏈表中所處的順序號:若不存在值為ch的結(jié)點,函數(shù)值返回〇.第一處while(p!=0)第二處if(p->data=ch)returnn;第三處k=fun(head,ch);.程序修改給定程序MODU.C中函數(shù)fun的功能是:刪除p所指字符串的所有空白字符(包括制表符、回車符及換行符)。輸入字符串時用結(jié)束輸入。/??found**/for(i=0,t=0;p[i];i++)/??found**/c[t]='ゝ0';.程序設(shè)計請編寫一個函數(shù)fun,將ss所指字符串中所有下標為奇數(shù)位置上的字母轉(zhuǎn)換為大寫(若該位置上不是字母,則不轉(zhuǎn)換)。voidfun(char*ss)inti;for(i=l;i<strlen(ss);i+=2){if(ss[i]>=,a'&&ss[i]<=,z')ss[i]-=32;}}第五套.程序填空給定程序中,函數(shù)fun的功能是:計算下式前n項的和作為函數(shù)值返回。例如:當形參n的值為10的時,函數(shù)返回:9.6125588。第一處s=0;第二處for(i=l;i<=n;i++)第三處s=s+(2.〇?三1)*(2.O*i+l)/(t*t);.程序修改給定程序M0DI1.C中函數(shù)fun的功能是,統(tǒng)計substr所指字符串在str所指字符串中出現(xiàn)伯次數(shù)。/??found**/for(i=0;str[i];i++)/??found**/if(substr[k+l]=,、〇’).程序設(shè)計請編寫ー個函數(shù)fun,它的功能是:根據(jù)以下公式求JI的值(要求滿足精度0.0005,即某項小于0.0005時停止送代):程序運行后,如果輸入精度為0.0005,則程序輸出為3.14…。doublefun(doubleeps){doubles=l,t=l./3;intn=l;while(t>=eps){s+=t;n++;t=t*n/⑵0*n+l);}return(s*2.0);}弟ハ篡.程序填空給定程序中,函數(shù)fun的功能是:將形參s所指定字符串中所有的字母字符順序前移,其他字母順序后移,處理后字符串的首地址作為函數(shù)值返回。第一處t[j]=s[i];j++;第二處for(i=0;i<k;i++)t[j+i]=p[i];第三處t[j+k]=O;.程序修改給定程序M0DI1.C中函數(shù)fun的功能是:將s所指字符串中最后一次出現(xiàn)的與tl所指字符串相同的子串替換成t2所指定字符串,所形成的新串放在w所指的數(shù)組中.在此處,要求tl和t2所指字符串的長度相同./**found**/while(*w)/??found1**/if(+r==*p).程序設(shè)計函數(shù)fun的功能是:將s所指字符串中ASCH值為奇數(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[j]=O;)第七套.程序填空程序通過定義學生結(jié)構(gòu)體變量,存儲了學生的學號、姓名和三門課的成績。函數(shù)fun的功能是將形參a所指結(jié)構(gòu)體變量s中的數(shù)據(jù)進行修改,并把a中地址作為函數(shù)值返回主函數(shù),在主函數(shù)中輸出修改后的數(shù)據(jù).第一處structstudent*fun(structstudent*a)第二處for(i=0;i<3;i++)a->score[i]+=l:第三處returna;.程序修改給定程序MODI1.C中函數(shù)fun的功能是:從N個字符串中找出最長的那個串,并將其地址作為函數(shù)值返回。各字符串在主函數(shù)中輸入,并放在ー個字符串數(shù)組中./**found**/char*fun(char(*sq)[M])/??found**/returnsp;.程序設(shè)計函數(shù)fun的功能是:將a、b中的兩位正整數(shù)合并形成一個新的整數(shù)放在c中,合并的方式是:將a中的十位和個位依次放在變量c的百位和個位上,b中的十位和個位數(shù)依次放在變量c的十位和千位上.^include<stdio.h>voidfun(inta,intb,long?c){和=(b%10)?1000+(a/10)?100+(b/10)?10+a%10;}第八套.程序填空函數(shù)fun的功能是:將形參觀者エ所指數(shù)組中的前半部分元素中的值和后半部分元素中的值對換.形參n中存放數(shù)組中數(shù)據(jù)的個數(shù),若n為奇書,則中間元素不動.第一處p=(n%2=0)?n/2:n/2+1;第二處a[i]=a[p+i];第三處a[p+i]=t:.程序修改給定程序M0DI1.C中函數(shù)fun的功能是:把主函數(shù)中輸入的三個數(shù),最大的放在a中,最小的放在c中,中間的放在b中./??founds/floatk;/??founds/if(杭く?0).程序設(shè)計學生的記錄由學號和成績組成,N名學生的數(shù)據(jù)已在主函數(shù)中放入結(jié)構(gòu)體數(shù)組s中,請編寫了函數(shù)fun,它的功能是:把分數(shù)最髙的學生數(shù)據(jù)放在b所指的數(shù)組中,注意:分數(shù)最髙的學生可能不止ー個,函數(shù)返回分數(shù)最髙的學生的人數(shù)。intfun(STREC*a,STREC*b)inti,max二a[0].s,n=O;for(i=l;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;}第九套.程序填空給定程序中,函數(shù)fun的功能是:計算形參x所指數(shù)組中N個數(shù)的平均值,(規(guī)定所有數(shù)均為正數(shù)),將所指數(shù)組中小于平均值的數(shù)據(jù)移至數(shù)據(jù)的前部,大于等于平均數(shù)的移至x所指數(shù)組的后部,平均值作為函數(shù)值返回,在主函數(shù)中輸出平均值和移動后的數(shù)據(jù)。第一處for(i=0;i<N;i++)av+=x[i]/N第二處y[j]=x[i];x[i]=-l;j++;}第三處i++;.程序修改給定程序MODILC中函數(shù)fun的功能是:統(tǒng)計字符串各元音字母(即:A、E、I、0、U)的個數(shù)。注意字母不分大小寫。/??found3**/num[k]=0;/??founds/switch(林).程序設(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<M-l;i++){tot+=a[i][0];tot+=a[i][N-1];)returntot;)第十套1.程序填空程序通過定義學生結(jié)構(gòu)體變量,存儲了學生的學號、姓名和三門課的成績。函數(shù)fun的功能是將形參a中的數(shù)據(jù)進行修改,把修改后的數(shù)據(jù)作為函數(shù)值返回主函數(shù)進行輸出。第一處structstudentfun(structstudenta)第二處strcpy(,nLiSin);第三處a.score[i]+=l;2程序修改假定整數(shù)數(shù)列中的數(shù)不重復,并存放在數(shù)組中。給定程序M0DILC中函數(shù)fun的功能是:刪除數(shù)列中值為x的元素?N中存放的是數(shù)列中元素的個數(shù)./**found**/if(p=n)return-1'/??found**/a[i]=a[i+l]:3.程序設(shè)計學生的記錄由學號和成績組成,N名學生的數(shù)據(jù)已在主函數(shù)中放入結(jié)構(gòu)體數(shù)組s中,請編寫了函數(shù)fun,它的功能是:把分數(shù)最低的學生數(shù)據(jù)放在b所指的數(shù)組中,注意:分數(shù)最低的學生可能不止ー個,函數(shù)返回分數(shù)最低的學生的人數(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;}第H"ー套.程序填空給定程序中,函數(shù)fun的功能是:計算形參x所指數(shù)組中N個數(shù)的平均值,(規(guī)定所有數(shù)均為正數(shù)),將所指數(shù)組中大于平均值的數(shù)據(jù)移至數(shù)據(jù)的前部,小于等于平均數(shù)的移至x所指數(shù)組的后部,平均值作為函數(shù)值返回,在主函數(shù)中輸出平均值和移動后的數(shù)據(jù)。第一處av=s/N;第二處y[j++]=x[i];x[i]=-l;}第三處if(x[i]!=-l)y[j++]=x[i];.程序修改給定程序M0DU.C中函數(shù)fun的功能是:讀入一行英文文本行,將其中每個單詞的第一個字母改成大寫,然后輸出次文本行(這里的“單詞”是指由空格隔開的字符串)。/??found3*0*5/#include<stdio.h>/??found**/upfst(char*p).程序設(shè)計程序定義了NXN的二級數(shù)組,并在主函數(shù)中賦值,請編寫函數(shù)fun,函數(shù)的功能是:求出數(shù)組周邊元素的平均值并作出函數(shù)值飯給主函數(shù)中的s。doublefun(intw[][N]){inti,j,n=0;doublesum=O;for(i=0;i<N;i++){sum+=w[0][i]+w[N-l][i];n+=2;}for(i=l;i<N-l;i++){sum+=w[i][O]+w[i][N-1];n+=2;)returnsum/n;}第十二套.程序填空給定程序中,函數(shù)fun的功能是:將自然數(shù)1-10以及它們的平方根寫到名為myfile3.txt的文本文件中,然后再順序讀出顯示在屏幕上?第一處fprintf(fp,"%d%f\n",i,sqrt((double)i));第二處fclose(fp);第三處if((fp=fopen(fname,"rn))=NULL).程序修改給定程序M0DI1.C中函數(shù)fun的功能是:將n個無序整數(shù)從小到大排序。/??found**/for(i=j+l;i<n;i++)/??founds/P=i;.程序設(shè)計函數(shù)fun的功能是:將a、b中的兩位正整數(shù)合并形成一個新的整數(shù)放在c中。合并的方式是:將a中的十位和個位依次放在變量c的個位和百位上,b中的十位和個位數(shù)依次放在變量c的十位和千位上。^include<stdio.h>voidfun(inta,intb,long*c)(?c=(b%10)+1000+(a%10)+100+(b/10)?10+(a/10);}第十三套.程序填空給定程序中,函數(shù)fun的功能是:找出WN矩陣中每列元素中的最大值,并按順序一次存放于形參b所指的一維數(shù)組中。第一處b[i]=a[0][i];第二處if(b[i]<a[j][ij)b[i]=a[j][i];第三處fun(x,y):.程序修改給定程序M0DU.C中函數(shù)fun的功能是:交換主函數(shù)中的兩個變量的值。/??founds/intfun(int桃,int+y)/??founds/t=*x;M=*y;?y=t;.程序設(shè)計編寫函數(shù)fun,函數(shù)的功能是求出小于或等于lim的所有素數(shù)并放在aa數(shù)組中,函數(shù)返回所求出的素數(shù)的個數(shù)。函數(shù)fun中給出的語句僅供參考。^include<stdio.h>ftdefineMAX100intfun(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;}第十四套.程序填空函數(shù)fun的功能是進行字母轉(zhuǎn)換。若形參ch中小寫英文字母,則轉(zhuǎn)換成相應的大寫英文字母;若形參ch中是大寫英文字母,則轉(zhuǎn)換成相應的小寫英文字母;并將轉(zhuǎn)換的結(jié)果作為函數(shù)值返回。第一處if((ch>=*a*)&&(ch<=,z'))第二處returnch+'a'-'A'第三處returnch;.程序修改給定程序MODH.C中函數(shù)fun的功能是:給ー維數(shù)組a輸入任意四個整數(shù)并按下列的規(guī)律輸出。例如輸出1、2、3、4,程序輸出ー下方陣。a)123TOC\o"1-5"\h\z4 1234134/??found**/voidfun(int*a)/??found**/a[j]=a[j-l];3.程序設(shè)計請編寫函數(shù)fun,函數(shù)的功能是:計算并輸出給定整數(shù)n的所有因子(不包過1和n本身)之和。規(guī)定n的值不大于1000.intfun(intn)(ints=0,i;for(i=2;i<n;i++)if(n%i=0)s+=i:returns;}第十五套.程序填空給定程序中,函數(shù)的功能是:把形參S所指字符串下標為奇數(shù)的字符右移到下一個奇書位置,最右邊唄移出字符串的字符繞回放到第一個奇數(shù)位置,下標為偶數(shù)的字符不動(注:字符串的長度大于等于2)。例如,形參s所指的字符串為:abcdefgh,執(zhí)行結(jié)果為:ahcbedgo第一處if(n%2=0)k=n-l;第二處c=s[k];第三處s[l]=c;.程序修改給定程序M0DI1.C中函數(shù)fun的功能是:求s=aa-aa aaa—aa—a(此處aa???aa表示n個a,a和n的值在1至9之間)。/??found**/longs=0,t=0;/??found**/t=t/10;.程序設(shè)計請編寫ー個函數(shù)voidfun(char*tt,intpp[]),統(tǒng)計在tt所指字符串中‘a(chǎn)‘至‘z'26個小寫字母各自出現(xiàn)在的次數(shù),并依次放在pp數(shù)組中。voidfun(char*tt,intpp[]){char*p=tt:inti;for(i=0:i<26;i++)pp[i]=o:while(*p){if(*p>='a'&&*p〈='z')pp[*p-'a']+=l;P++;}}第十六套1.程序填空人員的記錄由編號和出生年、月、日組成,N名人員的數(shù)據(jù)己在主函數(shù)中存入結(jié)構(gòu)體數(shù)組std中,且編號唯一?函數(shù)fun的功能是:找出指定編號人員數(shù)據(jù),作為函數(shù)值返回,由主函數(shù)輸出,若指定編號不存在,返回數(shù)據(jù)中編號為空串.第!,處STUfun(STU*std,char*num)第2處if(strcmp(std[i].num,num)==0)第3處return(std[i]);.程序修改給定程序M0DI1.C中函數(shù)fun的功能是:從s所指字符串中,找出與t所指字符串相同的子串的個數(shù)作為函數(shù)值返回。/**found**/r++;p++;/**found**/if(*r==0).程序設(shè)計函數(shù)fun的功能是:將s所指字符串中ASCII值為偶數(shù)的字符刪除,串中剩余字符形成一個新串放在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]=O;}第十七套.程序填空給定程序中,函數(shù)fun的功能是:統(tǒng)計形參s所指字符串中數(shù)字字符出現(xiàn)的次數(shù),并存放在形參t所指的變量中,最后在主函數(shù)中輸出。例如,形參s所指的字符串為:abcdef35adgh3kjsdf7.輸出結(jié)果為:4.第1處for(i=0;s[i]!=NULL;i++)第2處if(s[i]>=,〇’&&s[i]<=,9')n++;第3處*t=n;.程序修改給定程序M0DI1.C中函數(shù)fun的功能是:通過某種方式實現(xiàn)兩個變量的交換,規(guī)定不允許增加語句和表達式。例如變量a中的值原為8,b中的值原為3,程序運行后a中值為3,b中的值為8./??found**/t=+x;?x=y;/??found**/return(t);.程序設(shè)計請編寫函數(shù)fun,函數(shù)的功能是:求出1到1000之間能被7或11整除,但不能同時被7和11整除的所有整數(shù)并將它們放在a所指的數(shù)組中,通過n返回這些數(shù)的個數(shù)。^include<stdio.h>viodfun(int*a,int*n){inti;*n=0;for(i=7;i<1000;i++)if(((i*7)==0II(i%ll)==0&&(i%77)!=0)a[(*n)++]=i;}第十八套.程序填空給定程序中,函數(shù)fun的功能是:有NXN矩陣,根據(jù)給定的m(m〈=n)值,將每行元素中的值均右移m個位置,左邊值為〇.第1處for(i=0;i<N;i++)第2處t[i][j+m]=t[i][j];第3處for(j=0;j<m;j++).程序修改給定程序M0DI1.C中函數(shù)fun的功能是:計算并輸出high以內(nèi)最大的10個素數(shù)之和。high的值由主函數(shù)傳給fun函數(shù)。/**found**/while((2<=high)&&(n<10))/**found**/yes=0;break:.程序設(shè)計請編寫函數(shù)fun,函數(shù)的功能是:利用一下所示的簡單迭代方法求方程求方程:cos(x)-x=0的ー個實根。x?.,=cos(x?)迭代步驟如下:(1)取xl的初值為0.0;(2)x0=xl.把xl的值賦給x0;(3)xl=cos(x0),求出ー個新的xl;(4)若x0-xl的絕對值小于0.000001執(zhí)行步驟(5)否則執(zhí)行步驟(2);(5)所求xl就是方程cos(x)-x=0的一個實根作為函數(shù)值返回。程序?qū)⑤敵鼋Y(jié)果為:Root=0.739058.floatfun()(floatxO,xl=0.0:do{x0=xl:xl=cos(xO):}while(fabs(x0-xl)>0.000001):returnxl;}第十九套.程序填空給定程序中,函數(shù)fun的功能是:將a所指的3X5矩陣中第k列的元素左移到第。列,第k列以后的每列元素行依次左移,原來左邊的各列依次繞到右邊。第1處for(p=l;p〈=k;p++)第2處for(j=0;j<N-l;j++)a[i][j]=a[i][j+1]:第3處a[i][N-l]=temp;.程序修改給定程序M0DI1.C中函數(shù)fun的功能是:根據(jù)形參m的值(2〈刊〈=9),在m行m列的二維數(shù)組中存放如下所示規(guī)律的數(shù)據(jù),由main函數(shù)輸出。例如,若輸入2則輸出:24/??found1**/fun(inta[][M],intm)/??founds/a[j][k]=(k+l)+(j+D:.程序設(shè)計函數(shù)fun的功能是:將a、b中的兩位正整數(shù)合并形成一個新的整數(shù)放在c中.合并的方式是:將a中的十位和個位依次放在變量c的十位和千位上,b中的十位和個位數(shù)依次放在變量c的個位和百位上.voidfun(inta,intb,int?c)(?c=(a%10)?1000+(b%10)+100+(a/10)+10+(b/10);}第二十套.程序填空給定程序中,函數(shù)fun的功能是:對形參s所指字符串中下標為奇數(shù)的字符ASCH碼大小遞增排序,并將排序后的下標為奇數(shù)的字符取出,形成一個新串.第litt=i;第2處for(j=i+2;j<n;j=j+2)第3處p[j]=O;.程序修改給定程序M0DI1.C中函數(shù)fun的功能是:用下面的公式求”的近似值,知道最后ー項的近似值小于指定數(shù)(參數(shù)num)為止:例如程序。.0001,則程序輸出3.1414./??founds/while((fabs(t))>=num)/??founds/t=s/n.程序設(shè)計請編寫ー個函數(shù)voidfun(chara[],charb[],intn),其功能是:刪除ー個字符串指定下標的字符.其中,a指向原字符串,刪除指定字符后的字符串放在b所指的n中存入指定的下標。viodfun(chara[],charb[],intn)(strncpy(b,a,n);b[n]=0;strcat(b,a+n+1);}第二十一套.程序填空給定程序中,函數(shù)fun的功能是:在形參ss所指字符串數(shù)組中,將所有串長超過k的字符串右邊的字符刪去,只保留左邊的k個字符。ss所指字符串數(shù)組中共有N個字符串,且串小于M.第一處voidfun(char(*ss)[M],intk)第二處while(i<N){第三處ss[i][k]=O;i++;).程序修改給定程序MODI1.C中函數(shù)fun的功能是:根據(jù)以下公式求“值,并作為函數(shù)值返回.例如,給指定精度的變量eps輸入。.0005時,應當輸出Pi=30140578../??founds/t=l;/??founds/return(2*s);.程序設(shè)計假定輸入字符串中只包含字母和?號。請編寫函數(shù)fun,它的功能是:將字符串的前導?號不得多于n個;若多于n個,則刪除多余的?號:若少于或等于n個,則什么也不做,字符串中間和尾部的?號不刪除。函數(shù)fun中給出的語句僅供參考.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所指4X3矩陣中第k行的元素與第。行元素交換。例如:有下列矩陣TOC\o"1-5"\h\z1 2 34 5 67 8 910 11 12若k為2,程序執(zhí)行結(jié)果為7 8 94 5 62 310 11 12第一處voidfun(int(*a)[N],intk)第二處for(i=0;i<N;i++)第三處a[0][i]=a[k][i];.程序修改給定程序M0DI1.C中函數(shù)fun的功能是:讀入一個字符串(長度く20),將該字符串中的所有字符串按ASCII碼升序排序后輸出。例如,若輸入edcba,則應輸出:abode〇/??found1**/for(i=strlen(t)-l;i:i—)/??founds/if(t[j]>t[j+U).程序設(shè)計請編寫函數(shù)fun,函數(shù)的功能是:將ss所指字符串中所有下標為奇數(shù)位置上的字母轉(zhuǎn)換為大寫(若該位置上不是字母,則不轉(zhuǎn)換)。voidfun(char?ss)(char?xss;inri=0;while(?p){if((i%2)&&(?p>=,a'&&+p<=fz'))?p-=32;p++;i++;}}第二十三套1.程序填空給定程序的功能是:調(diào)用函數(shù)fun將指定源文件中的內(nèi)容復制到指定的目標文件中,復制成功時函數(shù)的返回值是1,失敗是返回值是。.在復制的過程中,把復制的內(nèi)容輸出到終端屏幕.主函數(shù)源文件名放在變量sfname中,目標文件放在變量tfname中?第一處if((fs=fopen(source,nrn))=NULL)第二處while(!feof(fs))第三處fputc(ch,ft):2.程序修改給定程序M0DI1.C中函數(shù)fun的功能是:將長整型中每一位上為偶數(shù)的數(shù)依次取出,構(gòu)成一個新數(shù)放在t中.高位仍在高位,低位仍在低位./??found**/if(d%2=0)/??found**/s/=10;.程序設(shè)計函數(shù)fun的功能是:將兩位正整數(shù)a、b合并形成一個新的整數(shù)放在c中.合并的方式是:將a中的十位和個位依次放在變量c的十位和千位上,b中的十位和個位數(shù)依次放在變量c的百位和個位上.voidfun(inta,intb,long*c)(*c=(a%10)*1000+(b/10)*100+(a/10)*10+(b%10);第二十四套.程序填空程序通過定義學生結(jié)構(gòu)體變量,存儲了學生的學號、姓名和三門課的成績.函數(shù)fun的功能是將形參a所指結(jié)構(gòu)體變量中的數(shù)據(jù)賦給函數(shù)中的結(jié)構(gòu)體變量b,并修改b中的學號和姓名,最后輸出修改后的數(shù)據(jù).第一處b=a:第二處strcpy(,nLiSi")第三處for(i=0;i<3;i++)printf("%6.2f",b.score[i]);.程序修改給定程序M0DI1.C中函數(shù)fun的功能是:從s所指字符串中刪除所有小寫字母c.請改正程序中的錯誤,使它能計算出正確的結(jié)果。/??found*?/s[j++]=s[i];/??founds/s[j]=>\0*;.程序設(shè)計假定輸入的字符串中只包含字母和?號。請編寫函數(shù)fun,它的功能是:將字符串的前導?號全部移到字符串的尾部。函數(shù)fun中給出的函數(shù)僅供參考.voidfun(char*a){char*p,*q;intn=0;P=a;while(*p='*'){n++;p-H-;}q二a;while(*p){*q=*p;p++;q++;)for(;n>0;n—)*q++=,*,;*q='、〇’;)第二十五套.程序填空用篩選法可得到2—n(n<10000)之間的所有素數(shù),方法是:首先從素數(shù)2開始,將所有2的倍數(shù)的數(shù)從數(shù)表中刪去(把數(shù)表中相應位置的值置成。);接著從數(shù)表中找下ー個非。數(shù),并從數(shù)表中刪去該數(shù)的所有倍數(shù),依此類推,直到所找的下ー個數(shù)等于n為止。這樣會得到ー個序列:2、3、5、7、11、13、17、19、23……函數(shù)fun用篩選法找出所有小于等于n的素數(shù),并統(tǒng)計素數(shù)的個數(shù)作為函數(shù)值返回。第一處for(j=a[i]*2;j〈=n;j+=a[i])第二處while(a[i]==0)第三處if(a[i]!=0).程序修改給定程序M0DI1.C中函數(shù)fun的功能是:為ー個偶數(shù)尋找兩個素數(shù),這兩個素數(shù)之和等于該偶數(shù),并將這兩個素數(shù)通過形參指針傳回主函數(shù)。/??found**/y=l;/**foune**/d=a-i;.程序設(shè)計請編寫函數(shù)fun,它的功能是:計算并輸出n(包括n)以內(nèi)能被5或9整除的所有自然數(shù)的倒數(shù)之和。doublefun(intn)(inti;doublesum=0.0;for(i=l;i<n:i++)if(i%5==0||i%9==0)sum+=l.0/i;returnsum;}第二十六套.程序填空給定程序中,函數(shù)fun的功能是建立一個NXN的矩陣。矩陣元素的構(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-l]=i+l;.程序修改給定程序M0DI1.C中函數(shù)fun的功能是:將十進制正整數(shù)m轉(zhuǎn)換成k(2<=k<=9)進制數(shù),并按高位到低位順序輸出。/**found**/aa[i]=m%k;/**found**/printf( ,aa[i-l]);.程序設(shè)計編寫ー個函數(shù),從num個字符串中找出最長的ー個字符串,并通過形參指針max傳回該串地址。(注意:主函數(shù)中用****作為結(jié)束輸入的標志,函數(shù)fun中給出的語句僅供參考)。fun(char(*a)[81],intnum,char**max)(inti,k=0,maxlen;maxlen=strlen(a[k]);for(i=l;i<num;i++)(if(strlen(a[i])>maxlen){maxlen=strlen(a[i]):k=i;}}*max=a[k];}第二十七套.程序填空函數(shù)fun的功能是計算f(x)=l+x-2/2!+3/3!-4/4!+……的前n項和。若x=2.5,n=15時,函數(shù)值為1.917914。第一處f=l:第二處t*=(-l)*x/i;第三處f+=t;.程序修改給定程序MODI1.C中函數(shù)fun的功能是:從三個紅球,5個白球,6個黑球中任意取出8個作為ー組,進行輸出。在沒組中,可以沒有黑球,但必須要有紅球和白球。組合數(shù)作為函數(shù)值返回。正確的組合數(shù)應該是15.程序中i的值代表紅球數(shù),j代表白球數(shù),k代表黑球數(shù)。/??found5*0*5/for(i=l;i<=3;i++)/??found51*/if(k>=0&&k<=6).程序設(shè)計請編寫函數(shù)fun,它的功能是:計算并輸出下列多項式的值:s?=l+l/l!+1/2!+1/3!+1/4!+……1/n!。例如:在主函數(shù)中從鍵盤給n輸入15,則輸出為:s=2.718282c注意:要求n的值大于1但不大于100。doublefun(intn)(doubles=Vlongt=l;inti;for(i=l;i<=n;i++){t=t+i;s+=l.0/t;}returns;}第二十八套.程序填空給定程序中,函數(shù)fun的功能是:計算N*N矩陣的主對角線元素和方向?qū)蔷€元素之和,并作為函數(shù)值返回.注意:要求先累加主對角線元素中的值,然后累加反響對角線元素的值。第一處sum=0;第二處sum+=t[i][i];第三處sum+=t[i][n-i-1];.程序修改給定程序M0DI1.C中函數(shù)fun和funx的功能是:用二分法求方程2x3-4x2+3x-6=0的ー個根,并要求絕對誤差不超過0.001./??found1**/doubler:/??founds/while(fabs(n-tn)>0.001).程序設(shè)計假定輸入的字符串中只包含字母和?號.請編寫函數(shù)fun,它的功能是:除了字符串前導和尾部的?號之外,將串中其他?號全部刪除。形參h己指向字符串中的第一個字母,形參p已指向字符串中最后ー個字母。在編寫函數(shù)時,不得使用c語言提供的字符串函數(shù).voidfun(char?a,char?h,char??)(intj=0:char?qua;while(?q&&q<h)a[j++]=+q++;while(*h&&*p&&h<p)(ifC*h!='?')a[j++]=*h;h++;}while(1*p)a[j++]=?p++;a[j]=0;}第二十九套.程序填空給定程序中,函數(shù)fun的功能是:有MN矩陣,將矩陣的外圍元素順時針旋轉(zhuǎn)。操作的順序是:首先將第一行元素的值存入臨時數(shù)組r,然后使第一列成為第一行,最后一行成為第一列,最后一列成為第一行,臨時數(shù)組中和元素成為最后一列O第一處t[0][N-j-l]=t[j][0];第二處for(j=N-l;j>=0;j—)第三處t[j][N-l]=r[j];.程序修改給定程序M0DI1.C中函數(shù)fun的功能是:計算s=f(-n)+f(-n+1)+……+f(0)+f(1)+f(2)+……f(n)的值。例如,當n為5時,函數(shù)值應該是:10.407143./??founds/doublef(doublex)/**found**/returns;.程序設(shè)計編寫ー個函數(shù)fun,它的功能是計算:s二根號下(In(1)+ln(2)+ln(3)+……In(m))S作為函數(shù)返回,在C語言中可以調(diào)用log(n)求In(n).log函數(shù)引用說明是:Doublelog(doublex)例如,若m的值為:20,fun函數(shù)值為:605065830doublefun(intm)(doubles=0.0;inti;for(i=0;i<=m;i++)s+=log(1.0*i);s=sqrt(s);returns;}第三十套.程序壊空函數(shù)fun的功能是:反形參a所指數(shù)組中的奇數(shù)按原順序依次存放到a[0]、a[l]、a[2]……中,把偶數(shù)從數(shù)組中刪除,奇數(shù)個數(shù)通過函數(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=l)第二處j++;第三處returnj;.程序修改給定程序M0DI1.C中函數(shù)fun的功能是:求出兩個非零正整數(shù)的最大公約數(shù),并作為函數(shù)值返回。/??founds/t=a;a=b;b=t;/??founds/return(b);3.程序設(shè)計假定輸入的字符串中只包含字母和?號。請編寫函數(shù)fun,它的功能是:刪除字符串中所有的?號。在編寫函數(shù)時,不得使用C語言提供的字符串函數(shù)。voidfun(char*a){intj=0;char*p=a;while(*p){if(*p!=,ポ)a[j++]=*p;p++;}a[j]=O;}第三十一套.程序填空給定程序中,函數(shù)fun的功能是:在形參ss所指字符串數(shù)組中,刪除所有串長超過k的字符串,函數(shù)返回所剩字符串的個數(shù)。Ss所指字符串數(shù)組中共有N個字符串,且串長小于M。第一處for(i=0;i<N;i++)第二處if(len<=k)第三處strcpy(ss[j++],ss[i]);.程序修改給定程序M0DI1.C中函數(shù)fun的功能是:逐個比較p、q所指兩個字符串對應位置中的字符,把ASCII值或相等的字符依次存放在c所指數(shù)組中,形成一個新的字符串./??found1**/intk=0:/??founds/while(?p||+q).程序設(shè)計假定輸入的字符串中只包含字母和?號。請編寫函數(shù)fun,它的功能是:除了字符串前導?號之外,將串中其它?號全部刪除.在編寫函數(shù)時,不得使用C語言提供的字符串函數(shù)。函數(shù)fun中給出的語句僅供參考。voidfun(char?a)(inti=0,k;while(a[i]!='**)i++;k=i:while(a[i]!='、〇’)(if(a[i]!='?')a[k++]=a[i]:i++;}a[k]='\0';}第三十二套.程序填空給定程序中已建立一個帶頭結(jié)點的單向鏈表,鏈表中的各結(jié)點按結(jié)點數(shù)據(jù)域中的數(shù)據(jù)遞增有序鏈接。函數(shù)fun的功能是:把形參x的值放入一個新結(jié)點并插入到鏈表中,插入后各結(jié)點數(shù)據(jù)域的值仍保持遞增有序.第一處s->data=x;第二處q=p:第三處q->next=s;.程序修改給定程序MODI1.C中函數(shù)fun的功能是:計算正整數(shù)num的各位上的數(shù)字之積./??found**/longk=l;/??found**/num/=10.程序設(shè)計請編寫函數(shù)fun,它的功能是:計算n門課程的平均分,計算結(jié)果作為函數(shù)返回。floatfun(float*a,intn){inti;floatave=0.0;for(i=0;i<n;i++)ave=ave+a[i];ave=ave/n;returnave;}第三十三套.程序填空給定程序中,函數(shù)fun的功能是:在形參ss所指字符串數(shù)組中,査找含有形參substr所指子串的所有字符串并輸出,若沒找到輸出相應信息。Ss所指字符串數(shù)組中共有N個字符,且串長小于M。程序中庫函數(shù)strstr(sKs2)的功能是早si串中査找s2子串,若沒有,函數(shù)值為0,若有,為非。?第一處for(i=0;i〈N;i++)第二處if(strstr(ss[i],substr)!=NULL)第三處if(find==0).程序修改給定程序M0DI1.C中函數(shù)fun的功能是:求三個數(shù)的最小公倍數(shù)./??founds/fun(intx,inty,intz)/??founds/returnj;.程序設(shè)計假定輸入的字符串中只包含字母和?號。請編寫函數(shù)fun,它的功能是:只刪除字符串前導和尾部的?號,串中字母之間的?號都不刪除.形參n給出了字符串的長度,形參h給出了字符串中前導?號的個數(shù).在編寫函數(shù)時,不得使用C語言提供的字符串函數(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;第三十四套.程序填空給定程序中,函數(shù)fun的功能是:在形參ss所指字符串數(shù)組中査找與形參t所指字符串相同的串,找到后返回該串在字符串中的位置(下標值),未找到則返回-1.ss所指字符串數(shù)組中共有N個內(nèi)容不同的字符串,且串長小于M。第一處for(i=0;i<N;i++)第二處if(strcmpss[i],t)=0returni;第三處if(n=-l)printf(**\nDon,tfound!\n");.程序修改給定程序MODI1.C中函數(shù)fun的功能是:從整數(shù)1到55之間,選出能被3整除、且有一位上的數(shù)是5的那些事,并且把這些數(shù)放在b所指的數(shù)組中,這些數(shù)作為函數(shù)值返回.規(guī)定,函數(shù)中al放個位數(shù),a2放十位數(shù)./??found1/r/

溫馨提示

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

最新文檔

評論

0/150

提交評論