國二機試答案(DOC)_第1頁
國二機試答案(DOC)_第2頁
已閱讀5頁,還剩6頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、1、程序填空題 給定的程序的功能是調(diào)用 fun 函數(shù)建立班 級通訊錄。通訊錄中記錄 每位學生的編號、 姓名和電話號碼班級的人 數(shù)和學生的信息從鍵盤 讀入,每個人的信息作為一個數(shù)據(jù)塊寫到名為 myfile5.dat 的二進 制中。填空:(1) STYPE (2) FILE (3)fp改錯: (1) for(i=0;isl;i+)(2) t2*sl=0或 tsl+sl=0編程:*c=(a/10)*1000+(b/10)*100+(a%10)*10+(b%10);2、程序填空題 給定程序的功能是:從鍵盤輸入若干文本 ( 每行不超過 80 個字符),寫到文件myfile4.txt 中, 用 -1 作為

2、字符串輸出輸入的 標志。然后將文件的內(nèi)容讀出顯示在屏幕 上。文件的讀寫分別由自定義函數(shù) ReadText 和 Writetext 實現(xiàn)。填空: (1) *fw (2) str (3) str改 錯 : (1) void fun(long s,long *t)(2)s1=s1*10;編程: int i,j=0,min=a0.s;for(i=0;iN;i+)if(ai.smin)j=0;bj+=ai;min=ai.s;else if(min=ai.s)bj+=ai;return j;3、程序填空題給定程序中,函數(shù) fun 的功能是:講自 然數(shù)110 以及它們 的平 方根寫到 名為 myfile3.

3、txt 的文本中,然后再按順序讀出顯示在屏幕上。填空:( 1 ) fp( 2) fclose(fp) ( 3) myfile3.txt 改錯:( 1 ) for(i=j+1;in;i+)( 2) p=i;編程:*c=(b%10)*1000+(a%10)*100+(b/10)*10+a/10;4、 程序填空題給定程序中,函數(shù) fun 的功能是:找出形參 s 所指字符串出現(xiàn)頻率最高的字母(不區(qū)分 大小寫),并統(tǒng)計出其出現(xiàn)的次數(shù),例如, 形參 s 所指的字符串為:abcAbsmaxiess, 程序執(zhí)行后的輸出結(jié)果為: letter a:3 times letters:3 times填空:( 1 )r

4、( 2 ) fs ( 3) ft改錯:( 1)if (d%2=0)( 2 ) s/=10;編程:int i = 0, j = 0;while(si)if(i % 2 = 0 & si % 2 = 0)tj+ = si;i+;tj = 0;5、 程序填空題 給定程序中已經(jīng)建立一個帶有頭結(jié)點的單 向鏈表,鏈表中的各結(jié)點數(shù)據(jù)域中的數(shù)據(jù)遞 增有序鏈接,函數(shù) fun 的功能是:把形參 x的值放入一個新結(jié)點并插入到鏈表中, 插入 后各結(jié)點數(shù)據(jù)域的值仍保持遞增有序。填空: (1)x(2)p(3)s改錯: (1)long k=1; (2)num/=10;編程: int i;float aver=0.0

