二級C語言上機填空題技巧總結(jié)_第1頁
二級C語言上機填空題技巧總結(jié)_第2頁
免費預(yù)覽已結(jié)束,剩余21頁可下載查看

下載本文檔

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

文檔簡介

1、上機填空題技巧總結(jié)填空題之方法1.上機填空題占 30 分,一般有 3 個空需要填寫,每個空為 10 分;2.填空題做題之前必須弄清題目含義,抓住關(guān)鍵字,例如:要求對數(shù)組進行從小到大排序, 則將會出現(xiàn)大于符號,如果是從大到小排序則出現(xiàn)小于符號;3.填空題中出現(xiàn)頻率最高的就是函數(shù)的調(diào)用、函數(shù)的首部、函數(shù)的返回值等和函數(shù)相關(guān)的問 題,因此必須牢牢掌握祝函數(shù)的基本特征;4.填空題中有的“空”比較難,考生除了掌握必須的 C 語言知識之外,還需要很好的邏輯思 路,如果一個空將花很多時間來解決,那么建議使用“死記硬背”的方法來縮短復(fù)習(xí)時間;5.上機題庫中 100 題有部分題目是重復(fù)的或是相似的題目很多,同學(xué)

2、們要使用比對的方法盡量去理解;6.多練習(xí),多思考,多總結(jié)填空題與結(jié)構(gòu)體相關(guān)1.結(jié)構(gòu)體成員引用:上機題庫 P18 第 9 題(和 92 題一致),P27 第 23 題(和 51 題一樣)程序通過定義學(xué)生構(gòu)體變量,存儲了學(xué)生的學(xué)號、姓名和3門課的成績。函 數(shù)fun的功能是將形參兩指色詐體變量中的數(shù)據(jù)賦給函數(shù)中的結(jié)構(gòu)體變量b并修 改b中的學(xué)號和姓宮 最后輸出修衣啟的數(shù)據(jù)。例如;兩扌旨變量中的學(xué)號、蛀名* 和三門課的成績依次懸1000k ZhangSan 95. 80. 88.貝U修改后輸出b中的 數(shù)據(jù)應(yīng)九10002.*LiSi 95、80. 88.讀清楚題目要求:(1) 要求將形參 a 所指結(jié)構(gòu)體變

3、量的數(shù)據(jù)賦值給函數(shù)中的結(jié)構(gòu)體變量b(2) 從例如可以看出來:結(jié)構(gòu)體中的學(xué)號和姓名變?yōu)榱?002和“LiSi ”, 但是3門課成 績沒有變化#i nclude #include struct stude nt long sno;char n ame10; float score3;;void fun (struct stude nt a) struct stude nt b; int i;strcpy(_2_, LiSi);姓名要變?yōu)椤?LiSi ” ,則要引用 b 中的 name 成員printf(nThe data after modified :n);/*講解是一句帶過不用多講 */pri

4、n tf(nNo: %ld Name: %snScores: ,b.s no, b. name); /*講解是一句帶過不用多講*/for (i=0;i3; i+) prin tf(%6.2f, b._3_;分析:這個是一個循環(huán)語句,執(zhí)行 3 次循環(huán),printf(%6.2f , b._3_)要求輸出是一個實型數(shù)據(jù)的成員,因此可以得知是 score 成員,因為 score 是一個數(shù)組,因此填:b.scorei,當 i 變 化就可以取出第一門、第二門、第三門課的成績prin tf(n);mai n() struct student s=10001,ZhangSan, 95, 80, 88;int

5、i;printf(nnThe original data :n);prin tf(nNo: %ld Name: %sn Scores: ,s.s no, s.n ame); for (i=0; i修改后輸出七中的數(shù)據(jù)應(yīng)為:10004 “ Lijie 93.8樂97.(1)從例如中可以看出:變化的是結(jié)構(gòu)體中的學(xué)號和姓名foundb = _1 _;題目要求將形參b.s no = 10002;學(xué)號變?yōu)榱薬 的值賦值給結(jié)構(gòu)體變量10002b,因此填:foundfound#i nclude #include struct stude nt long sno;char n ame10;float scor

6、e3;;void fun( struct stude nt *b) int i;t 的姓名變?yōu)榱恕?LiJie ” ,因此填寫:b-namemai n() struct student t=10002,ZhangQi, 93, 85, 87; int i;printf(nnThe original data :n);printf(nNo: %ld Name: %snScores: ,t.sno, );for (i=0; i3; i+) prin tf(%6.2f, t.scorei); prin tf(n);fun_3_;此處為函數(shù)調(diào)用,根據(jù)形參的類型來判定實參,形參structs

