


版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)
文檔簡介
1、一、單項選擇題:(10分,每題2分)1 . char *p10; 該語句聲明了一個: 。A)指向含有10個元素的一維字符型數(shù)組的指針變量pB)指向長度不超過10的字符串的指針變量pC)有10個元素的指針數(shù)組p,每個元素可以指向一個字符串D)有10個元素的指針數(shù)組 p,每個元素存放一個字符串2 .若int x;且有下面的程序片斷,則輸出結(jié)果為: for (x=3; x<6; x+)printf(x%2) ? ”#%d" :"*%dn", x);A)#3B) *3C) *3D) #3*4*4#4#4*5#53 .在 while#5*5(!x)語句中的!x與卜面條
2、件表達式等價的是:A) x!=0B) x=1 C) x!=1D) x=04 .已知struct pointint x;int y;struct rectstruct point pt1;struct point pt2;struct rect rt;struct rect *rp = &rt;則下面哪一種引用是不正確的_ 。D)rt->pt1.x的為:D) *(*a+i)+jA) rt.pt1.x B)(*rp).pt1.x C)rp->pt1.x5 .若二維數(shù)組a有m行n列,則下面能夠正確引用元素aijA) *(a+j* n+i) B) *(a+i* n+j)C) *(*
3、(a+i)+j)CDDDC二、分析程序并寫出運行結(jié)果。(25分,每題5分)1 . #include <stdio.h>main ()int n;static char *mon thName="Illegal mo nth", "Ja nuary", "February","March", "April", "May", "June", "July", "August","September&q
4、uot;, "October", "November", "December"for (n=1; n<=12; n+)prin tf("%sn", mon thName n);運行結(jié)果是:JanuaryFebruaryMarchAprilMayJuneJulyAugustSeptemberOctoberNovemberDecember2. #include<stdio.h>#define ARR_SIZE 7 void YH(i nt aARR_SIZE, i nt n);void PrintYH
5、(int aARR_SIZE, int n);main ()int aARR_SIZEARR_SIZE;YH(a, ARR_SIZE-1);Prin tYH(a, ARR_SIZE-1);void YH(int aARR_SIZE, int n)int i, j;for (i=1; i<=n; i+)for (j=1; j<=i; j+)if (j=1 II i=j)aij = 1;elseaij = ai-1j-1 + ai-1j;void PrintYH(int aARR_SIZE, int n)int i , j ;for (i=1; i<=n; i+)for (j=1
6、; j<=i; j+)prin tf("%4d", aij);prin tf("n");運行結(jié)果是:11 11 2 11 3 3 11 4 6 4 11 5 10 10 5 13 .#in elude <stdio.h>main ()int i, n;for (i=1; i<=5; i+)prin tf("Please en ter n:”);scan f("%d", &n);if (n <= 0) continue;prin tf("n = %dn", n);pri
7、n tf("Program is over!n");程序運行時輸入:1 -2 3 -4 5/運行結(jié)果是:n = 1Please en ter n: Please en ter n:n = 3Please en ter n: Please en ter n:n = 5 Program is over!4.#in clude <stdio.h>void Fun c(i nt n);main ()int i;for (i = 0; i < 2; i+)Fun c(i);void Fun c(i nt n)static int t = 1;prin tf(&quo
8、t;t=%dn", t+);運行結(jié)果是:t=1t=25 .#in clude <stdio.h>int Fun c(i nt i);main ()int i;for (i=3; i<5; i+)printf(" %d", Fu nc(i);prin tf("n");int Fun c(i nt i)static int k = 10;for (; i>0; i-)k+;return (k);運行結(jié)果是:13 17三、閱讀并完成程序,在標(biāo)有下劃線的空白處填入適當(dāng)?shù)谋磉_式或語句,使程序完整并符 合題目要求。(20分,每空2分
9、)1. 下面程序用于讀入10個字符串,然后找出最大的字符串并打印。#in elude <stdio.h>#in elude <stri ng.h>main ()char str1080,maxstri ng80;int i;prin tf("E nter ten stri ngs:n");for (i=0; i<10; i+)sea nf("%s", stri strepy(maxstring, str0);for (i=1; i<10; i+)if (strcmp(maxstring,stri)<0) 或 st
10、rcmp(stri,maxstring)>0strcpy(maxprintf("The max string is:%sn",maxstring);2. 下面這個程序用于交換兩個數(shù)組的對應(yīng)元素的值。#in clude <stdio.h>#define ARRAY_SIZE 10void Swap(i nt *x, int *y);void Excha nge(i nt a, int b, int n);void In putArray(i nt a,i nt n);void Prin tArray(i nt a,i nt n);main ()int aAR
11、RAY_SIZE, bARRAY_SIZE, n;prin tf("I nput array lenth n<=10:");scan f("%d", &n);prin tf("I nput array a:n");In putArray(a, n);prin tf("I nput array b:n");In putArray(b, n);Excha nge(a,b ,n);prin tf("After swap:' n"); prin tf("Array a:n
12、"); Prin tArray(a, n);prin tf("Array b:n"); Prin tArray(b, n);void Swap(i nt *x, int *y) int temp;temp=*x ;*y=temp ;void Excha nge(i nt a, int b, int n)i nt i;for (i = 0; i < n; i+)Swap( &ai,&bi );void In putArray(i nt a, int n)i nt i;for (i = 0; i < n; i+)sea nf("%
13、d ”,& ai) ;void Prin tArray(i nt a, int n)i nt i;for (i = 0;i < n ;i+)prin tf("%d ", ai);prin tf("n");3.從鍵盤任意輸入一個年號,判斷它是否是閏年。若是閏年,輸出"Yes",否則輸出"No"。已知符合下列條件之一者是閏年:能被4整除,但不能被100整除。能被400整除。#in elude <stdio.h>main () int year, flag;prin tf("E nte
14、r year:");scan f("%d", &year);if ( yeflag = 1;elseflag = 0;if ( fla prin tf("Yes!n");elseprin tf("No!n");四、在下面給出的4個程序中,共有15處錯誤(包括語法錯誤和邏輯錯誤),請找出其中的錯誤,并改正之。(在錯誤的代碼下邊畫一根橫線,把正確的代碼寫在旁邊;漏掉的代碼 正確插入合適的位置。30分,每找對1個錯誤,加1分,每修改正確 1個錯誤,再加1分。)1 編程計算矩陣相乘之積。#in clude<stdio.
15、h>#define ROW 2#define COL 3/ void MultiplyMatrix(i ntaROWCOL,i ntbCOLROW,cROWROW) ;main ()i nt aROWCOL, bCOLROW, cROWROW, i, j;prin tf("I nput array a:n");for (i=0; i<ROW; i+)for (j=0; j<COL; j+)scan f("d", &aij);/ %d_prin tf("I nput array b:n");for (i=0;
16、i<COL; i+)for (j=0; j<ROW; j+)scan f("d", & bij);MultiplyMatrix(a, b, c);prin tf("Results:n");for (i=0; i<ROW; i+)for (j=0; j<ROW; j+)prin tf("%6d", & cij); / cijprin tf("n");intvoidMultiplyMatrix(i ntaROWCOL,i ntbCOLROW,cROWROW)int i, j, k
17、;for (i=0; i<ROW; i+)for (j=0; j<ROW; j+)for (k=0; k<COL; k+)/cij = 0;cij = cij + aik * bjk; / bkj2 編程輸入10個數(shù),找出其中的最大值及其所在的數(shù)組下標(biāo)位置。#in clude <stdio.h>int FindMax(int num, int n, int *pMaxPos);main ()int nu m10, maxValue, maxPos, minV alue, min Pos, i/;prin tf("I nput 10 numbers:n &
18、quot;);for (i=0; i<10; i+)scanf("%d", numi /& numimaxValue = Fin dMax( num, 10, *maxPos); / & maxPosprintf("Max=%d, Position=%dn",maxValue, maxPos);int FindMax(int num, int n, int *pMaxPos)int i, max;max = nu m0;for (i = 1, i < n, i+) / i = 1; i < n;if (nu mi >
19、; max)max = nu mi;*pMaxPos = i;return ma x;3 .韓信點兵。韓信有一隊兵,他想知道有多少人,便讓士兵排隊報數(shù):按從1至5報數(shù),最末一個士兵報的數(shù)為 1 ;按從1至6報數(shù),最末一個士兵報的數(shù)為 5 ;按從1至7報數(shù), 最末一個士兵報的數(shù)為 4 ;最后再按從1至11報數(shù),最末一個士兵報的數(shù)為10。你知道韓信至少有多少兵嗎?#in elude <stdio.h>main ()int x; _ x=0while (1)if (x%5/ x%5=1 && x%6=5 && x%7=4 && x%11=1
20、0break;x+ x+;printf(” x = %dn", x);4 .下面函數(shù)Squeez()的功能是刪除字符串s中所出現(xiàn)的與變量c相同的字符。void Squeeze(chars, char c); / void Squeeze(chars, char c)int i,j;/j=0;for (i=0; si!='0: i+) if (si != 'c') /c sj = si;j+;sil='0'/ sj='0'或 / sj='0'五、編程(15分)從鍵盤任意輸入某班10個學(xué)生的成績,調(diào)用save函數(shù)把數(shù)
21、據(jù)存入到以你的學(xué)號命名的磁盤文件中,然后打開該文件讀出數(shù)據(jù),對成績進行由高到低的排序,并打印成績不及格的學(xué) 生人數(shù)。最后再次調(diào)用save函數(shù)把數(shù)據(jù)存入到原磁盤文件中。要求按照如下給出的函數(shù)原型進行編程:void save(float score,i nt n);void Sort(float score,i nt n);int Fail(float score,i nt n);要求用一維數(shù)組做函數(shù)參數(shù)編程實現(xiàn)成績排序和統(tǒng)計成績不及格的學(xué)生人數(shù),然后在主函數(shù)中打印這些結(jié)果,不能使用全局變量編程。參考程序如下:void load( float score,int n)/3 分FILE *fp;int i;if(fp=fope n(02406101","rb")=NULL)pri ntf("ca nnot ope n in filen");return;for(i=0;i <n ;i+)if(fread(&scorei,sizeof(float),1,fp)!=1)if(feof(fp) fclose(fp); return;prin tf("file read errorn");fclose
溫馨提示
- 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)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 度退休人員兼職合同模板
- 2023-2024學(xué)年大連理工版小學(xué)信息技術(shù)五年級下冊奇妙的編碼(教學(xué)設(shè)計)
- 2023-2024學(xué)年滬科版(2019)高中信息技術(shù)必修一3.4《分析歷史氣溫數(shù)據(jù)-設(shè)計批量數(shù)據(jù)算法》教學(xué)設(shè)計
- 10青山處處埋忠骨教學(xué)設(shè)計-2024-2025學(xué)年五年級下冊語文統(tǒng)編版
- 餐廳股權(quán)合同范本
- 甜品批發(fā)合同范本
- 5 我愛我們班 教學(xué)設(shè)計-2024-2025學(xué)年道德與法治二年級上冊統(tǒng)編版
- 2 百分?jǐn)?shù)(二)成數(shù) 第二課時(教學(xué)設(shè)計)-2023-2024學(xué)年六年級下冊數(shù)學(xué)人教版
- 24“諾曼底號”遇難記 教學(xué)設(shè)計-2023-2024學(xué)年四年級下冊語文統(tǒng)編版
- 店面貸款合同范本
- 保密管理工作課件
- GB/T 25924-2010在線氣體分析器試驗方法
- GB/T 22590-2021軋鋼加熱爐用耐火澆注料
- GB 28482-2012嬰幼兒安撫奶嘴安全要求
- GA 979-2012D類干粉滅火劑
- 骨科病人健康教育處方
- 關(guān)鍵詞與有機關(guān)聯(lián)寫作課件
- 贛價協(xié)〔2023〕9號江西省建設(shè)工程造價咨詢服務(wù)收費基準(zhǔn)價
- 小汽車掛靠協(xié)議書范本(2篇)
- 顱腦外傷(共61張PPT)
- 黃河流域生態(tài)保護與高質(zhì)量發(fā)展課件
評論
0/150
提交評論