5、; for(i=0;idata (3) t 改錯:(1) voidfun(char *a) (2) print(%c,*a); 編程: int i;char *p=s,*q=t;int n=0,m=0;while(*p) /*計算串 s 的長度 n,其中 p 為臨時指針 */n+;p+;while(*q) /*計算串 t 的長度 m,其中 q 為臨時指針 */m+;q+;if(n=m) /*比較 m 和 n 的值,設(shè)置 p 指向較 大的指針 */p=s;elsep=t;return p;7、 程序填空題 給定程序中建立一個帶有頭結(jié)點的單向鏈 表,鏈表中的各節(jié)點按數(shù)據(jù)域遞增有序鏈接。函數(shù) fun

6、 的功能是:刪除鏈表中數(shù)據(jù)域 值相同的節(jié)點,使之只保留一個。填空: (1) q (2) next (3) next改錯: (1) 缺分號 (2) p = i;編程: *n=0; int i;for(i=1;i=m;i+) if(i%7=0|i%11=0) a*n+=i;8、程序填空題給定的程序中, 函數(shù) fun 的功能是 :在帶有頭 結(jié)點的單向鏈表中,查找數(shù)據(jù)域中值為 ch 的結(jié)點。找到后通過 函數(shù)值返回該結(jié)點在 鏈表所處的順序號;如不存在值為 ch 的結(jié) 點,函數(shù)返回 0 值。填空:(1) 0 或 NULL(2)n (3)head,ch改錯: (1) for(i=0 , t=0;pi;i+)

7、(2) ct=0;編程:*c=(a/10)*1000+(b/10)*100+(a%10)*10+(b%10);9、程序填空題給定程序中,函數(shù) fun 的功能是:統(tǒng)計出帶 有頭結(jié)點的單向鏈表中節(jié)點的個數(shù), 存放在 形參 n 所指的存儲單元中。填空: (1) *n (2) next (3) head改錯: (1) a=NULL; (2) if(*r=*p)編程:int i,j=0;for(i=0;istrlen(s);i+=2)if(si%2=0) tj+=si;tj=0;10、程序填空題給定程序中,函數(shù) fun 的功能是:計算出 帶有頭結(jié)點的單向鏈表中各節(jié)點數(shù)據(jù)域中 值之和作為函數(shù)值返回。填空:

8、(1) data (2) next (3) head 改錯:(1) while(*r)(2) *a=*r;a+;r+; 編程: int i,j=0;for(i=0;istrlen(s);i+=2)tj+=si;tj=0;11、程序填空題給定程序中,函數(shù) fun 的功能是:求 ss 所指 字符串數(shù)組中長度最短的字符串所在的行 下標,作為函數(shù)數(shù)值返回,并把其串長放在 形參 n 所指變量中。Ss 所指字符串數(shù)組中共 有 M 個字符串,且串長 N.填空: (1)M (2) (3)k改 錯 :(1)if(a=tti)&(tti=z)(2)tti-=32;for(j=0;j3;j+)cij=aji

9、;bij=aij+cij;14、程序填空題 給定的程序中, 函數(shù) fun 的功能是 :統(tǒng)計形參 s 所指字符串中數(shù)字字 符出現(xiàn)的次數(shù),并存放在形參 t 所指的變量 中,最后在主函數(shù)中 輸出 ,例如,形參 s 所指的字符串 為abcdef35adgh3kjsdf7 。輸出 結(jié)果為: 4。12、程序填空題給定程序中,函數(shù) fun 的功能是:將 s 所指 字符串中的所有數(shù)字字符移到所有非數(shù)字 字符之后,并保持數(shù)字字符串和非數(shù)字字符 串原有的先后次序。例如:形參 s 所指的字 符串為:def35adh3kjsdf7 。執(zhí)行結(jié)果為: defadhkjsdf3537 填空: (1) j+ (2)si=t1

10、i (3) j 改錯: (1) for(j = i + 1; j 6; j+)(2)*(pstr + i) =*( pstr + j);編程:int cnt=0;char *p=ss;while(*p)if(*p=c)cnt+;p+; return cnt;13.程序填空題 給定程序中, 函數(shù) fun 的功能是:在形參 s 所指字符串中的每個數(shù)字字符之后插入一 個* 號。例如,形參 s 所指的字符串為:def35adh3kjsdf7. 執(zhí) 行 結(jié) 果 為 :def3*5adh3*kjsdf7* 。填空:( 1)& (2)0 (3)sj 改錯( 1)for(i=2;i=m;i+)(2)y

11、+=1.0/(i*i); 編程題: int c33;for(i=0,i3;i+)填空:(1) si (2) 9(3) *t=n ; 改錯:(1) t=*x;*x=y;(2) return (t);編程:int i ;*n=0;for(i=7;i1000;i+)if (i%7)=0)|(i%11)=0)&(i%77)!=0)a(*n)+=i;15、程序填空題 給定的程序中,函數(shù) fun 的功能是 :把形參 s 所指字符串中下標為奇數(shù)的字符右移到下 一個奇數(shù)的位置, 最右邊被移出的字符串的字符繞回放到第一個奇數(shù)位置, 下標為偶數(shù) 的字符不動 (注:字符串的長度大于等于2)例如:形參 s 所