7、tudent *b為結(jié)構(gòu)體指針,聯(lián)系 main 函數(shù)定義部分只有 struct student t 和 b的類型相同,因此可知需要填的是:&tprin tf(nThe data after modified :n ”);printf(nNo: %ld Name: %snScores: ,t.sno, );for (i=0; i修改后輸出t中的數(shù)據(jù)應(yīng)為:10002. *LiSi 96. 3R 89.4 aaa.a a亠 m 亠 m 亠 x a .s a. a.aa.a. a.aA厶亠sAaA厶厶!a *厶厶GEaa. a &A(1)把 a 中地址作為函數(shù)返回值返回函數(shù)

8、觀察可知 a 中的學(xué)號、姓名邊為了 10002 和“zhangSan”,每門課的成績增加了 1 分foundb_1_ = 10004; 題目中 t 的學(xué)號變化為了 10004,因此填寫: 寫b.sno,因為 b 是一個指針b-sno,不能填foundstrcpy(b_2_,LiJie); found#in elude #i nclude struct stude nt long sno;char n ame10; float score3;_1_ fun (struct stude nt *a)根據(jù)函數(shù)調(diào)用 t = fun(&s);可知函數(shù)返回類型和 t 的類型相同,struct st

9、udent s=10001,ZhangSan, 95, 80, 88, *t;可知 t 的類型為 struct student * int i;a-s no = 10002;strcpy(a-n ame, LiSi);for (i=0; iscorei ,不能為 a.scorei 或是 a.scorereturn _3_ ;題目要求返回 a 的地址,a 本身就是一個指針,因此填入a 即可mai n() struct student s=10001,ZhangSan, 95, 80, 88, *t;int i;printf(nnThe original data :n);prin tf(nNo:

10、 %ld Name: %sn Scores: ,s.s no, s.n ame); for (i=0; is no, t-n ame); for (i=0; iscorei);prin tf(n);*found*found*found;3.3. 結(jié)構(gòu)體和排序:上機題庫 P14P14 第 2 2 題程序通過定義學(xué)生結(jié)構(gòu)體數(shù)組,存儲了若干名學(xué)生的學(xué)鈦姓名和3門課的成 贏函數(shù)曲功能是將存放學(xué)生數(shù)據(jù)的結(jié)構(gòu)勵組,桃姓名的字典序(從水到大)排序.(1)排序的格式:紅色部分為考試中的重點,必須記住 t = ai; ai = aj; aj = t; mai n() struct student s4=1000

11、1,ZhangSan, 95, 80, 88, 10002,LiSi, 85, 70, 78,10003,CaoKai, 75, 60, 88, 10004,FangFang, 90, 82,87;int i, j;printf(nnThe original data :nn);for (j=0; j4; j+) printf(nNo: %ld Name: %-8s Scores: ,sj.sno, ); for (i=0; i3; i+) printf(%6.2f, sj.scorei);prin tf(n);fun(s, 4);printf(nnThe data after

12、sorting :nn);for (j=0; j4; j+) printf(nNo: %ld Name: %-8s Scores: ,sj.sno, ); for (i=0; i3; i+) printf(%6.2f , sj.scorei);prin tf(n);從小到大排序:for(i=0;in-1 ;從大到小排序:for(i=0; in-1 ;i+)for( j=i+1;jn ;j+) if(aiaj)t=ai;ai=aj;aj =t;void fun( struct stude nt a, int n)/*fo un d*/_1_ t; 此處要求填入 須一致, void

13、fun (struct 寫: structstudentint i, j;/*fo un d*/for (i=0; i_2_; i+) for(j=i+1; j 0)strcmp(ai. name,aj.t 的類型,可以從 t = ai; 中得知 t 和 a 數(shù)組的類型必 studenta, int n)中得知 a 為結(jié)構(gòu)體類型,因此填根據(jù)排序的格式填空,因此記住是關(guān)鍵按照姓名字典順序從小到大排序,因此: ,此處需要特別注意三、填空題與鏈表相關(guān)1.1.帶頭結(jié)點的鏈表:p=h-next,p=h-next,上機題庫 P21P21 第 1515 題考點分析:(1 1)帶頭結(jié)點鏈表的表現(xiàn)形式:head

14、abcf ABNULL帶頭結(jié)點的鏈表,頭結(jié)點 headhead 不存放任何的數(shù)據(jù),從頭結(jié)點的下一個結(jié)點開始存放數(shù)據(jù),因此考試中如果出現(xiàn)p = _1_;則填入 p=h-nextp=h-next(2(2)鏈表數(shù)據(jù)排序?qū)?shù)組元素從小到大排序:for(i=0;in-1 ;i+)for( j=i+1;jaj) t=ai;ai=aj;aj =t;對鏈表元素進行從小到大排序:while (p) /*相當于數(shù)組排序中的 for(i=0; inext;/*相當于 j=i+1*/while (q) /* 相當于 for( ;jdata q-data) /*相當于 if(aiaj)*/ t = p-data; p-

15、data = q-data; q-data = t; /*如果 aiaj成立,則交換數(shù)據(jù)元素,讓數(shù)據(jù)變成從小到大排序*/q = q-next;/*相當于 q+*/p = p-next;/*相當于 p+*/1515 題:錠程序中価麹罰強是將帶頭節(jié)點的單鱷表觸瑚域中的數(shù)副 嵋大排辰即若勰表躺數(shù)融從頭至尾的數(shù)勵:成久2. &釘排序 懿表觸數(shù)據(jù)域從頭至尾的數(shù)勵:2. 4. 6. 8s 10o aita. a. a. J, a a a. a. *a a Ji a a aBa.Xa,丄,.LXA-a a a x x#i nclude #include #defi ne N 6typedef str

16、uct node int data;struct node *n ext; NODE;void fun(N ODE *h) NODE *p, *q; int t;while (p) while (q) if (p-data _3_ q-data) 填寫: t = p-data; p-data = q-data; q-data = t; q = q-n ext;p = p-n ext;mai n() NODE *head;int aN= 0, 10, 4, 2, 8, 6 ;head=creatlist(a);prin tf(nThe origi nal list:n);outlist(head

17、);fun( head);prin tf(nThe list after sort ing :n ”);outlist(head);2.2.不帶頭結(jié)點的鏈表: :p=hp=h(1(1)不帶頭結(jié)點鏈表的表示形式:*found*/p = _1_ ;鏈表為帶頭結(jié)點,因此填寫:p=h-next*found*/q = _2_ ;了 p 的下一位比較兩個鏈表中元素的大小,因此q=p-next,這樣 q 指向*found*/ 從小到大排序,因此使用大于符號abcA-Bf CNULL不帶頭結(jié)點的鏈表沒有頭結(jié)點, 鏈表的第一個結(jié)點存儲的就是數(shù)據(jù), 因此考 試中如果出現(xiàn) p =_1_ ;則填入 p=h(2 2)講

18、解 P38P38 第 4242 題(和 1515 題類似)void fun(N ODE *h) NODE *p, *q; int t;p = h;不帶頭結(jié)點的鏈表while (p) /*fo un d*/*fo un d*/while (_2_)判斷 q 有沒有到末尾,因此填入 p 或是 p!=NULL if (p-data q-data) t = p-data; p-data = q-data; q-data = t; q = q-n ext;p=_3_ ; while (p) 減,從循環(huán)體中得知沒有進行 或是 p+mai n() NODE *head;int aN= 0, 10, 4, 2

19、, 8, 6 ; head=creatlist(a);prin tf(nThe origi nal list:n); outlist(head);fun( head);3.3.鏈表的返回值:P43P43 第 5050 題(和 4343 題類似)*found*/序序占”程排結(jié)宀疋大表q = _1q 指向 p 的下一位,因此填入:q=p-next為循環(huán)條件,要構(gòu)成循環(huán) p 就得自加或是自P+之類的操作,因此此處填入:p=p- next至oo霽辭矗驟為:10.8. 6s 4s 2.while (_2_) 此空判斷 q 有沒有為空,講解時候不容易理解,考生記住 即可,填入:while(q)或是 whi

20、le(q!=NULL) r = q-n ext;q-n ext = p;p = q; return p; mai n() NODE *head;int aN=2,4,6,8,10;head=creatlist(a);prin tf(nThe origi nal list:n); outlist(head);head=fu n( head);prin tf(nThe list after in vert ing :n); outlist(head);*found_1_ fun(NODE *h) 根據(jù)函數(shù)調(diào)用 head=fun(head);和 NODE *head;知 道函數(shù)的返回值為 NODE

21、* NODE *p,*q, *r;p =h;if (p=NULL)如果 p數(shù) 據(jù)位空,則 表示 無需 再進 行逆置,故returnNULL;p 中沒有任何的數(shù)據(jù),因此就q = p-n ext;p- next =NULL;*found*foundq = 一 3;老師無需多講填入: q=r;次空理解起來較難,因此考生必須認真記憶,四、填空題與文件相關(guān)1.1.文件指針定義(1) 文件定義的形式:FILE *fp;(課本 P115)(2) 舉例:上機題庫 P30 第 28 題第一空/*found*/_1_ fp;分析:在涉及文件類型的上機題目時 fp 指的就是文件指針,因此在前面填寫類型時候直接寫入:

22、FILE *fp;(3) 類似題目:P32 第 32 題第 1 個空、P67 第 88 題第 2 個空2.2. 文件打開1 1)文件打開的格式: fopen( “文件名”,“打開方式” ) ;(課本 P115)(2) 舉例:P31 第 30 題第 1 個空void fun(char *filename, STU n) FILE *fp;fp = fopen(_1_, rb+);分析:缺少了文件名,形參 filename 是實參傳過來的文件名,因此這里直接填入: fp =fopen(filename, rb+); 表示以“讀和寫” 的方式打開一個二進制文件 filename(3) 類似的題目:P

23、41 第 47 題第 1 個空、P71 第 94 題第 1 個空、P72 第 96 題第 3 空3.3. 文件關(guān)閉fprintf(fp, %s %d %fn, s, a, f);/*found*/4.4. 測試文件結(jié)束1)判斷文件結(jié)束的 feof 函數(shù)形式: feof(fp) (課本 P118)2) 經(jīng)常出現(xiàn)在 while() 的表達式里面,常見形式為: while(!feof(fp) 測試指針 fp 有沒 有結(jié)束*found1)文件關(guān)閉的格式: fclose (文件指針);(課本 P117)2)舉例:上機題庫 P30 第 28 題第 2 空fp = fopen(file1.txt, w);/

