11年二級最新題庫(1).doc_第1頁
11年二級最新題庫(1).doc_第2頁
11年二級最新題庫(1).doc_第3頁
11年二級最新題庫(1).doc_第4頁
11年二級最新題庫(1).doc_第5頁
已閱讀5頁,還剩7頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、下下編【2-3頁】1:下下編2:下下編3:下下編4:下下編5:下下編6:下下編7:下下編8:下下編9:下下編10:下下編11:下下編12:下下編13:下下編14:下下編15:下下編16:下下編17:下下編18:下下編19:下下編20:下下編21:下下編2、下下請【3-43頁】22:下下請23:下下請24:下下請25:下下請26:下下請27:下下請28:下下請29:下下請3、下下規(guī)【4-5頁】30:下下規(guī)31:下下規(guī)32:下下規(guī)33:下下規(guī)34:下下規(guī)35:下下規(guī)36:下下規(guī)37:下下規(guī)4、下下學【5頁】38:下下學39:下下學40:下下學41:下下學5、下下函【5-6頁】42:下下函43:下下函44:下下函45:下下函6、下開頭其他【6頁】46:下下某47:下下N48:下由假49:下在編50:下在請51:下下已52:下N編7、給下請【6-8頁】53:給下請54:給下請55:給下請56:給下請57:給下請58:給下請59:給下請60:給下請61:給下請62:給下請63:給下請64:給下請65:給下請8、給下編【8頁】66:給下編67:給下編68:給下編69:給下編70:給下編71:給下編72:給下編9、給開頭其他【8-9頁】73:給給請74:給下已75:給下下76:給下下10、程下請【9頁】77:程下請78:程下請79:程下請11、程下學【9頁】80:程下學81:程下學12、程開頭其他【9-10頁】82:程下規(guī)83:程下編84:程下N85:程假學86:程下程13、函下請【10頁】87:函下請88:函下請89:函下請90:函下請91:函下請92:函下請93:函下請94:函數(shù)請14、請下請【10-11頁】95:請下請96:請下請97:請下請98:請下請99:請下請15、請下下【11頁】100:請下下101:請下下16、請開頭其他【11-12頁】102:請下已103:請下m104:請已假105:請下請17、其他開頭【12頁】106:人下請107:用下請108:甲下請109:s下請110:N下請上機考試題庫題目查詢目錄下下編1【填空】下列給定程序中,函數(shù)fun的功能是:計算如下公式前n項的和并作為函數(shù)值返回。例如,當形參n的值為10時,函數(shù)返回值為9.612558?!敬鸢浮俊?】 0【2】 n【3】 (t*t)【改錯】下列給定程序中函數(shù)fun的功能是:統(tǒng)計substr所指的子符串在str所指的字符串中出現(xiàn)的次數(shù)。例如,若字符串為aaas 1kaaas,子字符串為as,則應輸出2?!敬鸢浮俊?】for(i=0;stri;i+)【2】if(substrk+1= 0)【編程】編寫函數(shù)fun,其功能是:根據(jù)以下公式求的值(要求精度0.0005,即某項小于0.0005時停止迭代)。程序運行后,若輸入精度0.0005,則程序應輸出為3.14?!敬鸢浮緿ouble fun(double eps)double s=1.0,s1=1.0;int n=1;while(s1=eps) s1=s1s=s+s1;n+;return 22【填空】下列給定程序中,函數(shù)fun的功能是:將形參n中,各位上為偶數(shù)的數(shù)取出,并按原來從高位到低位相反的順序組成一個新數(shù),作為函數(shù)值返回。例如,輸入一個整數(shù)27638496,函數(shù)返回值為64862?!敬鸢浮俊?】 0【2】 10*x【3】n/10【改錯】下列給定程序中函數(shù)fun的功能是:將長整型數(shù)中各位上為奇數(shù)的數(shù)依次取出,構成一個新數(shù)放在t中。高位仍在高位,低位仍在低位。例如,當s中的數(shù)為87653142時,t中的數(shù)為7531?!敬鸢浮俊?】*t=0;【2】if(d%2!=0)【編程】編寫函數(shù)fun,其功能是:實現(xiàn)兩個字符串的連接(不要使用庫函數(shù)strcat),即把p2所指的字符串連接到p1所指的字符串的后面。例如,分別輸入下面兩個字符串:FirstStringSecondString程序輸出:FirstString-SecondString【答案】void fun(char p1,char p2)int i,j;for(i=0;p1i!=0;i+);for(j=0;p2j!=0;j+)p1i+=p2j;p1i=0;3【填空】下列給定程序中函數(shù)fun的功能是:求ss所指字符串數(shù)組中長度最短的字符串所在的行下標,作為函數(shù)值返回,并把其串長放在形參n所指的變量中。ss所指字符串數(shù)組中共有M個字符串,且串長N?!敬鸢浮俊?】M【2】=a)&( tti = z) 【2】tti-=32;【編程】編寫函數(shù)fun,其功能是:將所有大于1小于整數(shù)m的非素數(shù)存入xx所指數(shù)組中,非素數(shù)的個數(shù)通過k返回。例如,若輸入17,則應輸出:46891012141516?!敬鸢浮縱oid fun(int m, int *k, int xx)int i,j,n=0;for(i=4;im;i+)for(j=2;ji;j+)if(i%j=0) break;if(ji) xxn+=i;*k=n;4【填空】下列給定程序中函數(shù)fun的功能是:將s所指字符串中的所有數(shù)字字符移到所有非數(shù)字字符之后,并保持數(shù)字字符串和非數(shù)字字符串原有的次序。例如,s所指的字符串為def35adh3kjsdf7,執(zhí)行后結果為defadhajsdf3537?!敬鸢浮俊?】j+ 【2】si=t1i 【3】j【改錯】下列給定程序中函數(shù)fun的功能是:用冒泡法對6個字符串進行升序排列?!敬鸢浮俊?】for (j=i+1; j 6; j+)【2】*(pstr+i)=*(pstr+j);【編程】編寫函數(shù)fun,其功能是:求ss所指字符串中指定字符的個數(shù),并返回此值。例如,若輸入字符串123412132,輸入字符為1,則輸出3?!敬鸢浮縤nt fun(char *ss, char c)int i=0;for(;*ss!=0;ss+)if(*ss=c) i+;return i;5【填空】下列給定程序中已建立一個帶頭結點的單向鏈表,鏈表中的各結點按結點數(shù)據(jù)域中的數(shù)據(jù)遞增有序鏈接。函數(shù)fun的功能是:把形參x的值放入一個新結點并插入鏈表中,使插入后各結點數(shù)據(jù)域中的數(shù)據(jù)仍保持遞增有序?!敬鸢浮俊?】x 【2】p 【3】s【改錯】下列給定程序中函數(shù)fun的功能是:計算正整數(shù)num各位上的數(shù)字之積。例如,若輸入252,則輸出應該是20。若輸入202,則輸出應該是0。【答案】【1】long k=1; 【2】num /=10;【編程】編寫函數(shù)fun,其功能是:計算n門課程的平均分,結果作為函數(shù)值返回。例如:若有5門課程的成績是:90.5,72,80,61.5,55,則函數(shù)的值為:71.80。【答案】float fun (float *a, int n)float av=0.0;int i;for(i=0;in;i+)av=av+ai;return (av/n);6【填空】下列給定程序中,函數(shù)fun的功能是:把形參s所指字符串中下標為奇數(shù)的字符右移到下一個奇數(shù)位置,最右邊被移出字符串的字符繞回放到第一個奇數(shù)位置,下標為偶數(shù)的字符不動(注:字符串的長度大于等于2)。例如,形參s所指字符串為abcdefgh,執(zhí)行結果為ahcbedgf?!敬鸢浮俊?】1 【1】sk 【1】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ù)。【答案】【1】long s=0, t=0; 【1】t=t/10;【編程】編寫函數(shù)void fun(char *tt,int pp),統(tǒng)計在tt所指的字符串中a到z26個小寫字母各自出現(xiàn)的次數(shù),并依次放在pp所指的數(shù)組中。例如,當輸入字符串a(chǎn)bcdefgabcdeabc后,程序的輸出結果應該是:3 3 3 2 2 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0【答案】void fun(char *tt, int pp)int i;for(i=0;i=a&*ttdata【3】t【改錯】下列給定程序中函數(shù)fun的功能是:將字符串中的字符逆序輸出,但不改變字符串中的內容。例如,若字符串為abcd,則應輸出:dcba。【答案】【1】void fun(char *a)【2】printf(%c ,*a);【編程】編寫函數(shù)fun,其功能是:比較字符串的長度,(不得使用C語言提供的求字符串長度的函數(shù)),函數(shù)返回較長的字符串。若兩個字符長度相同,則返回第一個字符串。例如,輸入beijingshanghai(為回車鍵),函數(shù)將返回shanghai?!敬鸢浮縞har *fun(char *s, char *t)int i,j;for(i=0;si!= 0;i+); for(j=0;tj!= 0;j+);if(i=j) return s; else return t;8【填空】下列給定程序的功能是:調用函數(shù)fun將指定源文件中的內容復制到指定的目標文件中,復制成功時函數(shù)返回1,失敗時返回0。在復制的過程中,把復制的內容輸出到屏幕。主函數(shù)中源文件名放在變量sfname中,目標文件名放在變量tfname中?!敬鸢浮俊?】r 【2】fs【3】ft【改錯】下列給定程序中函數(shù)fun的功能是:將長整型數(shù)中各位上為偶數(shù)的數(shù)依次取出,構成一個新數(shù)放在t中。高位仍在高位,低位仍在低位。例如,當s中的數(shù)為87653142時,t中的數(shù):8642?!敬鸢浮俊?】if(d%2=0)【2】s/=10;【編程】編寫函數(shù)fun,其功能是:將兩個兩位數(shù)的正整數(shù)a、b合并成一個整數(shù)放在c中。合并的方式是:將a數(shù)的十位和個位數(shù)依次放在c數(shù)的十位和千位上,b數(shù)的十位和個位數(shù)依次放在c數(shù)的百位和個位上。例如,當a=45,b=12時,調用該函數(shù)后,c =5142。【答案】void fun(int a,int b,long *c)*c=b%10+(a/10)*10+(b/10)*100+(a%10)*1000;9【填空】下列給定程序中函數(shù)fun的功能是:有NN矩陣,根據(jù)給定的m(m=2) & (n=1e-6);return x1;10【填空】下列給定程序的功能是:從鍵盤輸入若干行字符串(每行不超過80個字符),寫入文件myfile4.txt中,用-1作字符串輸入結束的標志,然后將文件的內容顯示在屏幕上。文件的讀寫分別由函數(shù)ReadText和WriteText實現(xiàn)?!敬鸢浮俊?】*fw 【2】str 【3】str【改錯】下列給定程序中函數(shù)fun的功能是:從低位開始依次取出長整型變量s中奇數(shù)位上的數(shù),構成一個新數(shù)存放在t中。高位仍在高位,低位仍在低位。例如,當s中的數(shù)為7654321時,t中的數(shù)為7531?!敬鸢浮俊?】void fun(long s,long *t)【2】s1=s1*10【編程】編寫函數(shù)fun,其功能是:將兩個兩位數(shù)的正整數(shù)a、b合并成一個整數(shù)放在c中。合并的方式是:將a數(shù)的十位和個位數(shù)依次放在c數(shù)的個位和百位上,b數(shù)的十位和個位數(shù)依次放在c數(shù)的千位和十位上。例如,當a=45,b=12時,調用該函數(shù)后,c=1524。【答案】void fun(int a,int b,long *c)*c=a/10+(b%10)*10+(a%10)*100+(b/10)*1000;11【填空】下列給定程序中函數(shù)fun的功能是:有NN矩陣,將矩陣的外圍元素做順時針旋轉。操作順序是:首先將第一行元素的值存入臨時數(shù)組r,然后使第一列成為第一行,最后一行成為第一列,最后一列成為最后一行,再使臨時數(shù)組中的元素成為最后一列。例如,若N=3,有下列矩陣:123456789操作后應為:741852963【答案】【1】0【2】j-【3】j【改錯】下列給定程序中函數(shù)fun的功能是:計算S=f(-n)+f(-n+1)+f(0)+f(1)+f(2)+f(n)的值。例如,當n的值為5時,函數(shù)值應為10.407143。f(x)函數(shù)定義如下: f(x)=(x+1)/(x-2)x0且x2 f(x) 0x=0或x=2(x-1)/(x-2) x0【答案】【1】double f(double x)【2】return s ;【編程】編寫函數(shù)fun,其功能是計算:s作為函數(shù)值返回。在C語言中可調用log(n)函數(shù)求ln(n)。log函數(shù)的引用說明為:double log(double x)。例如,若m的值為20,則fun函數(shù)值為6.506583?!敬鸢浮縟ouble fun(int m)int i;double s=0.0;for(i=1;i=m;i+) s=s+log(i);return sqrt(s);12【填空】下列給定程序中已建立了一個帶頭結點的單向鏈表,鏈表中的各結點按數(shù)據(jù)域遞增有序鏈接。函數(shù)fun的功能是:刪除鏈表中數(shù)據(jù)域值相同的結點,使之只保留一個。【答案】【1】q 【2】next 【3】next【改錯】下列給定程序中函數(shù)fun的功能是:用選擇法對數(shù)組中的n個元素進行升序排列?!敬鸢浮俊?】p=j;【2】p=i;【編程】編寫函數(shù)fun,其功能是:將1到m之間(含m)能被7或11整除的所有整數(shù)放在數(shù)組a中,并通過n返回這些數(shù)的個數(shù)。例如,若傳給m的值為50,則程序輸出:711142122283335424449【答案】void fun(int m, int *a, int *n)int i,j=0;for(i=1;i=m;i+)if(i%7=0|i%11=0)aj+=i;*n=j;13【填空】下列給定程序中函數(shù)fun的功能是計算下式直到,并將計算結果作為函數(shù)值返回。例如,若形參e的值為1e-3,函數(shù)的返回值為2.985678?!敬鸢浮俊?】0 【2】i+ 【3】2.0*i【改錯】下列給定程序中函數(shù)fun的功能是:將s所指字符串的正序和反序進行連接,形成的新串放在t所指的數(shù)組中。例如,當s所指字符串為:ABCD時,t所指字符串中的內容應為:ABCDDCBA。【答案】【1】void fun ( char *s , char *t ) 【2】td+i=0;【編程】編寫函數(shù)fun,其功能是:將s所指字符串中除了下標為奇數(shù)同時ASCII值也為奇數(shù)的字符之外,其余的所有字符全部刪除,串中剩余字符所形成的一個新串放在t所指的數(shù)組中。例如,若s所指字符串的內容為:ABCDEFG12345,其中字符A的ASCII碼值為奇數(shù),但所在元素的下標為偶數(shù),因此需要刪除;而字符1的ASCII碼值為奇數(shù),所在數(shù)組中的下標也為奇數(shù),因此不應當刪除,其它依此類推。最后t所指數(shù)組中的內容應為:135。【答案】void fun(char *s,char t) int i,j=0,n;n=strlen(s);for(i=0;in;i+)if(i%2!=0&si%2!=0) tj=si; j+;tj=0;14【填空】下列給定程序中函數(shù)fun的功能是:在形參s所指字符串中的每個數(shù)字字符之后插入一個*號。例如,形參s所指的字符串為def35adh3kjsdf7,執(zhí)行后結果為def3 【答案】【1】& 【2】0 【3】sj【改錯】下列給定程序中函數(shù)fun的功能是:根據(jù)整型形參m,計算如下公式的值。 例如,若m的值為5,則應輸出1.463611?!敬鸢浮俊?】for(i=2;i=m;i+) 【2】y+=1.0/(i*i);【編程】編寫函數(shù)fun,其功能是:實現(xiàn)B=A+A,即將矩陣A加上A的轉置,存放在矩陣B中。計算結果在main函數(shù)中輸出。例如,輸入下面的矩陣:其轉置矩陣為: 程序輸出:26106 1014101418【答案】void fun (int a33, int b33)int i,j;for(i=0;i3;i+)for(j=0;j=num)【2】t=s/n;【編程】編寫函數(shù)fun,其功能是:刪除一個字符串中指定下標的字符。其中,a指向原字符串,刪除指定字符后的字符串存放在b所指的數(shù)組中,n中存指定的下標。例如,輸入一個字符串world,然后輸入3,則調用該函數(shù)后的結果為word。【答案】void fun (char a(), char b(), int n)int i,k=0;for(i=0;ai!=0;i+) if(i!=n) bk+=ai;bk=0;16【填空】下列給定程序中函數(shù)fun的功能是:將形參s所指字符串中的所有字母字符順序前移,其他字符順序后移,處理后將新字符串的首地址作為函數(shù)值返回。例如,若s所指字符串為:asd123fgh543df,處理后新字符串為:asdfghdf123543?!敬鸢浮俊?】si 【2】k 【3】0【改錯】下列給定程序中函數(shù)fun的功能是:將s所指字符串中最后一次出現(xiàn)的與t1所指字符串相同的子串替換成t2所指字符串,所形成的新串放在w所指的數(shù)組中。要求t1和t2所指字符串的長度相同。例如,當s所指字符串中的內容為:abcdabfabc,t1所指串中的內容為ab,t2所指子串中的內容為99時,結果在w所指的數(shù)組中的內容應為abcdabf99c?!敬鸢浮俊?】while (*w)【2】if ( *r = *p )【編程】編寫函數(shù)fun,其功能是:將s所指字符串中ASCII值為奇數(shù)的字符刪除,剩余字符形成的新串放在t所指數(shù)組中。例如,若s所指字符串中的內容為:ABCDEFG12345,其中字符A的ASCII碼值為奇數(shù)、字符1的ASCII碼值也為奇數(shù)、都應當刪除,其它依此類推。最后t所指的數(shù)組中的內容應是:BDF24。【答案】void fun(char *s,char t)int i,j=0,n;n=strlen(s);for(i=0;in;i+)if(si%2=0)tj=si;j+;tj=0;17【填空】下列給定程序中函數(shù)fun的功能是:將自然數(shù)110及其平方根寫到名為myfile3.txt的文本文件中,然后再順序讀出顯示在屏幕上?!敬鸢浮俊?】fp 【2】fclose(fp)【3】fname【改錯】下列給定程序中fun函數(shù)功能是:將n個無序整數(shù)從小到大排序?!敬鸢浮俊?】for(i=j+1;in;i+) 【2】p=i;【編程】編寫函數(shù)fun,其功能是:將兩個兩位數(shù)的正整數(shù)a、b合并成一個整數(shù)放在c中。合并的方式是:將a數(shù)的十位和個位數(shù)依次在c數(shù)的個位和百位上,b數(shù)的十位和個位數(shù)依次放在c數(shù)的十位和千位上。例如,當a=45,b=12時,調用該函數(shù)后c=2514。【答案】void fun(int a,int b,long *c)*c=a/10+(b/10)*10+(a%10)*100+(b%10)*1000;18【填空】下列給定程序中函數(shù)fun的功能是:將NN矩陣中元素的值按列向右移動1個位置,右邊被移出矩陣的元素繞回左邊第1列。例如,N=3,有下列矩陣123456789計算結果為312645978【答案】【1】N 【2】N-1 【3】0【改錯】下列給定程序中函數(shù)fun的功能是:計算并輸出下列級數(shù)的前N項和SN,直到SN+1的值大于q為止,q的值通過形參傳入。例如,若q的值為50.0,則函數(shù)值應為49.394948?!敬鸢浮俊?】s=s + (double)(n+1)/n; 【2】return t;【編程】編寫函數(shù)fun,其功能是:求Fibonacci數(shù)列中大于t的最小的數(shù),結果由函數(shù)返回。Fibonacci數(shù)列F(n)的定義為:F(0)=0,F(xiàn)(1)=1F(n)=F(n-1)+F(n-2)例如,當t=1000時,函數(shù)值為1597。【答案】int fun(int t)int f0=0, f1=1,f;dof=f0+f1;f0=f1; f1=f;while(f=a&ssi0【3】 i*10【改錯】下列給定程序中函數(shù)fun的功能是:輸出MM整數(shù)方陣,然后求兩條對角線上元素之和,并作為函數(shù)值返回。【答案】【1】int fun(int n,int xxM)【2】printf(%d,xxij);【編程】編寫函數(shù)fun,其功能是:將a、b中的兩個兩位數(shù)正整數(shù)合并成一個新的整數(shù)放在c中。合并的方式是:將a中的十位和個位數(shù)依次放在變量c的千位和十位上,b中的十位和個位數(shù)依次在變量c的個位和百位上。例如,當a=45,b=12,調用該函數(shù)后c=4251。【答案】void fun(int a,int b,long *c)*c=b/10+(a%10)*10+(b%10)*100+(a/10)*1000;21【填空】下列給定程序中函數(shù)fun()的功能是:按順序給s所指數(shù)組中的元素賦予從2開始的偶數(shù),然后再按順序對每5個元素求一個平均值,并將這些值依次存放在w所指的數(shù)組中。若s所指數(shù)組中元素的個數(shù)不是5的倍數(shù),多余部分忽略不計。例如,s所指數(shù)組有14個元素,則只對前10個元素進行處理,不對最后的4個元素求平均值?!敬鸢浮俊?】%【2】return【3】bi【改錯】下列給定程序中,函數(shù)fun()的功能是逐個比較a,b兩個字符串對應位置中的字符,把ASCII值大或相等的字符依次存放到c數(shù)組中,形成一個新的字符串。例如:a中的字符串為aBCDeFgH,b中的字符串為ABcd,則c中的字符串應為aBcdeFgH?!敬鸢浮俊?】int k=0;【2】while(*p|*q)【編程】編寫函數(shù)fun(),它的功能是利用以下所示的簡單迭代方法求方程cos(x)-x=0的一個實根。xn+1 =cos(xn),迭代步驟如下:(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ù)值返回。程序輸出結果Root=0.739085。【答案】float fun() float x1=0.0,x0;do x0=x1;x1=cos(x0); return x1; 下下請22【填空】下列給定程序中,函數(shù)fun的功能是計算如下公式。直到,并且把計算結果作為函數(shù)值返回。例如,若形參e的值為1e-3,則函數(shù)返回值為0.551690。【答案】【1】3.0 【2】 【3】(t+1)【改錯】下列給定程序中函數(shù)fun的功能是:求出如下分數(shù)序列的前n項之和。和值通過函數(shù)值返回。例如,若n=5,則應輸出8.391667?!敬鸢浮俊?】double fun(int n)【2】s=s+(double)a/b;【編程】請編寫函數(shù)fun,其功能是:找出2M整型二維數(shù)組中最大元素的值,并將此值返回調用函數(shù)。【答案】int fun (int a M)int i,j,max=a00;for(i=0;i2;i+)for(j=0;jM;j+)if(maxaij) max=aij;return max;23【填空】下列給定程序中函數(shù)fun的功能是:計算下式前n項的和,并作為函數(shù)值返回。例如,若主函數(shù)從鍵盤給n輸入50后,則輸出為S=1.960784?!敬鸢浮俊?】double 【2】j 【3】1.0/t【改錯】下列給定程序中函數(shù)fun的功能是:判斷一個整數(shù)是否為素數(shù),若是素數(shù)返回1,否則返回0。 在main()函數(shù)中,若fun返回1輸出YES,若fun返回0輸出NO!?!敬鸢浮俊?】k+ ; 【2】if(m=k)【編程】請編寫函數(shù)fun,其功能是:找出一維整型數(shù)組元素中最大的值及其所在的下標,并通過形參傳回。數(shù)組元素中的值已在主函數(shù)中賦予。主函數(shù)中x是數(shù)組名,n是x中的數(shù)據(jù)個數(shù),max存放最大值,index存放最大值所在元素的下標?!敬鸢浮縱oid fun(int a,int n, int *max, int *d)int i;*max=a0;*d=0;for(i=0;in;i+)if(*maxai)*max=ai;*d=i;24【填空】下列給定程序中,函數(shù)fun的功能是:將形參n所指變量中,各位上為偶數(shù)的數(shù)去掉,剩余的數(shù)按原來從高位到低位的順序組成一個新數(shù),并通過形參指針n傳回所指變量。例如,若輸入一個數(shù)27638496,則新數(shù)為739?!敬鸢浮俊?】10 【2】0 【3】x【改錯】下列給定程序中函數(shù)fun的功能是:計算n!。例如,給n輸入5,則輸出120.000000?!敬鸢浮俊?】if( n=0)【2】result *=n-;【編程】請編寫函數(shù)fun,其功能是:將一個數(shù)字字符串轉換為一個整數(shù)(不得調用C語言提供的將字符串轉換為整數(shù)的函數(shù))。例如,若輸入字符串-1234,則函數(shù)把它轉換為整數(shù)值-1234。【答案】long fun(char *p)long n=0;int flag=1;if(*p=-)else if(*p=+)p+;while(*p!=0)n=n*10+*p-0;p+;return n*flag;25【填空】下列給定程序中函數(shù)fun()的作用是:將字符串tt中的大寫字母都改為對應的小寫字母,其他字符不變。例如,若輸入Ab,cD,則輸出ab,cd?!敬鸢浮俊?】* 【2】Z 【3】tt【改錯】下列給定程序的功能是讀入一個整數(shù)k(2k10000),打印它的所有質因子(即所有為素數(shù)的因子)。例如:輸入整數(shù)2310,則應輸出2,3,5,7,11。【答案】【1】IsPrime(int n)【2】if(!(n%i)【編程】請編寫函數(shù)fun,其功能是:將兩個兩位數(shù)的正整數(shù)a,b合并形成一個整數(shù)放在c中。合并的方式是:將a數(shù)的十位和個位數(shù)依次在c數(shù)千位和十位上,b數(shù)的十位和個位數(shù)依次放在c數(shù)的個位和百位。例如,當a=45,b=12,調用該函數(shù)后,c=4251?!敬鸢浮縱oid fun(int a,int b,long *c)*c=(a%10)*1000+(b%10)*100+(a/10)*10+b/10;26【填空】下列給定程序中函數(shù)fun()的功能是:將s所指字符串中的字母轉換為按字母序列的后續(xù)字母(但Z轉化為A,z轉化為a),其他字符不變?!敬鸢浮俊?】*s 【2】1 【3】s+【改錯】下列給定程序中fun()函數(shù)的功能是分別統(tǒng)計字符串中大寫字母和小寫字母的個數(shù)。例如:給字符串s輸入AAaaBBb123CCccccd,則應輸出結果為upper=6,lower=8。【答案】【1】void fun(char *s,int *a,int *b) 【2】(*a)+ ; 【3】(*b)+; 【編程】請編一個函數(shù)void fun(int ttMN, int ppN),tt指向一個M行N列的二維數(shù)組,求出二維數(shù)組每列中最小元素,并依次放入pp所指的一維數(shù)組中。二維數(shù)組中的數(shù)已在主函數(shù)中給出。【答案】void fun(int ttMN,int ppN)int i,j,min;for(j=0;jN;j+)min=tt0j; for(i=0;iM;i+) if(ttijdata=rand()%(m-1);【編程】請編一個函數(shù)fun(char *s), 該函數(shù)的功能是把字符串中的內容逆置。例如:字符串中原有的字符串為abcdefg,則調用該函數(shù)后,串中的內容為gfedcba?!敬鸢浮縡un(char *s)char ch;int i,n;i=0;n=strlen(s)-1; while(i=(n+1)/2) ch=si;si=sn;sn=ch;i+;n-; 28【填空】下列給定程序中fun()函數(shù)的功能是:將n個無序整數(shù)從小到大排序。【答案】【1】n-1【2】j+1【3】z+【改錯】下列給定程序中函數(shù)fun()的功能是根據(jù)整型形參m,計算如下公式的值。例如:m中的值為5,則應輸1.463611。【答案】【1】for(i=2;i=m;i+)【2】y+=1.0/(i*i);【編程】請編寫函數(shù)fun(),對長度為7個字符的字符串,除首、尾字符外,將其余5個字符按ASCII值碼降序排列。例如:原來的字符串為CEAedca,則排序后輸出為CedcEAa。【答案】int fun(char *s, int num)char t; int i, j; for(i=1;inum-2;i+) for(j=i+1;jnum-1;j+) if(sisj) t=si;si=sj;sj=t; 29【填空】下列給定程序中函數(shù)fun()的功能是:根據(jù)形參m的值(2m9),在m行m列的二維數(shù)組中存放如下所示的數(shù)據(jù),由main()函數(shù)輸出。例如,若輸入2,則輸出1 22 4輸入4,則輸出1 2 3 42 4 6 83 6 9 124 8 12 16【答案】【1】#define【2】(k+1)*(j+1)【3】n【改錯】下列給定程序中函數(shù)fun()的功能是:計算n!。例如:給n輸入5,則輸出120.000000。【答案】【1】if(n=0)【2】result*=n-;【編程】請編寫函數(shù)fun(),其功能是將s所指字符串中除了下標為奇數(shù)、同時ASCII值也為奇數(shù)的字符之外,其余的所有字符都刪除。字符串中剩余的字符所形成的一個新的字符串放在t所指的數(shù)組中。例如:s所指字符串中的內容為ABCDEFG12345,其中字符A的ASCII碼值雖為奇數(shù),但元素所在的下標為偶數(shù),因此必需刪除;字符1的ASCII碼值為奇數(shù),所在數(shù)組中的下標也為奇數(shù),不刪除,最后t所指的數(shù)組中的內容應是135。【答案】void fun(char *s,char t ) int i,j=0,n;n=strlen(s);for(i=0;in;i+) tj=si;j+;tj=0;下下規(guī)30【填空】下列給定程序中,函數(shù)fun的功能是:把形參a所指數(shù)組中的奇數(shù)按原順序依次存放到a0、a1、a2、中,把偶數(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。【答案】【1】1 【2】j+ 【3】j【改錯】下列給定程序中函數(shù)fun的功能是:求兩個非零正整數(shù)的最大公約數(shù),并作為函數(shù)值返回。例如,若num1和num2分別為49和21,則輸出的最大公約數(shù)為7;若num1和num2分別為27和81,則輸出的最大公約數(shù)為27。【答案】【1】t=a;a=b;b=t;【2】return(b);【編程】規(guī)定輸入的字符串中只包含字母和*號。編寫函數(shù)fun,其功能是:刪除字符串中所有的*號。編寫函數(shù)時,不得使用C語言提供的字符串函數(shù)。例如,字符串中的內容為:*A*BC*DEF*G*,刪除后字符串中的內容應當是:ABCDEFG?!敬鸢浮縱oid fun(char *a)int i,j=0;for(i=0;ai!=0;i+) if(ai!=*) aj+=ai;aj=0;31【填空】下列給定程序中函數(shù)fun的功能是:從形參ss所指字符串數(shù)組中,刪除所有串長超過k的字符串,函數(shù)返回剩余字符串的個數(shù)。ss所指字符串數(shù)組中共有N個字符串,且串長小于M。【答案】【1】N 【2】k 【3】ssi【改錯】下列給定程序中函數(shù)fun的功能是:逐個比較p、q所指兩個字符串對應位置上的字符,并把ASCII值大或相等的字符依次存放到c所指的數(shù)組中,形成一個新的字符串。例如,若主函數(shù)中a字符串為aBCDeFgH,b字符串為ABcd,則c中的字符串應為aBcdeFgH。【答案】【1】int k=0; 【2】while (*p|*q)【編程】規(guī)定輸入的字符串中只包含字母和*號。請編寫函數(shù)fun,其功能是:除了字符串前導的*號之外,將串中其它*號全部刪除。在編寫函數(shù)時,不得使用C語言提供的字符串函數(shù)。例如,字符串中的內容為:*A*BC*DEF*G*,刪除后,字符串中的內容應當是:*ABCDEFG。【答案】void fun(char *a)int i=0;char *p=a;while(*p&*p=*)ai=*p;i+;p+;while(*p)if(*p!=*)ai=*p;i+;p+;ai=0;32【填空】下列給定程序中函數(shù)fun的功能是:在形參ss所指字符串數(shù)組中查找與形參t所指字符串相同的串,找到后返回該串在字符串數(shù)組中的位置(即下標值),若未找到則返回-1。ss所指字符串數(shù)組中共有N個內容不同的字符串,且串長小于M。【答案】【1】N 【2】i 【3】-1【改錯】下列給定程

溫馨提示

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

評論

0/150

提交評論