12、指字符串為:abcdefgh,執(zhí) 行結(jié)果為:ahcbedgf填空: (1) 1(2) sk (3) c改錯: (1) long s = 0,t = 0;(2) t = t / 10;編程:char *p=tt;int i;for(i=0;i=a &p=z)pp*p-a+=1;p+;編程: int i,j;int t=0;for(i=2;im;i+)j=2;while(j=num) (2) t=s/n; 編程:intp,m=0;for(p=0;p0.000001); return x1;17、程序填空題給定程序中,函數(shù) fun 的功能是:在形參 s 所指字符串中尋找與參數(shù) c 相同的字符

13、, 并 在其后插入一個與之相同的字符, 若找不到 相同的字符則函數(shù)不做任何處理。例如:s 所指字符字符串為:baacda, c 中得 字符為:a,執(zhí)行后所指字符串為:baaaacdaa填空: (1) 0 或0(2) 0 (3) c改錯: (1) double sum=0.0; (2) sum/=c; 編程: intk;float str=1.0,sum=1.0;for(k=2;k=n;k+)sum=sum+k;str=str+1/sum;return str;18、程序填空題給定程序中,函數(shù) fun 的功能是:NXN 矩 陣,根據(jù)給定的 m( m=N )值,將每行元 素中的值均右移 m 個位置

14、,左邊值為 0.例 如,N=3 , m=2,有下列矩陣12319、 程序填空題給定程序中,函數(shù) fun 的功能是:將 N*N 矩陣中元素的值按列右移 1 個位置, 右邊被 移出矩陣的元素繞回左邊。例如, N=3,有 下列矩陣1 2 34 5 67 8 9計算結(jié)果為3 1 26 4 59 7 8填空: (1)N (2)N-1 (3)0改錯: (1)s=s+(n+1.0)/n; (2)return t;編程: int f0=0,f1=1,f;dof=f0+f1;f0=f1;f1=f;while(f=2)&(n10) (2)85 296 3 填空:(1)0 (2)j- ( 3) j改錯: (

15、1)double f(double x)(2)缺分號編程: double s=0.0;int i;for(i=1;i=m;i+)s=s+log(1.0*i);s=sqrt(s);return s;21、程序填空題給定程序中,函數(shù) fun 功能是:找出 100 至 x( x想 0)編程: STREC tmp;int i,j;for (i=0;iN;i+)for (j=i+1;jN;j+)if(ai,saj,s)tmp=ai;ai=aj;aj=tmp;23、程序填空題給定程序中,函數(shù) fun 的功能是:將形參 n 中,各位上為偶數(shù)的數(shù)取出, 并按原位從高 位到低位的順序組成一個新的數(shù), 并作為函

16、數(shù)值返回。例如,從主函數(shù)輸入一個整數(shù): 27638496 , 函數(shù)返回值為: 26845.填空: (1)1 (2)s (3)i*10改 錯 : (1)int fun(int n,int xxM)(2)printf(%d,xxij);編程:*c=(a/10)*1000+(b%10)*100+(a%10)*10+(b/ 10);24 程序填空題 給定程序中 ,函數(shù) fun 的功能是 :將形參 n 中 , 各位上為偶數(shù)的數(shù)取出 ,并按原來從高位到 低位相反的順序組成一個新的數(shù),并作為函數(shù)返回 .例如 ,輸入一個整數(shù) :27638496, 函數(shù)返回值為:64862.填空 : (1) 0 (2) 10*