24、*第一次以寫的形式打開文件file1.txt*/3)fp = fopen(file1.txt, r);/*分析:打開文件以后必須將它關(guān)閉,類似題目:P72 第 96 題第 2 空第二次以讀的形式打開文件因此該空要填: fclose(fp);file1.txt*/(3) 舉例:上機題目 P26 第 22 題第 1 空FILE *fp;STU n; int i;fp = fopen(filename,rb+);while (!_1_) 分析:填寫 feof(fp) 測試 fp 指針又沒有結(jié)束(4) 類似題目:P32 第 32 題第 2 個空、P61 第 80 題第 1 個空、P71 第 94 題第

25、 2 個空5.5. 設(shè)置文件位置函數(shù)1 ) fseek 設(shè)置文件位置: fseek( 文件指針 , 位移量 , 移動起始點 ) (課本 P118)(2) 考試一般考查的是移動的起始點:SEEK_SE 表示文件開始,SEEK_CU 表示文件當前位置,SEEK_EN 表示文件末尾(3) 舉例:上機題庫 P31 第 30 題第 2 個空fseek(fp, -1L*sizeof(STU), _2_);分析:題目要求:重寫形參 filename 所指文件中最后一個學(xué)生的數(shù)據(jù),因此文件指 針 fp 要指向最后的位置,則填入: fseek(fp, -1L*sizeof(STU), SEEK_END);(4)

