2023年二級C上機預(yù)測題庫_第1頁
2023年二級C上機預(yù)測題庫_第2頁
2023年二級C上機預(yù)測題庫_第3頁
2023年二級C上機預(yù)測題庫_第4頁
2023年二級C上機預(yù)測題庫_第5頁
已閱讀5頁,還剩66頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

二級C_第1套上機題一、程序填空題下列給定程序中,函數(shù)fun的功能是:求ss所指字符串?dāng)?shù)組中長度最短的字符串所在的行下標(biāo),作為函數(shù)值返回,并把其串長放在形參n所指的變量中。ss所指字符串?dāng)?shù)組中共有M個字符串,且串長小于N。請在下畫線處填入對的的內(nèi)容并將下畫線刪除,使程序得出對的的結(jié)果。注意:部分源程序在文獻BLANK1.C中。不得增行或刪行,也不得更改程序的結(jié)構(gòu)!【參考答案】(1)M(2)<(3)k二、程序修改題下列給定程序中函數(shù)fun的功能是:將tt所指字符串中的小寫字母所有改為相應(yīng)的大寫字母,其它字符不變。例如,若輸入"Ab,cD",則輸出"AB,CD"。請改正程序中的錯誤,使它能得出對的的結(jié)果。注意:部分源程序在文獻MODI1.C中,不得增行或刪行,也不得更改程序的結(jié)構(gòu)!【參考答案】(1)if((tt[i]>='a')&&(tt[i]<='z'))(2)tt[i]-=32;三、程序設(shè)計題編寫函數(shù)fun,其功能是:將所有大于1小于整數(shù)m的非素數(shù)存入xx所指數(shù)組中,非素數(shù)的個數(shù)通過k返回。例如,若輸入17,則應(yīng)輸出:46891012141516。注意:部分源程序在文獻PROG1.C中。請勿改動主函數(shù)main和其它函數(shù)中的任何內(nèi)容,僅在函數(shù)fun的花括號中填入你編寫的若干語句?!緟⒖即鸢浮縱oidfun(intm,int*k,intxx[]){?inti,j,n=0;?for(i=4;i<m;i++)/*找出大于1小于整數(shù)m的非素數(shù)*/?{for(j=2;j<i;j++) if(i%j==0)break;?if(j<i)xx[n++]=i;?}?*k=n;/*返回非素數(shù)的個數(shù)*/}二級C_第2套上機題一、程序填空題函數(shù)fun的功能是:記錄所有小于等于n(n>2)的素數(shù)的個數(shù),素數(shù)的個數(shù)作為函數(shù)值返回。請在程序的下畫線處填入對的的內(nèi)容并把下畫線刪除,使程序得出對的的結(jié)果。注意:部分源程序在文獻BLANK1.C中。不得增行或刪行,也不得更改程序的結(jié)構(gòu)!【參考答案】(1)j=2(2)i(3)j二、程序修改題數(shù)列中,第一項為3,后一項都比前一項的值增5。下列給定程序中,函數(shù)fun的功能是:計算前n(4<n<50)項的累計和。在累加過程中把那些被4除后余2的當(dāng)前累加值放入數(shù)組中,符合此條件的累加值的個數(shù)作為函數(shù)值返回。例如,當(dāng)n的值為20時,該數(shù)列為3、8、13、18、23、28、…、93、98,符合此條件的累加值應(yīng)為42、126、366、570、1010。請改正程序中的錯誤,使它能得出對的的結(jié)果。注意:部分源程序在文獻MODI1.C中,不要改動main函數(shù),不得增行或刪行,也不得更改程序的結(jié)構(gòu)!【參考答案】(1)inti,j=0,k,sum;(2)if(sum%4==2)三、程序設(shè)計題請編寫函數(shù)fun,其功能是:計算并輸出下列多項式的值,S=(1-1/2)+(1/3-1/4)+…+(1/(2n-1)-1/2n)例如,若主函數(shù)從鍵盤給n輸入8后,則輸出為S=0.662872。注意:規(guī)定n的值大于1但不大于100。部分源程序在文獻PROG1.C中。請勿改動主函數(shù)main和其他函數(shù)中的任何內(nèi)容,僅在函數(shù)fun的花括號中填入你編寫的若干語句?!緟⒖即鸢浮縟oublefun(intn){inti;doubles=0.0;for(i=1;i<=n;i++)s=s+(1.0/(2*i-1)-1.0/(2*i));/*計算S=(1-1/2)+(1/3-1/4)+(1/(2n-1)-1/2n)*/returns;}二級C_第3套上機題一、程序填空題程序通過定義學(xué)生結(jié)構(gòu)體變量,存儲學(xué)生的學(xué)號、姓名和3門課的成績。函數(shù)fun的功能是:對形參b所指結(jié)構(gòu)體變量中的數(shù)據(jù)進行修改,并在主函數(shù)中輸出修改后的數(shù)據(jù)。例如,若b所指變量t中的學(xué)號、姓名和三門課的成績依次是:10002、"ZhangQi"、93、85、87,修改后輸出t中的數(shù)據(jù)應(yīng)為:10004、"LiJie"、93、85、87。請在下畫線處填入對的的內(nèi)容并將下畫線刪除,使程序得出對的的結(jié)果。注意:部分源程序在文獻BLANK1.C中。不得增行或刪行,也不得更改程序的結(jié)構(gòu)!【參考答案】(1)->sno(2)->name(3)&t二、程序修改題下列給定程序中函數(shù)fun的功能是:用遞歸算法求形參a的平方根。求平方根的迭代公式如下:例如,a為2時,平方根值為:1.414214。請改正程序中的錯誤,使它能得出對的的結(jié)果。注意:部分源程序在文獻MODI1.C中,不得增行或刪行,也不得更改的程序的結(jié)構(gòu)!【參考答案】(1)doublefun(doublea,doublex0)(2)if(fabs(x1-x0)>=0.00001)三、程序設(shè)計題學(xué)生的記錄由學(xué)號和成績組成。N名學(xué)生的數(shù)據(jù)已放入主函數(shù)中的結(jié)構(gòu)體數(shù)組s中,請編寫函數(shù)fun,其功能是:把高于等于平均分的學(xué)生數(shù)據(jù)放在b所指的數(shù)組中,高于等于平均分的學(xué)生人數(shù)通過形參n傳回,平均分通過函數(shù)值返回。注意:部分源程序在文獻PROG1.C中。請勿改動主函數(shù)main和其它函數(shù)中的任何內(nèi)容,僅在函數(shù)fun的花括號中填入你編寫的若干語句?!緟⒖即鸢浮縟oublefun(STREC*a,STREC*b,int*n){inti;doubleav=0.0;*n=0;for(i=0;i<N;i++)av=av+a[i].s;av=av/N;/*求平均值*/for(i=0;i<N;i++)if(av<=a[i].s){b[*n]=a[i];*n=*n+1;}/*將高于等于平均分的學(xué)生存入b所指存儲單元中,并記錄人數(shù)*/returnav;/*返回平均分*/}二級C_第4套上機題一、程序填空題給定程序中,函數(shù)fun的功能是:運用指針數(shù)組對形參ss所指字符串?dāng)?shù)組中的字符串按由長到短的順序排序,并輸出排序結(jié)果。ss所指字符串?dāng)?shù)組中共有N個字符串,且串長小于M。請在程序的下畫線處填入對的的內(nèi)容并把下畫線刪除,使程序得出對的的結(jié)果。注意:部分源程序在文獻BLANK1.C中。不得增行或刪行,也不得更改程序的結(jié)構(gòu)!【參考答案】(1)i(2)ps[j](3)tp二、程序修改題已知一個數(shù)列從0項開始的前3項:0、0、1,以后的各項都是其相鄰的前3項之和。下列給定的程序中,函數(shù)fun的功能是:計算并輸出該數(shù)列前n項的平方根之和sum。n的值通過形參傳入。例如,當(dāng)n=10時,程序的輸出結(jié)果應(yīng)為23.197745。請改正程序中的錯誤,使它能得出對的的結(jié)果。注意:部分源程序在文獻MODI1.C中,不要改動main函數(shù),不得增行或刪行,也不得更改程序的結(jié)構(gòu)!【參考答案】(1)doublefun(intn)(2)returnsum;三、程序設(shè)計題請編寫函數(shù)fun,它的功能是計算下列級數(shù)和,和值由函數(shù)值返回。S=1+x+x2/2!+x3/3!+…+xn/n!例如,當(dāng)n=10,x=0.3時,函數(shù)值為1.349859。注意:部分源程序在文獻PROG1.C中。請勿改動主函數(shù)main和其他函數(shù)中的任何內(nèi)容,僅在函數(shù)fun的花括號中填入你編寫的若干語句?!緟⒖即鸢浮浚鋙ublefun(doublex,intn){inti;doubles=1.0,s1=1.0;for(i=1;i<=n;i++){s1=s1*i;/*各項中的階乘*/s=s+pow(x,i)/s1;/*按公式求出*/}returns;}二級C_第5套上機題一、程序填空題程序通過定義學(xué)生結(jié)構(gòu)體數(shù)組,存儲若干名學(xué)生的學(xué)號、姓名和三門課的成績。函數(shù)fun的功能是:將存放學(xué)生數(shù)據(jù)的結(jié)構(gòu)體數(shù)組,按姓名的字典序(從小到大)排序。請在下畫線處填入對的的內(nèi)容并將下畫線刪除,使程序得出對的的結(jié)果。注意:部分源程序在文獻BLANK1.C中。不得增行或刪行,也不得更改程序的結(jié)構(gòu)!【參考答案】(1)structstudent(2)n-1(3)a[i].name,a[j].name二、程序修改題下列給定程序中函數(shù)fun的功能是:從p所指字符串中找出ASCII碼值最大的字符,將其放在第一個位置上,并將該字符前的原字符向后順序移動。例如,調(diào)用fun函數(shù)之前給字符串輸入“ABCDeFGH”,調(diào)用后字符串中的內(nèi)容應(yīng)為“eABCDFGH”。請改正程序中的錯誤,使它能得出對的的結(jié)果。注意:部分源程序在文獻MODI1.C中,不得增行或刪行,也不得更改的程序的結(jié)構(gòu)!【參考答案】(1)q=p+i;(2)while(q>p)三、程序設(shè)計題學(xué)生的記錄由學(xué)號和成績組成,N名學(xué)生的數(shù)據(jù)已放入主函數(shù)中的結(jié)構(gòu)體數(shù)組s中。請編寫函數(shù)fun,其功能是:把指定分數(shù)范圍內(nèi)的學(xué)生數(shù)據(jù)放在b所指的數(shù)組中,分數(shù)范圍內(nèi)的學(xué)生人數(shù)由函數(shù)值返回。例如,輸入的分數(shù)是60、69,則應(yīng)當(dāng)把分數(shù)在60~69的學(xué)生數(shù)據(jù)輸出,包含60分和69分的學(xué)生數(shù)據(jù)。主函數(shù)中把60放在low中,把69放在heigh中。注意:部分源程序在文獻PROG1.C中。請勿改動主函數(shù)main和其它函數(shù)中的任何內(nèi)容,僅在函數(shù)fun的花括號中填入你編寫的若干語句?!緟⒖即鸢浮縤ntfun(STREC*a,STREC*b,intl,inth){inti,j=0;for(i=0;i<N;i++)if(a[i].s>=l&&a[i].s<=h)?/*將分數(shù)高于l,低于h的學(xué)生記錄存入結(jié)構(gòu)體數(shù)組b中*/?b[j++]=a[i];returnj;/*返回分數(shù)范圍內(nèi)的學(xué)生人數(shù)*/}二級C_第6套上機題一、程序填空題下列給定程序中,函數(shù)fun的功能是:將s所指字符串中的所有數(shù)字字符移到所有非數(shù)字字符之后,并保持數(shù)字字符串和非數(shù)字字符串原有的順序。例如,s所指的字符串為"def35adh3kjsdf7",執(zhí)行后結(jié)果為"defadhajsdf3537"。請在程序的下畫線處填入對的的內(nèi)容把下畫線刪除,使程序得出對的的結(jié)果。注意:部分源程序在文獻BLANK1.C中。不得增行或刪行,也不得更改程序的結(jié)構(gòu)!【參考答案】(1)j++或j+=1或++j或j=j+1(2)s[i]=t1[i](3)j二、程序修改題下列給定程序中函數(shù)fun的功能是:用冒泡法對6個字符串進行升序排列。請改正程序中的錯誤,使它能得出對的的結(jié)果。注意:部分源程序在文獻MODI1.C中,不得增行或刪行,也不得更改程序的結(jié)構(gòu)!【參考答案】(1)for(j=i+1;j<6;j++)(2)*(pstr+i)=*(pstr+j);三、程序設(shè)計題編寫函數(shù)fun,其功能是:求ss所指字符串中指定字符的個數(shù),并返回此值。例如,若輸入字符串,輸入字符為1,則輸出3。注意:部分源程序在文獻PROG1.C中。請勿改動主函數(shù)main和其它函數(shù)中的任何內(nèi)容,僅在函數(shù)fun的花括號中填入你編寫的若干語句?!緟⒖即鸢浮縤ntfun(char*ss,charc){inti=0;for(;*ss!='\0';ss++)if(*ss==c)i++;/*求出ss所指字符串中指定字符的個數(shù)*/returni;}二級C_第7套上機題一、程序填空題下列給定程序中,函數(shù)fun的功能是計算下式直到,并將計算結(jié)果作為函數(shù)值返回。例如,若形參e的值為1e-3,函數(shù)的返回值為2.985678。請在下畫線處填入對的的內(nèi)容并將下畫線刪除,使程序得出對的的結(jié)果。注意:部分源程序在文獻BLANK1.C中。不得增行或刪行,也不得更改程序的結(jié)構(gòu)!【參考答案】(1)0(2)i++或++i或i+=1或i=i+1(3)2.0*i二、程序修改題下列給定程序中函數(shù)fun的功能是:將s所指字符串的正序和反序進行連接,形成的新串放在t所指的數(shù)組中。例如,當(dāng)s所指字符串為:"ABCD"時,t所指字符串中的內(nèi)容應(yīng)為:"ABCDDCBA"。請改正程序中的錯誤,使它能得出對的的結(jié)果。注意:部分源程序在文獻MODI1.C中,不得增行或刪行,也不得更改的程序的結(jié)構(gòu)!【參考答案】(1)voidfun(char*s,char*t)(2)t[2*d]='\0';或t[d+i]='\0';或t[2*d]=0;或t[d+i]=0;三、程序設(shè)計題編寫函數(shù)fun,其功能是:將s所指字符串中除了下標(biāo)為奇數(shù)同時ASCII值也為奇數(shù)的字符之外,其余的所有字符所有刪除,串中剩余字符所形成的一個新串放在t所指的數(shù)組中。例如,若s所指字符串的內(nèi)容為:"ABCDEFG12345",其中字符A的ASCII碼值為奇數(shù),但所在元素的下標(biāo)為偶數(shù),因此需要刪除;而字符1的ASCII碼值為奇數(shù),所在數(shù)組中的下標(biāo)也為奇數(shù),因此不應(yīng)當(dāng)刪除,其它依此類推。最后t所指數(shù)組中的內(nèi)容應(yīng)為:"135"。注意:部分源程序在文獻PROG1.C中。請勿改動主函數(shù)main和其它函數(shù)中的任何內(nèi)容,僅在函數(shù)fun的花括號中填入你編寫的若干語句?!緟⒖即鸢浮縱oidfun(char*s,chart[]){inti,j=0,n;n=strlen(s);for(i=0;i<n;i++)if(i%2!=0&&s[i]%2!=0){t[j]=s[i];/*將下標(biāo)為奇數(shù)同時ASCII碼值為奇數(shù)的字符放入數(shù)組t中*/j++;}t[j]='\0';/*最后加上結(jié)束標(biāo)記符*/}二級C_第8套上機題一、程序填空題程序通過定義學(xué)生結(jié)構(gòu)體變量,存儲學(xué)生的學(xué)號、姓名和3門課的成績。函數(shù)fun的功能是:將形參a所指結(jié)構(gòu)體變量s中的數(shù)據(jù)進行修改,并把a的地址作為函數(shù)值返回主函數(shù),從主函數(shù)中輸出修改的數(shù)據(jù)。例如,a所指變量s中的學(xué)號、姓名和三門課的成績依次是:10001、"ZhangSan"、95、80、88,修改后輸出t中的數(shù)據(jù)應(yīng)為:10002、"LiSi"、96、81、89。請在下畫線處填入對的的內(nèi)容并將下畫線刪除,使程序得出對的的結(jié)果。注意:部分源程序在文獻BLANK1.C中。不得增行或刪行,也不得更改程序的結(jié)構(gòu)!【參考答案】(1)structstudent*(2)a->score[i](3)a二、程序修改題下列給定程序中函數(shù)fun的功能是:從N個字符串中找出最長的串,并將其地址作為函數(shù)值返回。各字符串在主函數(shù)中輸入,并放入一個字符串?dāng)?shù)組中。請改正程序中的錯誤,使它能得出對的的結(jié)果。注意:部分源程序在文獻MODI1.C中,不得增行或刪行,也不得更改的程序的結(jié)構(gòu)!【參考答案】(1)char*fun(char(*sq)[M])(2)returnsp;三、程序設(shè)計題編寫函數(shù)fun,其功能是:將a、b中的兩個兩位正整數(shù)合并成一個新的整數(shù)放在c中。合并的方式是:將a中的十位和個位數(shù)依次放在變量c的百位和個位上,b中的十位和個位數(shù)依次放在變量c的十位和千位上。例如,當(dāng)a=45,b=12,調(diào)用該函數(shù)后c=2415。注意:部分源程序在文獻PROG1.C中。請勿改動主函數(shù)main和其它函數(shù)中的任何內(nèi)容,僅在函數(shù)fun的花括號中填入你編寫的若干語句。【參考答案】voidfun(inta,intb,long*c){*c=a%10+(b/10)*10+(a/10)*100+(b%10)*1000;}二級C_第9套上機題一、程序填空題程序通過定義學(xué)生結(jié)構(gòu)體變量,存儲學(xué)生的學(xué)號、姓名和3門課的成績。函數(shù)fun的功能是:將形參a中的數(shù)據(jù)進行修改,把修改后的數(shù)據(jù)作為函數(shù)值返回主函數(shù)進行輸出。例如,若傳給形參a的數(shù)據(jù)中學(xué)號、姓名和三門課的成績依次是:10001、"ZhangSan"、95、80、88,修改后的數(shù)據(jù)應(yīng)為:10002、"LiSi"、96、81、89。請在下畫線處填入對的的內(nèi)容并將下畫線刪除,使程序得出對的的結(jié)果。注意:部分源程序在文獻BLANK1.C中。不得增行或刪行,也不得更改程序的結(jié)構(gòu)!【參考答案】(1)structstudent (2)?(3)a.score[i]二、程序修改題假定整數(shù)數(shù)列中的數(shù)不反復(fù),并存放在數(shù)組中。下列給定程序中函數(shù)fun的功能是:刪除數(shù)列中值為x的元素。變量n中存放數(shù)列中元素的個數(shù)。請改正程序中的錯誤,使它能得出對的的結(jié)果。注意:部分源程序在文獻MODI1.C中,不得增行或刪行,也不得更改的程序的結(jié)構(gòu)!【參考答案】(1)if(p==n)return-1;(2)a[i]=a[i+1];三、程序設(shè)計題編寫函數(shù)fun,其功能是:將兩個兩位數(shù)的正整數(shù)a、b合并成一個整數(shù)放在c中。合并的方式是:將a數(shù)的十位和個位數(shù)依次放在c數(shù)的個位和百位上,b數(shù)的十位和個位數(shù)依次放在c數(shù)的千位和十位上。例如,當(dāng)a=45,b=12時,調(diào)用該函數(shù)后,c=1524。注意:部分源程序在文獻PROG1.C中。數(shù)據(jù)文獻IN.DAT中的數(shù)據(jù)不得修改。請勿動改主函數(shù)的main和其它函數(shù)中的任何內(nèi)容,僅在函數(shù)fun的花括號填入你編寫的若干語句?!緟⒖即鸢浮縱oidfun(inta,intb,long*c){*c=a/10+(b%10)*10+(a%10)*100+(b/10)*1000;}二級C_第10套上機題一、程序填空題下列給定程序中,函數(shù)fun的功能是:在形參s所指字符串中的每個數(shù)字字符之后插入一個*號。例如,形參s所指的字符串為"def35adh3kjsdf7",執(zhí)行后結(jié)果為"def3*5*adh3*kjsdf7*"注意:部分源程序給出如下。不得增行或刪行,也不得更改程序的結(jié)構(gòu)!注意:部分源程序在文獻BLANK1.C中。不得增行或刪行,也不得更改程序的結(jié)構(gòu)!【參考答案】(1)&&(2)0或'\0'(3)s[j]或*(s+j)二、程序修改題下列給定程序中函數(shù)fun的功能是:根據(jù)整型形參m,計算如下公式的值。例如,若m的值為5,則應(yīng)輸出1.463611。請改正程序中的錯誤,使它能得出對的的結(jié)果。注意:部分源程序在文獻MODI1.C中,不得增行或刪行,也不得更改程序的結(jié)構(gòu)!【參考答案】(1)for(i=2;i<=m;i++)(2)y+=1.0/(i*i);或y+=(double)1.0/(i*i)三、程序設(shè)計題編寫函數(shù)fun,其功能是:實現(xiàn)B=A+A',即將矩陣A加上A的轉(zhuǎn)置,存放在矩陣B中。計算結(jié)果在main函數(shù)中輸出。例如,輸入下面的矩陣:其轉(zhuǎn)置矩陣為:程序輸出:注意:部分源程序在文獻PROG1.C中。請勿請勿改動主函數(shù)main和其它函數(shù)中的任何內(nèi)容,僅在函數(shù)fun的花括號中填入你編寫的若干語句?!緟⒖即鸢浮縱oidfun(inta[3][3],intb[3][3]){inti,j;for(i=0;i<3;i++)for(j=0;j<3;j++)b[i][j]=a[i][j]+a[j][i];/*把矩陣a加上a的轉(zhuǎn)置,存放在矩陣b中*/}二級C_第11套上機題一、程序填空題給定程序中,函數(shù)fun的功能是:判斷形參s所指字符串是否是"回文"(Palindrome),若是,函數(shù)返回值為1;不是,函數(shù)返回值為0。"回文"是正讀和反讀都同樣的字符串(不區(qū)分大小寫字母)。例如,LEVEL和Level是"回文",而LEVLEV不是"回文"。請在程序的下畫線處填入對的的內(nèi)容并把下畫線刪除,使程序得出對的的結(jié)果。注意:部分源程序在文獻BLANK1.C中。不得增行或刪行,也不得更改程序的結(jié)構(gòu)!【參考答案】(1)s(2)--(3)return0二、程序修改題下列給定程序中,函數(shù)fun的功能是:求出如下分數(shù)列的前n項之和。和值通過函數(shù)值返回main函數(shù)。例如,若n=5,則應(yīng)輸出8.391667。請改正程序中的錯誤,使它能得出對的的結(jié)果。注意:部分源程序在文獻MODI1.C中,不要改動main函數(shù),不得增行或刪行,也不得更改程序的結(jié)構(gòu)!【參考答案】(1)doublefun(intn)(2)s=s+(double)a/b;三、程序設(shè)計題請編寫一個函數(shù)voidfun(intm,intk,intxx[]),該函數(shù)的功能是:將大于整數(shù)m且緊靠m的k個素數(shù)存入所指的數(shù)組中。例如,若輸入17,5,則應(yīng)輸出19、23、29、31、37。注意:部分源程序在文獻PROG1.C中。請勿改動主函數(shù)main和其他函數(shù)中的任何內(nèi)容,僅在函數(shù)fun的花括號中填入你編寫的若干語句?!緟⒖即鸢浮縱oidfun(intm,intk,intxx[]){inti,j,n;for(i=m+1,n=0;n<k;i++)/*找大于m的素數(shù),循環(huán)k次,即找出緊靠m的k個素數(shù)*/{for(j=2;j<i;j++)/*判斷一個數(shù)是否為素數(shù),假如不是,跳出此循環(huán),判斷下一個數(shù)*/if(i%j==0)break;if(j>=i)/*假如是素數(shù),放入數(shù)組xx中*/xx[n++]=i;}}二級C_第12套上機題一、程序填空題函數(shù)fun的功能是:記錄長整數(shù)n的各位上出現(xiàn)數(shù)字1、2、3的次數(shù),并用外部(全局)變量c1、c2、c3返回主函數(shù)。例如,當(dāng)n=時,結(jié)果應(yīng)當(dāng)為:c1=3c2=1c3=2。注意:部分源程序在文獻BLANK1.C中。請勿改動main函數(shù)和其他函數(shù)中的任何內(nèi)容,僅在函數(shù)fun的橫線上填入所編寫的若干表達式或語句?!緟⒖即鸢浮浚?)n%10(2)break(3)break二、程序修改題下列給定程序中,函數(shù)fun實現(xiàn)的功能是:記錄一個無符號整數(shù)中各位數(shù)字值為0的個數(shù),通過形參傳回主函數(shù),并把該整數(shù)中各位上最大的數(shù)字值作為函數(shù)值返回。例如,若輸入無符號整數(shù)30800,則數(shù)字值為0的位的個數(shù)為3,各位上數(shù)字值最大的是8。請改正函數(shù)fun中的錯誤,使它能得出對的的結(jié)果。注意:部分源程序在文獻MODI1.C中,不要改動main函數(shù),不得增行或刪行,也不得更改程序的結(jié)構(gòu)?!緟⒖即鸢浮浚ǎ保閒(t==0)(2)*zero=count;三、程序設(shè)計題請編寫函數(shù)fun,其功能是:計算并輸出下列多項式的值。例如,在主函數(shù)中從鍵盤為n輸入50后,輸出為S=1.718282。注意:規(guī)定n的值在大于1但不大于100之間。部分源程序在文獻PROG1.C中。請勿改動主函數(shù)main和其他函數(shù)中的任何內(nèi)容,僅在函數(shù)fun的花括號中填入你編寫的若干語句?!緟⒖即鸢浮縟oublefun(intn){ doublesum=0,tmp=1;?inti;?for(i=1;i<=n;i++) { tmp=tmp*i; ?sum+=1.0/tmp;?} returnsum;}二級C_第13套上機題一、程序填空題下列給定程序中,函數(shù)fun的功能是:在形參ss所指字符串?dāng)?shù)組中查找與形參t所指字符串相同的串,找到后返回該串在字符串?dāng)?shù)組中的位置(即下標(biāo)值),若未找到則返回-1。ss所指字符串?dāng)?shù)組中共有N個內(nèi)容不同的字符串,且串長小于M。請在下畫線處填入對的的內(nèi)容并將下畫線刪除,使程序得出對的的結(jié)果。注意:部分源程序在文獻BLANK1.C中。不得增行或刪行,也不得更改程序的結(jié)構(gòu)!【參考答案】(1)N(2)i(3)-1二、程序修改題下列給定程序中函數(shù)fun的功能是:從整數(shù)10到55之間,查找能被3整除且有一位上的數(shù)值是5的數(shù),把這些數(shù)放在b所指的數(shù)組中,這些數(shù)的個數(shù)作為函數(shù)值返回。規(guī)定函數(shù)中al放個位數(shù),a2放十位數(shù)。請改正程序中的錯誤,使它能得出對的的結(jié)果。注意:部分源程序在文獻MODI1.C中,不得增行或刪行,也不得更改的程序的結(jié)構(gòu)!【參考答案】? (1)a2=k/10; ?(2)returni;三、程序設(shè)計題規(guī)定輸入的字符串中只包含字母和*號。請編寫函數(shù)fun,其功能是:將字符串尾部的*號所有刪除,前面和中間的*號不動。例如,字符串中的內(nèi)容為:"****A*BC*DEF*G*******",刪除后,字符串中的內(nèi)容應(yīng)當(dāng)是:"****A*BC*DEF*G"。在編寫函數(shù)時,不得使用C語言提供的字符串函數(shù)。注意:部分源程序在文獻PROG1.C中。請勿改動主函數(shù)main和其它函數(shù)中的任何內(nèi)容,僅在函數(shù)fun的花括號中填入你編寫的若干語句。【參考答案】voidfun(char*a){while(*a!='\0')a++;a--;/*指針a指向字符串的尾部*/while(*a=='*')a--;/*指針a指向最后一個字母*/*(a+1)='\0';/*在字符串最后加上結(jié)束標(biāo)志符*/}二級C_第14套上機題一、程序填空題給定程序中,函數(shù)fun的功能是:記錄形參s所指的字符串中數(shù)字字符出現(xiàn)的次數(shù),并存放在形參t所指的變量中,最后在主函數(shù)中輸出。例如,若形參s所指的字符串為"abcdef35adgh3kjsdf7",則輸出結(jié)果為4。請在下畫線處填入對的內(nèi)容并將下畫線刪除,使程序得出對的的結(jié)果。注意:部分源程序在文獻BLANK1.C中。不得增行或刪行,也不得更改程序的結(jié)構(gòu)!【參考答案】(1)s[i](2)'9'(3)*t=n二、程序修改題下列給定程序中函數(shù)fun的功能是:實現(xiàn)兩個變量值的互換,規(guī)定不允許增長語句和表達式。例如,變量a中的值原為8,b中的值原為3,程序運營后a中的值為3,b中的值為8。請改正程序中的錯誤,使它得出對的的結(jié)果。注意:部分源程序在文獻MODI1.C中,不得增行或刪行,也不得更改程序的結(jié)構(gòu)!【參考答案】(1)t=*x;*x=y;(2)return(t);或returnt;三、程序設(shè)計題編寫函數(shù)fun,其功能是:求出1~1000之間能被7或11整除,但不能同時被7和11整除的所有整數(shù),并將其放在a所指的數(shù)組中,通過n返回這些數(shù)的個數(shù)。注意:部分原程序在文獻PROG1.C中。請勿改動主函數(shù)main和其它函數(shù)中的任何內(nèi)容,僅在函數(shù)fun的花括號中填入你編寫的若干語句?!緟⒖即鸢浮縱oidfun(int*a,int*n){inti,j=0;for(i=1;i<=1000;i++)/*求1到1000之內(nèi)能被7或11整除、但不能同時被7和11整除的所有整數(shù),并放入數(shù)組a中*/if((i%7==0||i%11==0)&&i%77!=0)a[j++]=i;*n=j;}二級C_第15套上機題一、程序填空題下列給定程序中,函數(shù)fun的功能是:計算下式前n項的和,并作為函數(shù)值返回。例如,當(dāng)形參n的值為10時,函數(shù)返回:-0.204491。請在下畫線處填入對的的內(nèi)容并將下畫線刪除,使程序得出對的的結(jié)果。注意:部分源程序在文獻BLANK1.C中。不得增行或刪行,也不得更改程序的結(jié)構(gòu)!【參考答案】(1)1(2)2*i(3)(-1)二、程序修改題下列給定程序中函數(shù)fun的功能是:判斷一個整數(shù)是否為素數(shù),若是素數(shù)返回1,否則返回0。在main()函數(shù)中,若fun返回1輸出YES,若fun返回0輸出NO!。請改正程序中的錯誤,使它能得出對的的結(jié)果。注意:部分源程序在文獻MODI1.C中,不得增行或刪行,也不得更改的程序的結(jié)構(gòu)!【參考答案】(1)k++;(2)if(m==k)三、程序設(shè)計題請編寫函數(shù)fun,其功能是:找出一維整型數(shù)組元素中最大的值及其所在的下標(biāo),并通過形參傳回。數(shù)組元素中的值已在主函數(shù)中賦予。主函數(shù)中x是數(shù)組名,n是x中的數(shù)據(jù)個數(shù),max存放最大值,index存放最大值所在元素的下標(biāo)。注意:部分源程序在文獻PROG1.C中。請勿改動主函數(shù)main和其它函數(shù)中的任何內(nèi)容,僅在函數(shù)fun的花括號中填入你編寫的若干語句。【參考答案】voidfun(inta[],intn,int*max,int*d){inti;*max=a[0];*d=0;for(i=0;i<n;i++)/*將最大的元素放入指針max所指的單元,最大元素的下標(biāo)放入指針d所指的單元*/if(*max<a[i]){*max=a[i];*d=i;}}二級C_第16套上機題一、程序填空題函數(shù)fun的功能是:計算的前n項。若x=2.5,函數(shù)值為12.182340。請在程序的下畫線處填入對的的內(nèi)容并把下畫線刪除,使程序得出對的的結(jié)果。注意:部分源程序在文獻BLANK1.C中。不得增行或刪行,也不得更改程序的結(jié)構(gòu)?!緟⒖即鸢浮?1)1.0(2)1(3)i二、程序修改題下列給定程序中,函數(shù)fun的功能是:找出100~n(不大于1000)之間三個位上的數(shù)字都相等的所有整數(shù),把這些整數(shù)放在s所指的數(shù)組中,個數(shù)作為函數(shù)值返回。請改正程序中的錯誤,使它能得出對的的結(jié)果。注意:部分源程序在文獻MODI1.C中,不要改動main函數(shù),不得增行或刪行,也不得更改程序的結(jié)構(gòu)?!緟⒖即鸢浮?1)k=i;(2)b=k%10;三、程序設(shè)計題請編寫函數(shù)fun,其功能是:計算并輸出給定10個數(shù)的方差。其中:例如,給定的10個數(shù)為95.0、89.0、76.0、65.0、88.0、72.0、85.0、81.0、90.0、56.0,則輸出為S=11.730729。注意:部分源程序在文獻PROG1.C中。請勿改動主main函數(shù)和其他函數(shù)中的任何內(nèi)容,僅在函數(shù)fun的花括號中填入你編寫的若干語句?!緟⒖即鸢浮縟oublefun(doublex[10]){doublex1=0.0,s=0.0;inti;for(i=0;i<10;i++)x1=x1+x[i];x1=x1/10;/*求10個數(shù)的平均值*/for(i=0;i<10;i++)s=s+(x[i]-x1)*(x[i]-x1);returnsqrt(s/10);/*求10個數(shù)的方差*/}二級C_第17套上機題一、程序填空題下列給定程序中,函數(shù)fun的功能是:在形參ss所指字符串?dāng)?shù)組中,將所有串長超過k的字符串中后面的字符刪除,只保存前面的k個字符。ss所指字符串?dāng)?shù)組中共有N個字符串,且串長小于M。請在下畫線處填入對的的內(nèi)容并將下畫線刪除,使程序得出對的的結(jié)果。注意:部分源程序在文獻BLANK1.C中。不得增行或刪行,也不得更改程序的結(jié)構(gòu)!【參考答案】(1)[M](2)N(3)'\0'二、程序修改題下列給定程序中函數(shù)fun的功能是:根據(jù)以下公式求π值,并作為函數(shù)值返回。例如,當(dāng)給指定精度的變量eps輸入0.0005時,應(yīng)輸出Pi=3.140578。π/2=1+1/3+1/3×2/5+1/3×2/5×3/7+1/3×2/5×3/7×4/9+……請改正程序中的錯誤,使它能得出對的的結(jié)果。注意:部分源程序在文獻MODI1.C中,不得增行或刪行,也不得更改的程序的結(jié)構(gòu)!【參考答案】(1)t=1.0;(2)return(s*2);三、程序設(shè)計題規(guī)定輸入的字符串中只包含字母和*號。請編寫函數(shù)fun,其功能是:使字符串的前導(dǎo)*號不得多于n個,若多于n個,則刪除多余的*號;若少于或等n個,則不做解決,字符串中間和尾部的*號不刪除。例如,字符串中的內(nèi)容為:*******A*BC*DEF*G****,若n的值為4,刪除后,字符串中的內(nèi)容應(yīng)當(dāng)是:****A*BC*DEF*G****;若n的值為8,則字符串中的內(nèi)容仍為:*******A*BC*DEF*G****。n的值在主函數(shù)中輸入。在編寫函數(shù)時,不得使用C語言提供的字符串函數(shù)。注意:部分源程序在文獻PROG1.C中。請勿改動主函數(shù)main和其它函數(shù)中的任何內(nèi)容,僅在函數(shù)fun的花括號中填入你編寫的若干語句?!緟⒖即鸢浮縱oidfun(char*a,intn){inti=0;intk=0;char*p,*t;p=t=a;/*開始時,p與t同時指向數(shù)組的首地址*/while(*t=='*')/*用k來記錄前部星號的個數(shù)*/{k++;t++;}if(k>n)/*假如k大于n,則使p的前部保存n個星號,其后的字符依次存入數(shù)組a中*/{while(*p){a[i]=*(p+k-n);i++;p++;}a[i]='\0';/*在字符串最后加上結(jié)束標(biāo)記位*/}}二級C_第18套上機題一、程序填空題下列給定程序中,函數(shù)fun的功能是:把形參s所指字符串中下標(biāo)為奇數(shù)的字符右移到下一個奇數(shù)位置,最右邊被移出字符串的字符繞回放到第一個奇數(shù)位置,下標(biāo)為偶數(shù)的字符不動(注:字符串的長度大于等于2)。例如,形參s所指字符串為"abcdefgh",執(zhí)行結(jié)果為"ahcbedgf"。請在下畫線處填入對的的內(nèi)容并將下畫線刪除,使程序得出對的的結(jié)果。注意:部分源程序在文獻BLANK1.C中。不得增行或刪行,也不得更改程序的結(jié)構(gòu)!【參考答案】(1)1(2)s[k]或*(s+k)(3)c二、程序修改題下列給定程序中fun函數(shù)的功能是:求表達式s=aa…aa-…-aaa-aa-a(此處aa…aa表達n個a,a和n的值在1至9之間)例如,a=3,n=6,則以上表達式為:s=333333-33333-3333-333-33-3其值是296298。a和n是fun函數(shù)的形參,表達式的值作為函數(shù)值傳回main函數(shù)。請改正程序中的錯誤,使它能計算出對的的結(jié)果。注意:部分源程序在文獻MODI1.C中,不得增行或刪行,也不得更改程序的結(jié)構(gòu)!【參考答案】(1)longs=0,t=0;(2)t=t/10;三、程序設(shè)計題編寫函數(shù)voidfun(char*tt,intpp[]),記錄在tt所指的字符串中'a'到'z'26個小寫字母各自出現(xiàn)的次數(shù),并依次放在pp所指的數(shù)組中。例如,當(dāng)輸入字符串abcdefgabcdeabc后,程序的輸出結(jié)果應(yīng)當(dāng)是:33322110000000000000000000注意:部分源程序在文獻PROG1.C中。請勿改動主函數(shù)main和其它函數(shù)中的任何內(nèi)容,僅在函數(shù)fun的花括號中填入你編寫的若干語句。【參考答案】voidfun(char*tt,intpp[]){inti;for(i=0;i<26;i++)pp[i]=0;/*初始化pp數(shù)組各元素為0*/for(;*tt!='\0';tt++)if(*tt>='a'&&*tt<='z')pp[*tt-'a']++;}二級C_第19套上機題一、程序填空題下列給定程序中,函數(shù)fun的功能是:在形參ss所指字符串?dāng)?shù)組中,查找具有形參substr所指子串的所有字符串,并輸出,若沒找到則輸出相應(yīng)信息。ss所指字符串?dāng)?shù)組中共有N個字符串,且串長小于M。程序中庫函數(shù)strstr(s1,s2)的功能是在s1串中查找s2子串,若沒有,函數(shù)值為0,若有,函數(shù)值為非0。請在下畫線處填入對的的內(nèi)容并將下畫線刪除,使程序得出對的的結(jié)果。注意:部分源程序在文獻BLANK1.C中。不得增行或刪行,也不得更改程序的結(jié)構(gòu)!【參考答案】(1)N(2)substr(3)0二、程序修改題下列給定程序中函數(shù)fun的功能是:求三個數(shù)的最小公倍數(shù)。例如,若給主函數(shù)中的變量x1、x2、x3分別輸入15112,則輸出結(jié)果應(yīng)當(dāng)是330。請改正程序中的錯誤,使它能得出對的的結(jié)果。注意:部分源程序在文獻MODI1.C中,不得增行或刪行,也不得更改的程序的結(jié)構(gòu)!【參考答案】(1)fun(intx,inty,intz)或intfun(intx,inty,intz)(2)returnj;三、程序設(shè)計題規(guī)定輸入的字符串中只包含字母和*號。請編寫函數(shù)fun,其功能是:只刪除字符前導(dǎo)和尾部的*號,串中字母間的*號都不刪除。形參n給出了字符串的長度,形參h給出了字符串中前導(dǎo)*號的個數(shù),形參e給出了字符串中尾部*號的個數(shù)。在編寫函數(shù)時,不得使用C語言提供的字符串函數(shù)。例如,字符串中的內(nèi)容為:"****A*BC*DEF*G*******",刪除后,字符串中的內(nèi)容應(yīng)當(dāng)是:"A*BC*DEF*G"。注意:部分源程序在文獻PROG1.C中。請勿改動主函數(shù)main和其它函數(shù)中的任何內(nèi)容,僅在函數(shù)fun的花括號中填入你編寫的若干語句。【參考答案】voidfun(char*a,intn,inth,inte){inti,j=0;for(i=h;i<n-e;i++)/*第一個字母和最后一個字母之間的字符全不刪除*/a[j++]=a[i];a[j]='\0';/*在字符串最后加上結(jié)束標(biāo)記*/}二級C_第20套上機題一、程序填空題用篩選法可得到2~n(n<10000)之間的所有素數(shù),方法是:一方面從素數(shù)2開始,將所有2的倍數(shù)的數(shù)從數(shù)表中刪去(把數(shù)表中相應(yīng)位置的值置成0);接著從數(shù)表中找下一個非0數(shù),并從數(shù)表中刪去該數(shù)的所有倍數(shù);依此類推,直到所找的下一個數(shù)等于n為止。這樣會得到一個序列:2,3,5,7,11,13,17,19,23,…函數(shù)fun的作用是:用篩選法找出所有小于等于n的素數(shù),并記錄素數(shù)的個數(shù)作為函數(shù)值返回。請在程序的下畫線處填入對的的內(nèi)容并把下畫線刪除,使程序得出對的的結(jié)果。注意:部分源程序在文獻BLANK1.C中。不得增行或刪行,也不得更改程序的結(jié)構(gòu)!【參考答案】(1)a[i](2)a[i](3)0二、程序修改題下列給定的程序中,函數(shù)fun的功能是:為一個偶數(shù)尋找兩個素數(shù),這兩個素數(shù)之和等于該偶數(shù),并將這兩個素數(shù)通過形參指針傳回主函數(shù)。請改正函數(shù)fun中的錯誤,使它能得出對的的結(jié)果。注意:部分源程序在文獻MODI1.C中,不要改動main函數(shù),不得增行或刪行,也不得更改程序的結(jié)構(gòu)!【參考答案】(1)y=1;(2)d=a-i;三、程序設(shè)計題請編寫函數(shù)fun,該函數(shù)的功能是:計算并輸出n(涉及n)以內(nèi)所有能被5或9整除的自然數(shù)的倒數(shù)之和。例如,若主函數(shù)中從鍵盤給n輸入20后,則輸出為S=0.583333。注意:n的值規(guī)定不大于100。部分源程序在文獻PROG1.C中。請勿改動主函數(shù)main和其他函數(shù)中的任何內(nèi)容,僅在函數(shù)fun的花括號中填入你編寫的若干語句?!緟⒖即鸢浮縟oublefun(intn){inti;doublesum=0.0;for(i=1;i<=n;i++)if(i%5==0||i%9==0)sum+=1.0/i;returnsum;}二級C_第21套上機題一、程序填空題下列給定程序中,函數(shù)fun的功能是:將形參s所指字符串中下標(biāo)為奇數(shù)的字符取出,并按ASCII碼大小遞增排序,將排序后的字符存入形參p所指字符數(shù)組中,形成一個新串。例如,形參s所指的字符為:baawrskjghzlicda,執(zhí)行后p所指字符數(shù)組中的字符串應(yīng)為:aachjlsw。請在下畫線處填入對的的內(nèi)容并將下畫線刪除,使程序得出對的的結(jié)果。注意:部分源程序在文獻BLANK1.C中。不得增行或刪行,也不得更改程序的結(jié)構(gòu)!二、程序修改題下列給定程序中函數(shù)fun的功能是:用下面的公式求π的近似值,直到最后一項的絕對值小于指定的數(shù)(參數(shù)num)為止。例如,程序運營后,輸入0.0001,則程序輸出3.1414。請改正程序中的錯誤,使它能輸出對的的結(jié)果。注意:部分源程序在文獻MODI1.C中,不得增行或刪行,也不得更改程序的結(jié)構(gòu)!【參考答案】(1)while(fabs(t)>=num)(2)t=s/n;【參考答案】(1)t=i(2)i(3)'\0'或0三、程序設(shè)計題編寫函數(shù)fun,其功能是:刪除一個字符串中指定下標(biāo)的字符。其中,a指向原字符串,刪除指定字符后的字符串存放在b所指的數(shù)組中,n中存指定的下標(biāo)。例如,輸入一個字符串world,然后輸入3,則調(diào)用該函數(shù)后的結(jié)果為word。注意:部分源程序在文獻PROG1.C中。請勿改動主函數(shù)main和其它函數(shù)中的任何內(nèi)容,僅在函數(shù)fun的花括號中填入你編寫的若干語句?!緟⒖即鸢浮縱oidfun(chara[],charb[],intn){inti,k=0;for(i=0;a[i]!='\0';i++)if(i!=n)/*將不是指定下標(biāo)的字符存入數(shù)組b中*/b[k++]=a[i];b[k]='\0';/*在字符串最后加上結(jié)束標(biāo)記*/}二級C_第22套上機題一、程序填空題函數(shù)fun的功能是:計算直到<10-6。若x=2.5,函數(shù)值為12.182494。請在程序的下畫線處填入對的的內(nèi)容并把下畫線刪除,使程序得出對的的結(jié)果。注意:部分源程序在文獻BLANK1.C中。不得增行或刪行,也不得更改程序的結(jié)構(gòu)?!緟⒖即鸢浮?1)x(2)n(3)t二、程序修改題下列給定程序中,函數(shù)fun的功能是:計算n的5次方的值(規(guī)定n的值大于2且小于8),通過形參指針傳回主函數(shù),并計算該值的個位、十位、百位上數(shù)字之和作為函數(shù)值返回。例如,7的5次方是16807,其后3位數(shù)的和值是15。請改正程序中的錯誤,使它能得出對的的結(jié)果。注意:部分源程序在文獻MODI1.C中,不要改動main函數(shù),不得增行或刪行,也不得更改程序的結(jié)構(gòu)!【參考答案】(1)d=1;(2)s=0;(3)d=d/10;三、程序設(shè)計題請編寫函數(shù)fun,其功能是:計算并輸出給定數(shù)組(長度為9)中每相鄰兩個元素的平均值的平方根之和。例如,若給定數(shù)組中的9個元素依次為12.0、34.0、4.0、23.0、34.0、45.0、18.0、3.0、11.0,則輸出應(yīng)為S=35.951014。注意:部分源程序在文獻PROG1.C中。請勿改積極函數(shù)main和其他函數(shù)中的任何內(nèi)容,僅在函數(shù)fun的花括號中填入你編寫的若干語句?!緟⒖即鸢浮縟oublefun(doublex[9]){?doublesum=0.0; inti,j=1;?for(i=0;i<9;i++)?if(j<=8)?{?sum+=sqrt((x[i]+x[i+1])/2.0);j++;/*相鄰兩個元素之平均值的平方根之和*/ }?returnsum;}二級C_第23套上機題一、程序填空題函數(shù)fun的功能是進行字母轉(zhuǎn)換。若形參ch中是小寫英文字母,則轉(zhuǎn)換成相應(yīng)的大寫英文字母;若ch中是大寫英文字母,則轉(zhuǎn)換成相應(yīng)的小寫英文字母;若是其他字符則保持不變;并轉(zhuǎn)換后的結(jié)果作為函數(shù)值返回。請在程序的下畫線處填入對的的內(nèi)容并把下畫線刪除,使程序得出對的的結(jié)果。注意:部分源程序在文獻BLANK1.C中。不得增行或刪行,也不得更改程序的結(jié)構(gòu)!【參考答案】(1)&&(2)'A'(3)ch二、程序修改題下列給定程序中,函數(shù)fun的功能是:給一維數(shù)組a輸入任意4個整數(shù),并按如下的規(guī)律輸出。例如,輸入1、2、3、4,程序運營后輸出以下方陣:4123341223411234請改正程序中的錯誤,使它能得出對的的結(jié)果。注意:部分源程序在文獻MODI1.C中,不要改動main函數(shù),不得增行或刪行,也不得更改程序的結(jié)構(gòu)!【參考答案】(1)voidfun(int*a)(2)a[j]=a[j-1];三、程序設(shè)計題請編寫一個函數(shù)fun,它的功能是:計算并輸出給定整數(shù)n的所有因子(不涉及1與自身)之和。規(guī)定n的值不大于1000。例如,若主函數(shù)從鍵盤給n輸入的值為856,則輸出為sum=763。注意:部分源程序在文獻PROG1.C中。請勿改動main函數(shù)和其他函數(shù)中的任何內(nèi)容,僅在函數(shù)fun的花括號中填入所編寫的若干語句。【參考答案】intfun(intn){ints=0,i;for(i=2;i<=n-1;i++)/*將n減1累加*/if(n%i==0)s+=i;?returns;}二級C_第24套上機題一、程序填空題函數(shù)fun的功能是:從三個形參a、b、c中找出中間的數(shù),并作為函數(shù)值返回。例如,當(dāng)a=3,b=5,c=4時,中間的數(shù)為4。注意:部分源程序在文獻BLANK1.C中。請勿改動main函數(shù)和其他函數(shù)中的任何內(nèi)容,僅在函數(shù)fun的下畫線上填入所編寫的若干表達式或語句?!緟⒖即鸢浮?1)a(2)a(3)b二、程序修改題下列給定程序中,函數(shù)fun的功能是:將大寫字母轉(zhuǎn)換為相應(yīng)小寫字母之后的第5個字母;若小寫字母為v~z,則使小寫字母的值減21。轉(zhuǎn)換后的小寫字母作為函數(shù)值返回。例如,若形參是字母A,則轉(zhuǎn)換為小寫字母f;形參是字母W,則轉(zhuǎn)換為小寫字母b。請改正函數(shù)fun中的錯誤,使它能得出對的的結(jié)果。注意:部分源程序在文獻MODI1.C中,不要改動main函數(shù),不得增行或刪行,也不得更改程序的結(jié)構(gòu)!【參考答案】(1)c=c+32;(2)c=c+5;三、程序設(shè)計題請編寫函數(shù)fun,該函數(shù)的功能是:計算并輸出S=1+(1+20.5)+(1+20.5+30.5)+…+(1+20.5+30.5+…+n0.5)的值。例如,若主函數(shù)從鍵盤給n輸入20后,則輸出為S=534.188884。注意:部分源程序在文獻PROG1.C中。請勿改動主函數(shù)main和其他函數(shù)中的任何內(nèi)容,僅在函數(shù)fun的花括號中填入你編寫的若干語句?!緟⒖即鸢浮縟oublefun(intn){inti;doubles=0.0,s1=0.0;for(i=1;i<=n;i++){s1=s1+pow(i,0.5);/*求每一項*/s=s+s1;/*按公式求出s*/}returns;}二級C_第25套上機題一、程序填空題下列給定程序中,函數(shù)fun的功能是:在形參s所指字符串中尋找與參數(shù)c相同的字符,并在其后插入一個與之相同的字符,若找不到相同的字符則不做任何解決。例如,若s所指字符串為"baacda",c中的字符為a,執(zhí)行后s所指字符串為"baaaacdaa"。請在下畫線處填入對的的內(nèi)容并將下畫線刪除,使程序得出對的的結(jié)果。注意:部分源程序在文獻BLANK1.C中。不得增行或刪行,也不得更改程序的結(jié)構(gòu)中!【參考答案】(1)'\0'(2)0(3)c二、程序修改題在主函數(shù)中從鍵盤輸入若干個數(shù)放入數(shù)組中,用0結(jié)束輸入并放在最后一個元素中。下列給定程序中函數(shù)fun的功能是:計算數(shù)組元素中所有值為正數(shù)的平均值(不涉及0)。例如:數(shù)組中元素中的值依次為:39,-47,21,2,-8,15,0,則程序的運營結(jié)果為19.250000。請改正程序中的錯誤,使它能得出對的的結(jié)果。注意:部分源程序在文獻MODI1.C中,不得增行或刪行,也不得更改程序的結(jié)構(gòu)!【參考答案】(1)doublesum=0.0;(2)sum/=c;三、程序設(shè)計題編寫函數(shù)fun,其功能是:根據(jù)以下公式計算s,并計算結(jié)果作為函數(shù)值返回,n通過形參傳入。例如:若n的值為11時,函數(shù)的值為1.833333注意:部分源程序在文獻PROG1.C中。請勿改動主函數(shù)main和其它函數(shù)中的任何內(nèi)容,僅在函數(shù)fun的花括號中填入你編寫的若干語句?!緟⒖即鸢浮縡loatfun(intn){inti,s1=0;floats=0.0;for(i=1;i<=n;i++){s1=s1+i;/*求每一項的分母*/s=s+1.0/s1;/*求多項式的值*/}returns;}二級C_第26套上機題一、程序填空題下列給定程序中,函數(shù)fun的功能是:從形參ss所指字符串?dāng)?shù)組中,刪除所有串長超過k的字符串,函數(shù)返回剩余字符串的個數(shù)。ss所指字符串?dāng)?shù)組中共有N個字符串,且串長小于M。請在下畫線處填入對的的內(nèi)容并將下畫線刪除,使程序得出對的的結(jié)果。注意:部分源程序在文獻BLANK1.C中。不得增行或刪行,也不得更改程序的結(jié)構(gòu)!【參考答案】(1)N(2)k(3)ss[i]二、程序修改題下列給定程序中函數(shù)fun的功能是:逐個比較p、q所指兩個字符串相應(yīng)位置上的字符,并把ASCII值大或相等的字符依次存放到c所指的數(shù)組中,形成一個新的字符串。例如,若主函數(shù)中a字符串為"aBCDeFgH",b字符串為"Abcd",則c中的字符串應(yīng)為"aBcdeFgH"。請改正程序中的錯誤,使它能得出對的的結(jié)果。注意:部分源程序在文獻MODI1.C中,不得增行或刪行,也不得更改的程序的結(jié)構(gòu)!【參考答案】(1)?intk=0;(2)while(*p||*q)三、程序設(shè)計題規(guī)定輸入的字符串中只包含字母和*號。請編寫函數(shù)fun,其功能是:除了字符串前導(dǎo)的*號之外,將串中其它*號所有刪除。在編寫函數(shù)時,不得使用C語言提供的字符串函數(shù)。例如,字符串中的內(nèi)容為:****A*BC*DEF*G*******,刪除后,字符串中的內(nèi)容應(yīng)當(dāng)是:****ABCDEFG。注意:部分源程序在文獻PROG1.C中。請勿改動主函數(shù)main和其它函數(shù)中的任何內(nèi)容,僅在函數(shù)fun的花括號中填入你編寫的若干語句?!緟⒖即鸢浮浚觯飅dfun(char*a){inti=0;char*p=a;while(*p&&*p=='*'){ a[i]=*p; i++;?p++;}while(*p){?if(*p!='*') {a[i]=*p;i++;} p++;}a[i]='\0';}二級C_第27套上機題一、程序填空題下列給定程序中,函數(shù)fun的功能是:將形參n中,各位上為偶數(shù)的數(shù)取出,并按本來從高位到低位相反的順序組成一個新數(shù),作為函數(shù)值返回。例如,輸入一個整數(shù)27638496,函數(shù)返回值為64862。請在下畫線處填入對的的內(nèi)容并將下畫線刪除,使程序得出對的的結(jié)果。注意:部分源程序在文獻BLANK1.C中。不得增行或刪行,也不得更改程序的結(jié)構(gòu)!【參考答案】(1)0(2)10*x(3)n/10二、程序修改題下列給定程序中函數(shù)fun的功能是:將長整型數(shù)中各位上為奇數(shù)的數(shù)依次取出,構(gòu)成一個新數(shù)放在t中。高位仍在高位,低位仍在低位。例如,當(dāng)s中的數(shù)為87653142時,t中的數(shù)為7531。請改正程序中的錯誤,使它能得出對的的結(jié)果。注意:部分源程序在文獻MODI1.C中,不得增行或刪行,也不得更改的程序的結(jié)構(gòu)!【參考答案】 (1)*t=0;(2)if(d%2?。?)或if(d%2==1)三、程序設(shè)計題編寫函數(shù)fun,其功能是:實現(xiàn)兩個字符串的連接(不要使用庫函數(shù)strcat),即把p2所指的字符串連接到p1所指的字符串的后面。例如,分別輸入下面兩個字符串:FirstString--SecondString程序輸出:FirstString--SecondString注意:部分源程序在文獻PROG1.C中。請勿改動主函數(shù)main和其它函數(shù)中的任何內(nèi)容,僅在函數(shù)fun的花括號中填入你編寫的若干語句?!緟⒖即鸢浮浚鰋idfun(charp1[],charp2[]){inti,j;for(i=0;p1[i]!='\0';i++);for(j=0;p2[j]!='\0';j++)p1[i++]=p2[j];p1[i]='\0';}二級C_第28套上機題一、程序填空題下列給定程序中,函數(shù)fun的功能是:有N×N矩陣,根據(jù)給定的m(m<=N)值,將每行元素中的值均向右移動m個位置,左位置為0。例如,N=3,m=2,有下列矩陣123456789程序執(zhí)行結(jié)果為001004007請在下畫線處填入對的的內(nèi)容并將下畫線刪除,使程序得出對的的結(jié)果。注意:部分源程序在文獻BLANK1.C中。不得增行或刪行,也不得更改程序的結(jié)構(gòu)!【參考答案】(1)i++(2)m(3)m二、程序修改題下列給定程序中函數(shù)fun的功能是:計算并輸出high以內(nèi)最大的10個素數(shù)的和。high的值由主函數(shù)傳給fun函數(shù)。例如,若high的值為100,則函數(shù)的值為732。請改正程序中的錯誤,使程序能輸出對的的結(jié)果。注意:部分源程序在文獻MODI1.C中,不得增行或刪行,也不得更改程序的結(jié)構(gòu)!【參考答案】(1)while((high>=2)&&(n<10))(2)yes=0;break;三、程序設(shè)計題編寫函數(shù)fun,其功能是:運用下面的簡樸迭代方法求方程cos(x)-x=0的一個實根。迭代環(huán)節(jié)如下:(1)取x1初值為0.0;(2)x0=x1,將x1的值賦給x0;(3)x1=cos(x0),求出一個新的x1;(4)若x0-x1的絕對值小于0.000001,執(zhí)行步聚(5),否則執(zhí)行步聚(2);(5)所求x1就是方程cos(x)-x=0的一個實根,作為函數(shù)值返回。程序?qū)⑤敵鼋Y(jié)果Root=0.739086。注意:部分源程序在文獻PROG1.C中。請勿改動主函數(shù)main和其它函數(shù)中的任何內(nèi)容,僅在函數(shù)fun的花括號填入你編寫的若干語句?!緟⒖即鸢浮縟oublefun(){doublex0,x1;x1=0.0;do{x0=x1;x1=cos(x0);}while(fabs(x0-x1)>=1e-6);returnx1;}二級C_第29套上機題一、程序填空題給定程序中,函數(shù)fun的功能是:找出形參s所指字符串中出現(xiàn)頻率最高的字母(不區(qū)分大小寫),并記錄出其出現(xiàn)的次數(shù)。例如,形參s所指的字符串為:abcAbsmaxless,程序執(zhí)行后的輸出結(jié)果為:letter'a':3timesletter's':3times請在程序的下畫線處填入對的的內(nèi)容并把下畫線刪除,使程序得出對的的結(jié)果。注意:部分源程序在文獻BLANK1.C中。不得增行或刪行,也不得更改程序的結(jié)構(gòu)!【參考答案】(1)*s(2)1(3)k[n]二、程序修改題下列給定程序中,函數(shù)fun的功能是:求S的值。S=(22/(1×3))×(42/(3×5))×(62/(5×7))×…×(2k)2/((2k-1)×(2k+1))例如,當(dāng)k為10時,函數(shù)的值應(yīng)為1.533852。請改正程序中的錯誤,使它能得出對的的結(jié)果。注意:部分源程序在文獻MODI1.C中,不要改動main函數(shù),不得增行或刪行,也不得更改程序的結(jié)構(gòu)!【參考答案】(1)doublefun(intk)(2)returns;三、程序設(shè)計題請編寫函數(shù)fun,其功能是:計算并輸出下列多項式的值。S=1/(1×2)+1/(2×3)+…+1/(n×(n+1))例如,當(dāng)n=10時,函數(shù)值為0.909091。注意:部分源程序在文獻PROG1.C中。請勿改動主函數(shù)main和其他函數(shù)中的任何內(nèi)容,僅在函數(shù)fun的花括號中填入你編寫的若干語句?!緟⒖即鸢浮縟oublefun(intn){inti;doubles=0.0;for(i=1;i<=n;i++)s=s+1.0/(i*(i+1));/*求級數(shù)的和*/returns;}二級C_第30套上機題一、程序填空題給定程序中,函數(shù)fun的功能是:把形參s所指字符串中最右邊的n個字符復(fù)制到形參t所指字符數(shù)組中,形成一個新串。若s所指字符串的長度小于n,則將整個字符串復(fù)制到形參t所指字符數(shù)組中。例如,形參s所指的字符串為:abcdefgh,n的值為5,程序執(zhí)行后t所指字符數(shù)組中的字符串應(yīng)為:defgh。請在程序的下畫線處填入對的的內(nèi)容并把下畫線刪除,使程序得出對的的結(jié)果。注意:部分源程序在文獻BLANK1.C中。不得增行或刪行,也不得更改程序的結(jié)構(gòu)!【參考答案】(1)t,s(2)s[i](3)0或'\0'二、程序修改題下列給定程序中,函數(shù)fun的功能是:找出一個大于給定整數(shù)m且緊隨m的素數(shù),并作為函數(shù)值返回。請改正程序中的錯誤,使它能得出對的的結(jié)果。注意:部分源程序在文獻MODI1.C中,不要改動main函數(shù),不得增行或刪行,也不得更改程序的結(jié)構(gòu)!【參考答案】(1)if(i%k==0)(2)if(k==i)三、程序設(shè)計題請編寫函數(shù)voidfun(intx,intpp[],int*n),它的功能是:求出能整除x且不是偶數(shù)的各整數(shù),并按從小到大的順序放在pp所指的數(shù)組中,這些除數(shù)的個數(shù)通過形參n返回。例如,若x中的值為30,則有4個數(shù)符合規(guī)定,它們是1、3、5、15。注意:部分源程序在文獻PROG1.C中。請勿改動主函數(shù)main和其他函數(shù)中的任何內(nèi)容,僅在函數(shù)fun的花括號中填入你編寫的若干語句?!緟⒖即鸢浮縱oidfun(intx,intpp[],int*n){inti,j=0;for(i=1;i<=x;i=i+2)/*i的初始值為1,步長為2,保證i為奇數(shù)*/if(x%i==0)/*將能整除x的數(shù)存入數(shù)組pp中*/pp[j++]=i;*n=j;/*傳回滿足條件的數(shù)的個數(shù)*/}二級C_第31套上機題一、程序填空題給定程序中,函數(shù)fun的功能是:將形參s所指字符串中所有ASCII碼值小于97的字符存入形參t所指字符數(shù)組中,形成一個新串,并記錄出符合條件的字符個數(shù)作為函數(shù)值返回。例如,形參s所指的字符串為:Abc@1x56*,程序執(zhí)行后t所指字符數(shù)組中的字符串應(yīng)為:A@156*。注意:部分源程序在文獻BLANK1.C中。不得增行或刪行,也不得更改程序的結(jié)構(gòu)!【參考答案】(1)*s(2)s++(3)n二、程序修改題下列給定程序中,函數(shù)fun的功能是:給定n個實數(shù),輸出平均值,并記錄平均值以上(含平均值)的實數(shù)個數(shù)。例如,n=8時,輸入193.199、195.673、195.757、196.051、196.092、196.596、196.579、196.763、所得平均值為195.838745,在平均值以上的實數(shù)個數(shù)應(yīng)為5。請改正程序中的錯誤,使其能得出對的的結(jié)果。注意:部分源程序在文獻MODI1.C中,不要改動main函數(shù),不得增行或刪行,也不得更改程序的結(jié)構(gòu)!【參考答案】(1){intj,c=0;floatxa=0.0;(2)if(x[j]>=xa)三、程序設(shè)計題編寫函數(shù)fun,其功能是:根據(jù)以下公式求P的值,結(jié)果由函數(shù)值帶回。m與n為兩個正整數(shù)且規(guī)定m>n。例如:m=12,n=8時,運營結(jié)果為495.000000。注意:部分源程序在文獻PROG1.C中。請勿改動主函數(shù)main和其他函數(shù)中的任何內(nèi)容,僅在函數(shù)fun的花括號中填入你編寫的若干語句。【參考答案】longjc(intm){longs=1;inti;for(i=1;i<=m;i++)s=s*i;returns;}floatfun(intm,intn){floatp;p=1.0*jc(m)/jc(n)/jc(m-n);returnp;}二級C_第32套上機題一、程序填空題下列給定程序中,函數(shù)fun的功能是:將N×N矩陣中元素的值按列向右移動1個位置,右邊被移出矩陣的元素繞回左邊第1列。例如,N=3,有下列矩陣123456789計算結(jié)果為312645978請在下畫線處填入對的的內(nèi)容并將下畫線刪除,使程序得出對的的結(jié)果。注意:部分源程序在文獻BLANK1.C中。不得增行或刪行,也不得更改程序的結(jié)構(gòu)!【參考答案】(1)N(2)N-1(3)0二、程序修改題下列給定程序中函數(shù)fun的功能是:計算并輸出下列級數(shù)的前N項和SN,直到SN+1的值大于q為止,q的值通過形參傳入。例如,若q的值為50.0,則函數(shù)值應(yīng)為49.394948。請改正程序中的錯誤,使程序能輸出對的的結(jié)果。注意:部分源程序在文獻MODI1.C中,不得增行或刪行,也不得更改程序的結(jié)構(gòu)!【參考答案】(1)s=s+(double)(n+1)/n;(2)returnt;三、程序設(shè)計題編寫函數(shù)fun,其功能是:求Fibonacci數(shù)列中大于t的最小的數(shù),結(jié)果由函數(shù)返回。Fibonacci數(shù)列F(n)的定義為:F(0)=0,F(xiàn)(1)=1F(n)=F(n-1)+F(n-2)例如,當(dāng)t=1000時,函數(shù)值為1597。注意:部分源程序在文獻PROG1.C中。請勿改動主函數(shù)main和其它函數(shù)中的任何內(nèi)容,僅在函數(shù)fun的花括號中填入你編寫的若干語句。【參考答案】intfun(intt){intf0=0,f1=1,f;do{f=f0+f1;f0=f1;f1=f;}while(f<t);returnf;}二級C_第33套上機題一、程序填空題給定程序中,函數(shù)fun的功能是:計算出形參s所指字符串中包含的單詞個數(shù),作為函數(shù)值返回。為便于記錄,規(guī)定各單詞之間用空格隔開。例如,形參s所指的字符串為:ThisisaClanguageprogram.,函數(shù)的返回值為6。請在程序的下畫線處填入對的的內(nèi)容并把下畫線刪除,使程序得出對的的結(jié)果。注意:部分源程序在文獻BLANK1.C中。不得增行或刪行,也不得更改程序的結(jié)構(gòu)!【參考答案】(1)n++(2)0(3)s++二、程序修改題下列給定程序中,函數(shù)fun的功能是:從n個學(xué)生的成績中記錄出低于平均分的學(xué)生人數(shù),此人數(shù)作為函數(shù)值返回,平均分存放在形參aver所指的存儲單元中。例如,輸入8名學(xué)生的成績:80.5、60、72、90.5、98、51.5、88、64則低于平均分的學(xué)生人數(shù)為4(平均分為75.5625)。請改正程序中的錯誤,使它能得出對的的結(jié)果。注意:部分源程序在文獻MODI1.C中,不要改動main函數(shù),不得增行或刪行,也不得更改程序的結(jié)構(gòu)!【參考答案】(1)t+=s[k];(2)*aver=ave;三、程序設(shè)計題請編寫一個函數(shù)intfun(int*s,intt,int*k),用來求出數(shù)組的最大元素在數(shù)組中的下標(biāo)并存放在k所指向的存儲單元中。例如,輸入如下整數(shù):876675896101301401980431451777則輸出結(jié)果為6,980。注意:部分源程序在文獻PROG1.C中。請勿改動主函數(shù)main和其他函數(shù)中的任何內(nèi)容,僅在函數(shù)fun的花括號中填入你編寫的若干語句。【參考答案】intfun(int*s,intt,int*k){inti;*k=0;/*k所指的數(shù)是數(shù)組的下標(biāo)值*/for(i=0;i<t;i++)if(s[*k]<s[i])*k=i;/*找到數(shù)組的最大元素,把該元素的下標(biāo)賦給k所指的數(shù)*/returns[*k];/*返回數(shù)組的最大元素*/}二級C_第34套上機題一、程序填空題給定程序中,函數(shù)fun的功能是:在3×4的矩陣中找出在行上最大、在列上最小的那個元素,若沒有符合條件的元素則輸出相應(yīng)信息。例如,有下列矩陣:12134781063597程序執(zhí)行結(jié)果為:find:a[2][2]=9請在程序的下畫線處填入對的的內(nèi)容并把下畫線刪除,使程序得出對的的結(jié)果。注意:部分源程序在文獻BLANK1.C中。不得增行或刪行,也不得更改程序的結(jié)構(gòu)!【參考答案】(1)j(2)0(3)i++二、程序修改題下列給定程序中,函數(shù)fun的功能是:根據(jù)整形參m的值,計算如下公式的值。例如,若m中的值為5,則應(yīng)輸出0.536389。請改正程序中的錯誤,使它能得出對的的結(jié)果。注意:部分源程序在文獻MODI1.C中,不要改動main函數(shù),不得增行或刪行,也不得更改程序的結(jié)構(gòu)!【參考答案】(1)for(i=2;i<=m;i++)(2)y-=1.0/(i*i);三、程序設(shè)計題m個人的成績存放在score數(shù)組中,請編寫函數(shù)fun,它的功能是:將低于平均分的人數(shù)作為函數(shù)值返回,將低于平均分的分數(shù)放在below所指的數(shù)組中。例如,當(dāng)score數(shù)組中的數(shù)據(jù)為10、20、30、40、50、60、70、80、90時,函數(shù)返回的人數(shù)應(yīng)當(dāng)是4,below中的數(shù)據(jù)應(yīng)為10、20、30、40。注意:部分源程序在文獻PROG1.C中。請勿改動主函數(shù)main和其他函數(shù)中的任何內(nèi)容,僅在函數(shù)fun的花括號中填入你編寫的若干語句。【參考答案】intfun(intscore[],intm,intbelow[]){inti,j=0;floatav=0.0;for(i=0;i<m;i++)av=av+score[i]/m;/*求平均值*/for(i=0;i<m;i++)if(score[i]<av)/*假如分數(shù)低于平均分,則將此分數(shù)放入below數(shù)組中*/below[j++]=score[i];returnj;/*返回低于平均分的人數(shù)*/}二級C_第35套上機題一、程序填空題下列給定程序中,函數(shù)fun的功能是:有N×N矩陣,將矩陣的外圍元素做順時針旋轉(zhuǎn)。操作順序是:一方面將第一行元素的值存入臨時數(shù)組r,然后使第一列成為第一行,最后一行成為第一列,最后一列成為最后一行,再使臨時數(shù)組中的元素成為最后一

溫馨提示

  • 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論