17、x (3) n/10 改錯 : (1) *t=0; (2) if(d%2!=0) 編程 : char *p=p1;while (*p)p+;pi+=s;while(*p2)t=n/(2*n+1);*p+=*p2+;s*=t;*p=0;n+;pi=pi*2;return pi;25.程序填空 ( 與教材 18 題對應 )給定的程序中 ,函數(shù) fun 的功能是 :將形參 n27、程序填空題 (與 22 題對應)所指變量中 ,各位上為給定程序中,函數(shù) fun 的功能是:計算下式偶數(shù)的數(shù)去除 .剩下的數(shù)按原來從高位的順前 n 項的和序組成一個新的數(shù) ,并S=(1*3)/(2*2)-(3*5)/(4*4

18、)+(5*7)/(6*6)- ,通過形參兆時指針 n 傳回所指變量 .+(-1)人(n-1)*(2n-1)(2n+1)/(2n*2n)例如 :輸入一個數(shù) :27638496, 新的數(shù) :739.作為函數(shù)植返回。填空 (1) 10(2) 0 (3) x例如,當形參 n 的值為 10 時,函數(shù)返回:改錯(1) if (n = = 0)-0.204491(2)缺分號填空:(1)1(2) 2*i (3) (-1)編程 :long s=0, t;改錯:( 1 ) 缺分號(2) if (m= =k)int i=0,j,n=strlen(p),k,s1;編程: int i;if (p0= -)*max=a0

19、;i+;*d=0;for (j=i;j=n-1;j+)for(i=0;in;i+)t=pj-0;if(*maxai);s1=10;*max=ai;for (k=j;kn-1;k+)*d=i;t*=s1;s+=t;28、程序填空題if (p0=-)給定程序中,函數(shù) fun 的功能是計算下式return -s;s=3/(2*2)-5/(4*4)+7/(6*6)-, +(-1)else return s;(n-1)(2n+1)/(2n*2n)直到 |(2n+1)/(2n*2n)|10*e(-3)26,程序填空題并把計算結(jié)果作為函數(shù)值返回。給定程序中,函數(shù) fun 的功能是:計算下式例如:若形參 e

20、的值為 1e-3,函數(shù)的返回值前 n 項的和作為函數(shù)值返回。為 0.551690。S=( 1*3 )/( 2*2)+(3*5 )/(4*4 )+( 5*7)填空:(1)3.0(2)(3) (2*i+1)/( 6*6) +,+(2n-1)(2n+1)/(2n*2n)改錯:(1 ) double fun (int n)例如:當形參 n 的值為 10 時,函數(shù)返回( 2) s=s+(double)a/b;9.612558.編程:int i,j,max=a00;填空:( 1)0( 2) n( 3) (t*t)for(i=0;i2;i+)改錯:( 1) for(i=0 ; stri ; i+)for (

21、j=0;jM;j+)(2) for(i=0; stri;i+)if (max=eps)29、程序填空題給定程序中,函數(shù) fun 的功能是計算下式s=1/(2*2)+3/(4*4)+5/(6*6)+.(2n-1)/(2n*2n)直到 |(2n-1 ) /(2n*2n)|=10e-3, 并把計算結(jié) 果作為函數(shù)值返回。例如,若形參 e 的值為 1e-3,函數(shù)的返回值2.985678.填空:(1 )0(2) i+ ( 3) 2.0*i改錯: (1 )void fun (char *s,char *t) (2) t2*d=0;編程: int i,j=o;for(i=1;istrlen(s);i+=2)i