26、類似題目:P26 第 22 題第 3 空、P61 第 80 第 3 空、6.6. 讀二進制文件1 1)fwrite( 存入數(shù)據(jù)的指針,每一個數(shù)據(jù)占有的字節(jié),輸入數(shù)據(jù)的個數(shù),文件指針 ) ;(課本 P120)2)舉例: P31 第 30 題第 3 空void fun(char *filename, STU n) FILE *fp;fseek(fp, -1L*sizeof(STU), SEEK_END); /* 定位到最后一個學(xué)生的位置 */fwrite(_3_, sizeof(STU), 1, fp);/* 將形參 n 新學(xué)生的數(shù)據(jù)覆蓋最后一個學(xué)生*found*/*found*/*found*/

27、fp = fopen(filename, rb+);/* 打開文件 filename*/*found*/*found*/的數(shù)據(jù),因為 fp 已經(jīng)定位到了最后一個學(xué)生的位置 */fclose(fp);分析:題目要求用新數(shù)據(jù)覆蓋最后一個學(xué)生的數(shù)據(jù),因此填入:fwrite(&n, sizeof(STU), 1, fp);填入的是地址,不能是:fwrite(n, sizeof(STU), 1, fp);(3) 類似題目:P41 第 47 題第 3 空,P67 第 88 題第 3 空、7.7. 寫二進制文件函數(shù)(1 1)fread(讀出數(shù)據(jù)的指針,每一個數(shù)據(jù)占有的字節(jié),輸出數(shù)據(jù)的個數(shù),文件指針)

28、;(2 2)上機考試填空題沒有出現(xiàn)需要填寫的空,考生作一般的了解8.8. fcanffcanf 函數(shù)數(shù)和 fprintffprintf 函數(shù)(1 1)fscanf (文件指針,格式控制字符串,輸入列表項);(2 2)fprintf(文件指針,格式控制字符串,輸出列表項);(3 3)fscanf 函數(shù)和 fprintf函數(shù)在上機編程題中詳細介紹,這里不作重點講解,了解即可五、填空題與函數(shù)相關(guān)1.1.函數(shù)調(diào)用:P13P13 第 1 1 題錠程序中屆數(shù)屈助勰根翻參i的髓回某個函數(shù)的氤當調(diào)用正xl=5.000000. x2=3.000000. xl*xl+xl*x2=40.000000E1#i ncl

29、ude _1_ fun(int i, double x, double y)根據(jù)函數(shù)調(diào)用 r = fun(1, x1, x2);可知函數(shù)返回值和 r 類型一致,double x 仁 5,x2=3, r;r 為 doule 類型,則函數(shù)返回 double if (i=1)return _3_(x, y);此處的實參數(shù)為 2,則調(diào)用 f2 函數(shù)mai n() double x 仁 5, x2=3, r;r = fun(1, x1, x2);r += fun(2, x1, x2);printf(nx1=%f, x2=%f, x1*x1+x1*x2=%fnn,x1, x2, r);六、填空題與數(shù)組相關(guān)

30、1.類似題目:3、4、7、20、24、26、39、40、41、54、57、64、68、70、71、76、89、90、992.一維數(shù)組中存在這樣一些類型:(1) 求一個數(shù)值數(shù)組中的所有值的平均值和把大于或者小于平均值的數(shù)輔導(dǎo)例外一個數(shù)組中。在計算機平均值時,首先定義一個變量來存放平均分,平均分一般用av 變量來代替,如果 av 已經(jīng)定義但是沒有賦初值,那么這個空填寫的內(nèi)容的為:av=0;(2) 求算平均值值時有兩種方法,第一種是算出總的分數(shù),最后再除以總的個數(shù)即可,如算1 到 6 之間的數(shù)的平均值,首先算出 1 到 6 的和,其次用綜合除以總的個數(shù) 6,即可以 得到平均值;第二種方法是用每一個數(shù)