22、f (i%2=0&si%2)tj+=si;tj=0;30 程序填空題給定程序中,函數(shù) fun 的功能是,將形參 s 所指字符串的所有字母字符順序前移,其他字符順序后移,處理后 新字符串的首地址作為函數(shù)值返回。例如, s 所指字符串為: asd123fgh543df 處 理后新字符串為asdfghdf123543.填空:( 1 ) si( 2)k(3) 0改錯:(1 ) while (*w)( 2) if(*r=*p)編程: int i,j=0;for(i=1;itj+1) 編程: char *p=ssint i=0;while(*p)if(i%2)&(*p=a&*p=z

23、)*p-=32;p+;i+;32、程序填空題給定程序中, 函數(shù) fun 的功能是: 將 a 所 指 3*5矩陣中第 k 列的元素左移到第 0 列, 第 k 列以后的每列元素依次左移, 原來左邊 的各列依次繞道右邊。例如,有以下矩陣:123451234512345若結(jié)果為,程序執(zhí)行結(jié)果為:345123451234512填空:( 1) k (2) N-1 (3)temp改錯:( 1) void fun(int aM,intm)( 2)ajk=(k+1)*(j+1);編程:*c=(a%10)*1000+(b%10)*100+(a/10)*10+b/ 10;33、程序填空題給定程序中,函數(shù) fun 的

24、功能是:在 3*4 的 矩陣中代出在行上最大、在列上最小的那個 元素,若沒有符合條件的元素則輸出相應信 息。例如:有下列矩陣121347 8 10 63 5 97程序執(zhí)行的結(jié)果為: find:a22=9if(temp%p!=0)填空: (1)j (2)0 (3)i+sign=1;改錯: (1)for(i=2;i=m;i+) (2)y-=1.0/(i*i);else編程: float av=0.0;sign=0;int i,j=0;break;for(i=0;i=temp)for(i=0;i=0)if(avscorei)belowj+=scorei;xxr+=temp;return j;k- -

25、;else break;10;34、程序填空題給定程序中,函數(shù) fun 的功能是:把形36 程序填空題參 s 所指字符串中最右邊的 n 個字符復制到給定程序中,函數(shù) fun 的功能是:計算出形形參 t 所指字符數(shù)組中,形成一個新串。若參 s 所指定字符串中包含的單詞個數(shù), 作為s 所指字符串的長度小于 n ,則將整個字符函數(shù)值返回。 為便于統(tǒng)計,規(guī)定各單詞之間串復制到形參 t 所指字符數(shù)組中。用空格隔開。例如,形參 s 所指的字符串味: abcdefgh,n例如,形參 s 所指的字符串為: This is a C的值為 5,程序執(zhí)行后 t 所指字符串數(shù)組中Ian guge program,函數(shù)