31、除以 6 再把所有的和加起來。即 1/6+2/6+3/6+4/6+5/6+6/6;所以在執(zhí)行的一維數(shù)組中算平均值時也是存在來中情況,如果在 for 語句的后面有 av=av/N;則第二個空一般的填寫時av+=si;如果說沒有av=av/N;則填寫的是:av+=si/N;(3) 在后面的一個空的填寫的時候要注意變量的使用情況,如果變量使用了 j 和 i,那么這一個空的填寫的內(nèi)容為:j+;(4)如果一維數(shù)組中求的是把大于或者是小于平均值的數(shù)移動到數(shù)組的首部的時候,這種 題目的double f1(double x) return x*x; double f2(double x, double y)

32、retur n x*y; 定義了 fl 函數(shù),有一個形參定義了 f2 函數(shù),有兩個形參foundfoundreturn_2_(x); 此處為函數(shù)調(diào)用,實參數(shù)為可知,調(diào)用的為 f1 函數(shù)1,根據(jù)實參和形成個數(shù)一致elsefound解答時這樣的,第一個空一般填寫的內(nèi)容為:j+;第二個空填寫的內(nèi)容是-1 ;(5) 對數(shù)組進行排序時:如果是從大到小的排序的時候,用的是小于符號,如果是從小到大排序時使用的是大于符號。3.二維數(shù)組中的題目類型以及解決的技巧:(1) 二維數(shù)組的題目,填空的時候一般是填在函數(shù)調(diào)用,函數(shù)在調(diào)用時候?qū)懙膽?yīng)該是而為數(shù)組的名字;在定義函數(shù)的時候使用的是函數(shù)的類型和由m 各元素組成一行

33、的指針變量,假設(shè)二維數(shù)組的名字是ss,那么填寫的內(nèi)容是:(*ss)M;如果調(diào)用的是普通變量則填寫的內(nèi)容為:int n;(2)二維數(shù)組遍歷時,使用的是兩個循環(huán),使用的是循環(huán)的嵌套使用,第二個循環(huán)的使用 的時候填寫的內(nèi)容為:j=0;(特殊的特殊處理)(3) 交換兩個變量的值的使用的格式為:t=a;a=b;b=t;記住交換變量的格式和順序。(4)如果二維數(shù)組是字符串的題目的時候, 要記住字符串中函數(shù)的使用的格式; 即: strlen、strcmp、strcpy、sizeof、strcat 的使用格式。注意里面的格式中使用的都是和指針。(5) 特殊的特殊處理。第 7 題的填空的內(nèi)容記住。七、填空題與數(shù)

34、學(xué)公式相關(guān)1.解題方法:(1) 如果在函數(shù)中定義變量,但是沒有定義成靜態(tài)存儲變量,即變量前面沒有static,應(yīng)給變量賦初值,如果以后用到的是加減運算,貝 U 賦初值為 0 或者是 0.0 ;如果以后用到的是乘除運算,則賦初值為 1 或者是 1.0 ;(2) 循環(huán)條件的填空,分析表達式的規(guī)律,看表達式中的最后一項的值是否到了第 m 項或者 是第 n 項,如果到了第 m 或者第 n 項,則在循環(huán)中的第二個表達式中用到的是i=m 或者是 i=n;(3) 循環(huán)條件中如果用的是 while 語句,則循環(huán)變量的初值應(yīng)該在 while 的外面定義和賦初 值,在循環(huán)語句中必須給變量自加或者是自減。如果沒有則

35、一般填的是i+;(4) 看表達式中的每一項的運算規(guī)則,按照運算的規(guī)則把每一項中的n 值替換為 i,特殊情況例外。如果是表達式中用到的是間隔相加減的運算時,注意給中間變量賦初值為1或者是 1.0 ;在后面的運算中給變量乘以一個-1,以改變中間變量的符號。2.解題分析:(1) 看清題目中要求的題意,題目要求做什么就只需考慮什么。給定程序中,函數(shù)fun的功能是;計算下式前n項的和作為函數(shù)值返回。,舉62(2如(2) 找出題目中的表達式:(2X22-1) X(2X22 +1)1X_33x5(疔當 n=1 時,表達式變?yōu)?,?n=2 時,表達式為牟,n 不斷的變化,得到的表達式值也不相同,題目中要求將

36、n=1,n=2n=n 的值進行一個累加,最 后得到一個結(jié)果賦值給變量 s。(3) 通過以上的分析我們可以得到如下的信息:1)需要一個變量來存儲結(jié)果值。對應(yīng)到程序中,我們使用 s 來表示,因為2) 需要一個變量從 1 開始遞增到 n,對應(yīng)到程序中用 i 表示。3) 需要用到循環(huán)的知識。4) 函數(shù)最后會將 s 的值進行返回。double fun (i nt n) int i; double s, t;for(i=1; i=_2_; i+)需要填入的是 i 變量的初始值和結(jié)束值,結(jié)束值一般是 通過實參傳遞給形參的,因此很多時候填入形參名即可。 t=2.0*i; 將 2*i 的值賦值給變量 t,因此遇

37、到直接用 t*t 代替就行(2計算的結(jié)果可能為小數(shù),因此將 s 定義為實型founds=_1_;需要給 s 賦初始值,1 定填入的是 00般賦值為 0 或是 1,這里面有規(guī)律,在填空題中foundfounds=s+(2.0*i-1)*(2.0*i+1)/_3.需要在(2.0*i-1)*(2.0*i+1)/_3.中填(2x總一l)x(2x越+1)入適當?shù)闹祦硌a充完整表達式,比較得知,3八、1 1(2.0*i-1)*(2.0*i+1)/_3_; 缺少的是(21),部分,上面分析過 “疔 可以用 t*t 來代替,因此,第三個填入 t*t 就行!return s;類似題目:6、13、25、29、36、

38、46、52、60、66、69、73、83、95填空題與字符串相關(guān)刪除字符串(1)主要考查二維字符數(shù)組與字符串的操作(2) 舉例 1: P18 第 8 題(和 65 題一樣)I紿定程序中,函數(shù)fun的功能昱:在形歩轉(zhuǎn)所指字符串數(shù)組中刪除所有串長超過咖字符串函數(shù)返回所剩字符串的個數(shù)口騎所指字符串數(shù)組中共百即T字符 串*且串也小于九#defi ne N 5#defi ne M 10int fun(char (*ss)M, int k)/*char (*ss)M 下標相同,k 通過實參傳遞過來后為 7*/ inti,j=0,le n;行指針,下標與二維數(shù)組 x 的列*found*/for(i=0; i

39、 _1_ ; i+)/*入 for(i=0; i N ; i+)*/ len=strle n(ssi);/*fo un d*/if(len= _2_);/*題目要求將串長超過 k 的字符串刪除,換個說法就是將串小于等于 k 的字符串留下,因此該空填寫 if(len= k)*/*fo un d*/strcpy(ssj+,_3_);/*將 ssi行的值賦值到 sj中,該空出現(xiàn)頻率很高,因此要牢記。strcpy(ssj+,ssi)*/return j;mai n() char xNM=Beijing,Shanghai,Tianjing,Nanjing,Wuhan;/*定義了一個 5 行 10 列的二

40、維字符數(shù)組 x*/int i,f;prin tf(nThe orig inal stri ngnn ”);for(i=0;iN;i+)puts(xi); printf(n);f=fun(x,7);/*將二維數(shù)組 x 傳給 fun 函數(shù)的第一個形參,將 7 傳遞給 fun 函數(shù)的第二個形參*/prin tf(The stri ng witch len gth is less tha n or equal to 7 :n ”);for(i=0; if; i+) puts(xi);printf(n);(3) 舉例 2: P19 第 10 題(和 93 題一樣)紿定程序中,函數(shù)詞功能是莊形如所指字符趣中將所有串長超 過圖宇符串中右謹?shù)淖址i只腮左過的介字鼠硼指字符串數(shù)組中共有H個字符串,且串長小于能#defi ne

溫馨提示

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

評論

0/150

提交評論