26、的返回值為 6。的字符串為: defgh.填空:( 1 ) n+( 2) 0( 3) s+填空:(1) t,s( 2) si ( 3)0改錯:( 1 ) t+=sk; (2)*aver=ave;改錯:( 1) if (i%k=0) (2)if(k=i)編程: int i,pos=0,max=*s;編程: int i=0;for(i=1;it;i+)*n=0;if(max*(s+i)for (i=1;i=x;i+)max=*(s+i);if(x%i=0)&(i%2)pos=i;pp(*n)+=i;*k=pos;35、給定程序中,函數(shù) fun 的功能是:在形 參 s 所指字符串是否是 “回

27、文” (Palindrome) ,若是,函數(shù)返回值為 1;不是,函數(shù)返回值37、程序填空題為 0?!盎匚摹?是正讀和反讀都一樣的字符串給定程序中,函數(shù) fun 的功能是:將形參 s(不區(qū)分大小寫字母) 。所指字符串中所有的 ASCII 碼值小于 97 的例如, LEVEL 和 Level 是“回文” ,而字符存入形參 t 所指字符數(shù)組中,形成一個LEVLEV 不是“回文” 。新串,并統(tǒng)計出符合條件的字符個數(shù)作為函填空:(1) s(2)(3) return 0數(shù)值返回。改錯: (1)double fun (int n)例如:形參 s 所指的字符串為:Abc156* ,(2)c=a;a+=b;b=

28、c;程序執(zhí)行后 t 所指字符串數(shù)組中的字符串編程: int r=0,temp,p,sign=1;為: A156* 。for(temp=m+1;tempm*m;temp+)填空: (1) *s (2) s+(3) nfor(p=2;p= xa)編程: float result,temp=1.0;int i;for(i=1; i=m; i+)temp=temp*i;result=temp;for(temp=1.0,i=1;i=n;i+)temp=temp*i;result=result/temp;for(temp=1.0,i=1;i=m-n;i+) temp=temp*i;result=resul

29、t/temp;return result;38. 程序填空題給定程序中,函數(shù) fun 的功能是:將形象 s 所指字符串中的數(shù)字字符轉(zhuǎn)換成對應的數(shù) 值,計算出這些數(shù)值的累加和作為函數(shù)值返 回。例如,形參 s 所指的字符 串為:abs5def126jkm8,程序執(zhí)行后的輸出結(jié)果為:22。填空:(1 )48(2) s+(3)sum改錯:(1) if (k%13= =0) | (k%17= =0)(2) int i;for(i=21;i=n;i+)if(i%3= =0)&(i%7 = =0) sum=sum+i;return sprt(sum);39、程序填空題給定程序中,函數(shù) fun 的功能

30、是:找出形 參 s 所指字符串中出現(xiàn)頻率最高的字母 (不 區(qū)分大小寫) ,并統(tǒng)計出其出現(xiàn)的次數(shù)。 例如,形參 s 所指字符串為: abcAbsmaxless, 程序執(zhí)行后的輸出結(jié)果為:letter a: 3 timesletter s: 3 times填空: (1) *s (2) 1(3) kn改錯: (1) double fun(int k) (2) return s;編程: double s=0.0;int i;for(i=1;i=n;i+)s=s+1.0/(i*(i+1);return s;45、程序填空題給定程序中,函數(shù) fun 的功能是:利用指 針數(shù)組對形參 ss 所指字符串數(shù)組中的

31、字符 串按由長到短的順序排序,并輸出排序結(jié) 果,ss 所指字符串數(shù)組中共有 N 個字符串, 且串長小于 M。填空: (1) i (2) psj (3) tp改錯: (1) double fun(int n) (2) return sum;編程: int i;double a=1,b=1,s=1; for(i=1;inext; (2)p=p-next;編程:int i,n=0,fg=1;char *p=str;while(*p)n+;p+;for(i=0;inext (2)p-next(3)= 改錯:(1)p=h-next; (2)p=p-next; 編程:inti,j;for(i=0;imm;

32、i+)for(j=0;jnn;j+)b*n=*(*(s+i)+j);*n=*n+1;43、程序填空題給定程序中,函數(shù) fun 的功能是將不帶頭結(jié) 點的單向鏈表逆置, 即若鏈表中從頭至尾結(jié) 點數(shù)據(jù)域依次為: 2,4,6,8,10,逆置后, 從頭至尾結(jié)點數(shù)據(jù)域依次為:10、8、6、4、2。填空:(1) NODE * (2) next (3) r改錯 :( 1 ) if(i%2 | si%2=0)( 2) tj=0;編程: for(j=0;jnn;j+)for(i=0;imm;i+)bnp+=sij;44.程序填空題給定程序中,函數(shù) fun 功能是將不帶頭結(jié)點 的單向鏈表逆置, 即若原鏈表從頭到尾結(jié)點 數(shù)據(jù)域依次為: 2 4 6 8 10 逆置后,從頭到 尾結(jié)點數(shù)據(jù)域依次為: 10 8 6 4 2填空:( 1 ) next (2)0 (3)r 改錯:(1) r=t;(2)if(*r= =0 )編程: int i,j,k=0; for(i=0;iM;i+) for(j=0;jnext (2)q (3)p-next 改錯:( 1 ) 0( 2) s+;編程: int bN,i,j=0;for

溫馨提示

  • 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

提交評論