C語言開發(fā)基礎(習題卷35)_第1頁
C語言開發(fā)基礎(習題卷35)_第2頁
C語言開發(fā)基礎(習題卷35)_第3頁
C語言開發(fā)基礎(習題卷35)_第4頁
C語言開發(fā)基礎(習題卷35)_第5頁
已閱讀5頁,還剩24頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

試卷科目:C語言開發(fā)基礎C語言開發(fā)基礎(習題卷35)PAGE"pagenumber"pagenumber/SECTIONPAGES"numberofpages"numberofpagesC語言開發(fā)基礎第1部分:單項選擇題,共70題,每題只有一個正確答案,多選或少選均不得分。[單選題]1.下列敘述中,不符合良好程序設計風格要求的是()。A)程序的效率第一,清晰第二B)程序的可讀性好C)程序中要有必要的注釋D)輸入數(shù)據(jù)前要有提示信息答案:A解析:?清晰第一,效率第二?是當今主導的程序設計風格。對程序的要求不僅是能夠運行正常,還要便于調試和維護,所以程序要具有良好的可讀性,語句結構應該簡單直接,這有利于程序的開發(fā)與維護。答案選擇A選項。[單選題]2.C語言中,用于對兩個字符串進行比較的函數(shù)是()。A)strcatB)strlenC)strcmpD)strupr答案:C解析:[單選題]3.?if(表達式)?中的?表達式?()。A)只能是邏輯表達式B)只能是關系表達式C)邏輯表達式、關系表達式和算術表達式都可以D)只能是算術表達式答案:C解析:[單選題]4.#include"stdio.h"voidmain(){inta=2,i=0,tn=0,sn=0;while(iA)248B)246C)246D)234答案:B解析:[單選題]5.以下能正確定義整型變量x,y和z,并賦值正確的語句是_____。A)intx=y=z=5;B)intx,y,z=5;C)x=5,y=5,z=5;D)x=y=z=5;答案:B解析:[單選題]6.下列選項中,哪一項不是C語言的關鍵字()。A)autoB)intC)addD)goto答案:C解析:[單選題]7.有以下程序:#includemain(){intx=010,y=10;printf("%d,%d\n",++x,y--);}程序運行后的輸出結果是()。A)10,9B)11,10C)010,9D)9,10答案:D解析:整型常量有3種表示方法,分別是十進制數(shù)表示法、八進制數(shù)表示法和十六進制數(shù)表示法,八進制整常量以0作為前綴。自增和自減運算符的兩種用法:前置運算,運算符放在變量之前,規(guī)則是先使變量的值增(或減)1,然后以變化后表達式的值參與其他運算;后置運算,運算符放在變量之后,規(guī)則是變量先參與其他運算,然后再使變量的值增(或減)1。x=010,即十進制的8,y=10,++x先自加后取值,輸出9,y--先取值輸出10,再自減y=9,答案選擇D選項。[單選題]8.輸出語句:printf("%d\n",11);的輸出結果是A)11B)12C)13D)14答案:A解析:[單選題]9.關于scanf的不正確說法是____。A)可以給單個的基本類型變量賦值B)可以給多個基本類型變量同時賦值C)可以給字符串賦值D)可以正確有效地給指針變量賦值答案:D解析:[單選題]10.C語言中決定函數(shù)返回值的類型的是()。A)return語句中的表達式類型B)調用函數(shù)的主調函數(shù)類型C)調用函數(shù)時臨時D)定義函數(shù)時所指定的函數(shù)類型答案:D解析:[單選題]11.函數(shù)調用:strcat(strcpy(str1,str2),str3)的功能是A)將串str1復制到串str2中后再連接到串str3之后B)將串str1連接到串str2之后再復制到串str3之后C)將串str2連接到串str1之后再將串str1復制到串str3中D)將串str2復制到串str1中后再將串str3連接到串str1之后答案:D解析:[單選題]12.以下的選擇中,正確的賦值語句是().A)a=1,b=2B)j++C)a=b=5;D)y=int(x)答案:C解析:[單選題]13.以下是一些C#中的枚舉型的定義,其中錯誤的用法有A)publicenumvar1{?Mike?=100,?Nike?=102,?Jike?};B)enumvar1{Mike=100,Nike,Jike};C)publicenumvar1{Mike=-1,Nike,Jike};D)enumvar1{Mike,Nike,Jike};答案:A解析:[單選題]14.一名雇員就職于一家公司,一個公司有多個雇員,則實體公司和實體雇員之間的聯(lián)系是()。A)1:1聯(lián)系B)1:m聯(lián)系C)m:1聯(lián)系D)m:n聯(lián)系答案:B解析:實體集之間的聯(lián)系分為3類:一對一聯(lián)系(1:1)、一對多聯(lián)系(1:m)、多對多聯(lián)系(m:n)。題目中一名雇員就職于一家公司,一個公司有多名雇員,公司與雇員之間的聯(lián)系為一對多(1:m)聯(lián)系。答案選擇B選項。[單選題]15.83、設有如下定義:strucksk{inta;floatb;}data;int*p;若要使P指向data中的a域,正確的賦值語句是()。A)p=&a;B)p=data.a;C)p=&data.a;D)*p=data.a;答案:C解析:[單選題]16.以下對二維數(shù)組a進行不正確初始化的是()。A)inta[][3]={3,2,1,1,2,3};B)inta[][3]={{3,2,1},{1,2,3};C)inta[2][3]={{3,2,1},{1,2,3}};D)inta[][]={{3,2,1},{1,2,3}};答案:D解析:[單選題]17.下面程序運行后的結果是:()Voidmain(){Intx=1,y=0;switch(x){Case1:y=y+1;Case2:y=y+10;break;Default:y=y+100;}Printf(?y=%d\n?,y);}A)y=0B)y=1C)y=11D)y=111答案:C解析:[單選題]18.對下面程序段:_x000D_#defineA3_x000D_#defineB(a)((A+1)*a)_x000D_..._x000D_x=3*(A+B(7));正確的判斷是()。A)程序錯誤,不許嵌套宏定義B)程序錯誤,宏定義不許有參數(shù)C)x=93D)x=21答案:C解析:[單選題]19.main()_x000D_{intx=3,i;_x000D_for(i=0;iA)81010B)7910C)8911D)8910答案:D解析:[單選題]20.根據(jù)下面的定義:Structperson{charname[9];intage;};Personclasses[10]={"John",17,"Paul",19,"Mary",18,"Adam",16};能打印出字母M的語句是()A)cout<<classes[3].name;B)cout<<classes[2].name[0];C)cout<<classes[3].name[1];D)cout<<classes[2].name[1];答案:B解析:[單選題]21.下列錯誤的預編譯處理命令是()A)#include?stdio.h?B)#defineG9.8C)$defineG9.8D)#include<stdio.h>答案:C解析:[單選題]22.打開文件時,方式"w"決定了對文件進行的操作是().A)只寫盤B)只讀盤C)可讀可寫盤D)追加寫盤答案:A解析:[單選題]23.在執(zhí)行inta[][3]={1,2,3,4,5,6};語句后,a[1][1]的值是()A)1B)4C)5D)2答案:C解析:[單選題]24.下列關系表達式中,結果為"假"的是______。A)(3+4)>6B)(3!=4)>2C)3>=4||3D)(3<4)==1答案:B解析:[單選題]25.表達式(int)((double)9/2)-9%2的值是A)0B)3C)4D)5答案:B解析:[單選題]26.運行下段程序的結果是()。#include<stdio.h>main(){intx;for(x=1;x<=100;x++)if(++x%==0)if(++x%3==0)if(++x%5==0)printf(''%d'',x);}A)31,61,91B)30,60,90C)不輸出任何內容D)29,59,89答案:D解析:[單選題]27.以下為計算x2+2x-3之值而定義的宏中,形式正確、使用可靠的是_____A)#defineF(x)((x)*(x)+2*(x)-3)B)#defineF(x)=(x)*(x)+2*(x)-3C)#defineF(x)x*x+2*x-3D)#defineF(x)(x*x+2*x-3)答案:A解析:[單選題]28.字符串?ABC?在內存占用的字節(jié)數(shù)是()A)3B)4C)6D)8答案:B解析:[單選題]29.以下不能定義為用戶標識符是()A)manB)_0C)_intD)sizeof答案:D解析:[單選題]30.已定義inta[][3]={1,2,3,4,5,6,7,8,9};,則a[1][2]的初值為()。A)2B)4C)6D)8答案:C解析:[單選題]31.已知:charb[20];,若要從鍵盤輸入字符串"HelloWorld!",則正確的輸入語句是______。A)scanf("%c",b);B)scanf("%s",b[20]);C)gets(b);D)gets(b[20]);答案:C解析:[單選題]32.一個函數(shù)返回值的類型是由()。A)return語句中的表達式類型決定B)定義函數(shù)時所指定的函數(shù)類型決定C)調用該函數(shù)的主調函數(shù)的類型決定D)在調用函數(shù)時臨時指定答案:B解析:[單選題]33.執(zhí)行下列程序段后的輸出結果是____()___.intx=1,y=1,z=1;x+=y+=z;printf("%d\n",x<y?y:x);A)3B)2C)1D)4答案:A解析:[單選題]34.有以下程序段inta,b,c;a=10;b=50;c=a;if(a>b)a=b,b=c;c=a;printf("a=%db=%dc=%d\n",a,b,c);程序的輸出結果是()A)a=10b=50c=10B)a=10b=50c=30C)a=10b=30c=10D)a=50b=30c=50答案:A解析:[單選題]35.下述C語言轉義符中()是非法的。A)'\b'B)'\037'C)'\0xf'D)'\''答案:D解析:[單選題]36.C語言中系統(tǒng)的標準輸出文件是指____。A)屏幕B)鍵盤C)文件D)源程序答案:A解析:[單選題]37.若i,j已定義為int類型,則以下程序段中內循環(huán)體的總的執(zhí)行次數(shù)是for(inti=5;i>=0;i--){for(intj=0;j<4;j++){}}A)20B)25C)24D)30答案:C解析:[單選題]38.正確的C語言標識符是()。A)_buy_2B)2_buyC)?_buyD)buy?答案:A解析:[單選題]39.己有聲明?inta=0,b=l,*p,*q;?,下列正確的語句是_。A)A=p;B)B=q;C)P=&a;D)P=&q;答案:C解析:[單選題]40.下列程序段執(zhí)行后s值為Inti=5,s=0;While(i--)if(i%2)continue;elses+=i;A)15B)10C)9D)6答案:D解析:[單選題]41.關于C語言的變量名,以下敘述正確的是()。A)變量名不可以與關鍵字同名B)變量名不可以與預定義標識符同名C)變量名必須以字母開頭D)變量名是沒有長度限制的答案:A解析:合法的標識符由字母(大、小寫均可)、數(shù)字和下劃線組成,并且必須以字母或下劃線開頭。關鍵字是指被C語言保留的,不能用作其他用途的標識符,它們在程序中都代表著固定的含義,用戶不可重新定義,A項正確、BC兩項錯誤。變量名沒有長度限制,但不可超過編譯器可以辨識的范圍,D項錯誤。答案選擇A選項。[單選題]42.函數(shù)調用fread(buf,64,2,fp)的功能是()。A)從fp所指文件流中讀出整數(shù)64,并存放在buf中B)從fp所指文件流中讀出整數(shù)64和2,并存放在buf中C)從fp所指文件流中讀出64字節(jié)的字符,并存放在buf中D)從fp所指文件流中讀出2個64字節(jié)的字符,并存放在buf中答案:D解析:[單選題]43.以下的for循環(huán)。for(x=0,y=0;(y!=123)&&(x<4);x++);A)是無限循環(huán)B)循環(huán)次數(shù)不定C)執(zhí)行4次D)執(zhí)行3次答案:C解析:[單選題]44.C語言中非空的基本數(shù)據(jù)類型包括___()___.A)整型,實型,邏輯型B)整型,實型,字符型C)整型,字符型,邏輯型D)整型,實型,邏輯型,字符型答案:B解析:[單選題]45.公司中有多個部門和多名職員,每個職員只能屬于一個部門,一個部門可以有多名職員。則實體部門和職員間的聯(lián)系是()。A)1:1聯(lián)系B)m:1聯(lián)系C)1:m聯(lián)系D)m:n聯(lián)系答案:C解析:實體間的聯(lián)系有如下情況:①一對一(1:1);②一對多(1:m);③多對多(m:n)。本題中,一個部門可以有多名職員,而每個職員只能屬于一個部門,所以,部門和職員間是一對多的聯(lián)系。答案選擇C選項。[單選題]46.C語言的if語句嵌套時,if與else的配對關系是()。A)每個else總是與它上面最近的沒有配對過if配對B)每個else總是與最外層的if配對C)每個else與if的配對是任意的D)每個else總是與它上面的if配對答案:A解析:[單選題]47.已知程序片段:do{x++;}while(0)則x++;語句執(zhí)行的次數(shù)是:A)0B)1C)無限D)出錯答案:B解析:[單選題]48.Inta=1,b=2,c=3;if(a>b)a=b;if(a>c)a=c;則a的值為()。A)不一定B)2C)1D)3答案:C解析:[單選題]49.下列符號選項中,哪個用來描述流程圖中的判斷()A)矩形B)菱形C)平行四邊形D)橢圓形答案:B解析:[單選題]50.已知字符a'的ASCII碼為97,執(zhí)行下列語句的輸出是Printf("%c%d",'b,b+1);()A)b99B)98cC)9899D)bc答案:A解析:[單選題]51.若程序中有下面的說明和定義Structabc{intx;chary;}Abcx,y;則會發(fā)生的情況是()。A)編譯出錯B)程序將順利編譯、連接、執(zhí)行C)能順利通過編譯、連接,但不能執(zhí)行D)能順利通過編譯、但連接出錯答案:A解析:[單選題]52.將一個函數(shù)指定為static存儲類別后,該函數(shù)將()。A)既可以被同一源文件中的函數(shù)調用,也可以被其他源文件中的函數(shù)調用B)只能被同一源文件中的函數(shù)調用,不能被其他源文件中的函數(shù)調用C)只能被其他源文件中的函數(shù)調用,不能被同一源文件中的函數(shù)調用D)既不能被同一源文件中的函數(shù)調用,也不能被其他源文件中的函數(shù)調用答案:B解析:[單選題]53.設有如下定義:Charstr1[]="string",str2[8],str3,str4[10]="string";則以下語句中不能正確執(zhí)行的是()。A)strcpy(str1,"HELLO1");B)strcpy(str2,"HELLO2");C)strcpy(str3,"HELLO3");D)strcpy(str2,str4);答案:C解析:[單選題]54.下面屬于白盒測試方法的是()。A)邊界值分析法B)基本路徑測試C)等價類劃分法D)錯誤推測法答案:B解析:白盒測試是把程序看成裝在一只透明的白盒子里,測試者完全了解程序的結構和處理過程。它根據(jù)程序的內部邏輯來設計測試用例,檢查程序中的邏輯通路是否都按預定的要求正確地工作。白盒測試的主要技術有邏輯覆蓋測試、基本路徑測試等,B選項正確。常用的黑盒測試方法和技術有:等價類劃分法、邊界值分析法、錯誤推測法和因果圖等,ACD三項錯誤。答案選擇B選項。[單選題]55.以下能正確輸出字符a的語句是()。A)printf("%s","a");B)printf("%s",'a');C)printf("%c","a");D)printf("%d",'a');答案:A解析:輸出函數(shù)printf()的一般形式為?printf("格式控制字符串",輸出項1,輸出項2,…)?,輸出項的形式要和格式控制字符串中的格式控制符保持一致,"%s"為輸出字符串,"%c"為輸出單個字符,"%d"為以十進制形式輸出帶符號整數(shù),答案選擇A選項。[單選題]56.對數(shù)學式2sinx正確的C語言表達式是____。A)2*sinxB)2sinxC)2*sin(x)D)2sin(x)答案:C解析:[單選題]57.若調用一個函數(shù),且此函數(shù)中沒有return語句,則正確的說法是該函數(shù)。A)沒有返回值B)返回若干個系統(tǒng)默認值C)返回一個用戶所希望的函數(shù)值D)返回一個不確定的值答案:D解析:[單選題]58.下面程序Voidprtv(int*x){++*x;Printf("%d\n",*x);}Main(){inta=24;Prtv(&a);}的輸出是______。A)23B)24C)25D)26答案:C解析:[單選題]59.若有定義語句doublea,*p=&a;,下列敘述中錯誤的是()。A)定義語句中的*號是一個間址運算符B)定義語句中的*號是一個說明符C)定義語句中的p只能存放double類型變量的地址D)定義語句中,*p=&a把變量a的地址作為初值賦給指針變量p答案:A解析:[單選題]60.有下列程序:#include?stdio.h?Main(){Inta=0,b=0,c=0;If(a++||b++&&++c)Printf("%d,%d,%d\n",A,B,c);ElsePrintf("%d,%d,%d\n",A,C,b);}程序執(zhí)行后的輸出結果是______。A)1,1,1B)1,0,1C)1,0,0D)1,1,0答案:B解析:[單選題]61.程序中頭文件type1.h的內容是:#defineN5#defineM1N*3程序如下:#include"type1.h"#defineM2N*2Main(){inti;I=M1+M2;printf("%d\n",i);}程序編譯后運行的輸出結果是______。A)10B)20C)25D)30答案:C解析:[單選題]62.有以下程序段:charc1='1',c2='2';c1=getchar();c2=getchar();putchar(c1);putchar(c2);運行時從鍵盤上輸入:a↙后,以下敘述中正確的是()。A)變量c1被賦予字符a,c2被賦予回車符B)程序將等待用戶輸入第2個字符C)變量c1被賦予字符a,c2中將無確定值D)變量c1被賦予字符a,c2中仍是原有字符'2'答案:A解析:[單選題]63.以下選項中不屬于字符常量的是()。A)'C'B)"C"C)'\xCC'D)'\072'答案:B解析:B項,C語言中用雙引號表示字符串,在分配存儲空間時需要包含"\0"作為結束標志。CD兩項,分別表示十六進制、八進制格式ASCII碼值對應的字符常量。答案選擇B選項。[單選題]64.對于函數(shù)體,說法錯誤的是()A)函數(shù)體內的說明語句就是定義一些本函數(shù)體內用到的變量。B)函數(shù)頭里有的形參在本函數(shù)體內不用再次定義。C)不同的函數(shù)體,不允許使用相同的變量名。D)函數(shù)體用花括號括著。答案:C解析:[單選題]65.C語言double中類型數(shù)據(jù)占字節(jié)數(shù)為()A)4B)8C)12D)16答案:B解析:在VC環(huán)境下,double型數(shù)據(jù)在內存中占8個字節(jié),float型數(shù)據(jù)占4個字節(jié),int型數(shù)據(jù)占2個字節(jié)char型數(shù)據(jù)占1個字節(jié)。所以選擇B[單選題]66.請選出可以作為C語言用戶標識符的一組標識符號()A)voiddefineWORDB)a3_b3_123IFC)for-abccaseD)2aD0size答案:B解析:[單選題]67.若已定義x和y為double類型,則表達式x=1,y=x+3/2的值是()。A)1B)2C)2.0D)2.5答案:C解析:[單選題]68.假設c語言中int型數(shù)據(jù)類型占4個字節(jié),經下列語句定義后,Charx=65;Floaty=7.3;Inta=100;Doubleb=4.5;Sizeof(x),sizeof(y),sizeof(a),sizeof(b)在微機上的值分別為()。A)1,4,4,8B)2,2,2,4C)1,2,2,4D)2,4,2,8答案:A解析:[單選題]69.設整型變量a=2,則執(zhí)行下列語句后,浮點型變量b的值不為0.5的是()A)b=1.0/aB)b=(float)(1/a)C)b=1/(float)aD)b=1/(a*1.0)答案:B解析:[單選題]70.若已定義chars1[20],s2[20];能正確從鍵盤讀入字符串的是()A)gets(s1[20],s2[20]);B)scanf(?%s%s?,s1,s2);C)scanf(?%c%c?,s1[20],s2[20]);D)getch(s1,s2);答案:B解析:第2部分:多項選擇題,共7題,每題至少兩個正確答案,多選或少選均不得分。[多選題]71.a為非零時顯示x,為零時顯示y。能完成該功能的語句是()。A)if(a==0)printf("%d\n",y);elseprintf("%d\n",x);B)if(!a)printf("%d\n",y);elseprintf("%d\n",x);C)if(a)printf("%d\n",x);elseprintf("%d\n",y);D)if(a!=0)printf("%d\n",x);elseprintf("%d\n",y);答案:ABCD解析:[多選題]72.設int數(shù)據(jù)占用兩個字節(jié),float數(shù)據(jù)占用四個字節(jié),double數(shù)據(jù)占用8個字節(jié),且已知floata=2;intb=3;則執(zhí)行下列語句輸出結果錯誤的是()。printf("%d",sizeof(a*b)+2/5);A)4B)8C)6D)7答案:ACD解析:[多選題]73.以下為無限循環(huán)的語句或語句組是()A)n=0;do{++n;}while(n<=0);B)n=0;while(1){n++;}C)n=10;while(n);{n--;}D)for(n=0,i=1;;i++)n+=i;答案:BD解析:[多選題]74.若定義chars[10];則下面表達式中能表示s[1]的地址的是()。A)s++B)&s[0]+1C)s+1D)&s[1]答案:BCD解析:第3部分:填空題,共2題,請在空白處填寫正確答案。[填空題]75.若a=1,b=2,c=3,d=4,則表達式a>b?a:c>d?c:d的值是。答案:4解析:[填空題]76.若a=1,b=2,則表達式a>b?a:b+1的值是。答案:3解析:第4部分:判斷題,共8題,請判斷題目是否正確。[判斷題]77.用戶標識符中可以出現(xiàn)下劃線,但不可以放在用戶標識符的開頭A)正確B)錯誤答案:錯解析:[判斷題]78.if(x>y);是正確的if語句A)正確B)錯誤答案:對解析:[判斷題]79.for(i=1;i++<4;);語句結束后變量i的值是4答案:錯解析:[判斷題]80.當程序執(zhí)行中,數(shù)組元素的下標超出所定義的下標范圍時,系統(tǒng)將給出?下標越界?的出錯信息A)正確B)錯誤答案:錯解析:[判斷題]81.字符串在內存中的起始地址稱為字符串的指針,可以定義一個字符指針變量指向一個字符串A)正確B)錯誤答案:對解析:[判斷題]82.C程序中如果對一維數(shù)組的全部元素都賦初值,則定義數(shù)組時不必指定數(shù)組長度。A)正確B)錯誤答案:對解析://C7數(shù)組/C73一維數(shù)組的定義T[判斷題]83.指針變量中只能存放地址A)正確B)錯誤答案:對解析:[判斷題]84.if語句后面的表達式必須用圓括號括起來。A)正確B)錯誤答案:對解析:第5部分:問答題,共13題,請在空白處填寫正確答案。[問答題]85.已知i=5,寫出語句i*=i+1;執(zhí)行后整型變量i的值是____.答案:30解析:[問答題]86.求1+2!+3!+...+20!的和答案:main(){floatn,s=0,t=1;for(n=1;n<=20;n++){t*=n;s+=t;}printf("1+2!+3!...+20!=%e\n",s);}解析:[問答題]87.程序修改題所屬年份:2010.9;2011.3;2012.3;下列給定程序中函數(shù)fun的功能是:將s所指字符串中出現(xiàn)的與t1所指字符串相同的子串全部替換為t2所指字符串,所形成的新串放在w所指的數(shù)組中。要求t1和t2所指字符串的長度相同。例如,當s所指字符串中的內容為"abcdabfab",t1所指子串中的內容為"ab",t2所指子串中的內容為"99"時,在w所指的數(shù)組中的內容應為"99cd99f99"。請改正程序中的錯誤,使它能得出正確的結果。注意:部分源程序在文件MODI1.C中,不得增行或刪行,也不得更改程序的結構!#include<stdio.h>#include<string.h>voidfun(char*s,char*t1,char*t2,char*w){char*p,*r,*a;strcpy(w,s);while(*w){p=w;r=t1;***********found************/while(r)if(*r==*p){r++;p++;}elsebreak;if(*r=='\0'){a=w;r=t2;while(*r){***********found************/*a=*r;a++;r++}w+=strlen(t2);}elsew++;}}main(){chars[100],t1[100],t2[100],w[100];printf("\nPleaseenterstringS:");scanf("%s",s);printf("\nPleaseentersubstringt1:");scanf("%s",t1);printf("\nPleaseentersubstringt2:");scanf("%s",t2);if(strlen(t1)==strlen(t2)){fun(s,t1,t2,w);printf("\nTheresultis:%s\n",w);}elseprintf("Error:strlen(t1)!=strlen(t2)\n");}答案:while(*r)|*a=*r;a++;r++;解析:【考點分析】本題考查:指針型變量;C語言語法?!窘忸}思路】while(r)和r++都是簡單的邏輯和語法錯誤,C語言中語句必須以分號";"結尾。只要掌握了C語言的基礎知識,發(fā)現(xiàn)這樣的錯誤是很容易的。[問答題]88.有以下程序main(){chara[20]="Howareyou?",b[20];scanf("%s",b);printf("%s%s\n",a,b);}程序運行時從鍵盤輸入:Howareyou?則輸出結果為____。答案:Howareyou?How;解析:[問答題]89.設x、y和z都是int型變量,m為long型變量,則在16位微型機上執(zhí)行下面賦值語句后,y值為(),z值為(),m值為()。y=(x=32767,x-1);z=m=oxffff;答案:32766、-1、65535解析:[問答題]90.輸入三個整數(shù)x,y,z,請把這三個數(shù)由小到大輸出。答案:main(){intx,y,z,t;scanf("%d%d%d",&x,&y,&z);if(x>y){t=x;x=y;y=t;}/*交換x,y的值*/if(x>z){t=z;z=x;x=t;}/*交換x,z的值*/if(y>z){t=y;y=z;z=t;}/*交換z,y的值*/printf("smalltobig:%d%d%d\n",x,y,z);}解析:[問答題]91.在C語言程序中,無論是一般磁盤文件還是設備文件,都可以通過文件結構類型的數(shù)據(jù)集合進行輸入、輸出操作。而且文件結構是由系統(tǒng)定義的,取名為_______。答案:FILE解析:/基本理論/C11文件/C11_2文件結構定義[問答題]92.class="fr-ficfr-dibcursor-hover"答案:i<=y|fz*=x解析:[問答題]93.在C語言中,所謂指針就是某個對象(變量、數(shù)組和函數(shù)等)所占用的內存單元的起始()。答案:地址解析:[問答題]94.程序設計所屬年份:2011.9;學生的記錄由學號成績組成,N名學生的數(shù)據(jù)已放入主函數(shù)中的結構體數(shù)組s中,請編寫函數(shù)fun,其功能是:函數(shù)返回該學號的學生數(shù)據(jù),指定的學號在主函數(shù)中輸入。若沒找到指定學號,在結構體變量中給學號置空串,給成績置-1,作為函數(shù)值返回。(用于字符串比較的函數(shù)是strcmp)。注意:部分源程序在文件PROG1.C中。請勿改動主函數(shù)main和其它函數(shù)中的任何內容,僅在函數(shù)fun的花括號中填入你編寫的若干語句。#include<stdio.h>#include<string.h>#defineN16typedefstruct{charnum[10];ints;}STREC;STRECfun(STREC*a,char*b){}main(){STRECs[N]={{"GA005",85},{"GA003",76},{"GA002",69},{"GA004",85},{"GA001",91},{"GA007",72},{"GA008",64},{"GA006",87},{"GA015",85},{"GA013",91},{"GA012",64},{"GA014",91},{"GA011",77},{"GA017",64},{"GA018",64},{"GA016",72}};STRECh;charm[10];inti;FILE*out;printf("Theoriginaldata:\n");for(i=0;i<N;i++){if(i%4==0)printf("\n");printf("%s%3d",s[i].num,s[i].s);}printf("\n\nEnterthenumber:");gets(m);h=fun(s,m);printf("Thedata:");printf("\n%s%4d\n",h.num,h.s);printf("\n");out=fopen("out.dat","w");h=fun(s,"GA013");fprintf(out,"%s%4d\n",h.num,h.s);fclose(out);}答案:STRECfun(STREC*a,char*b){inti;STRECstr={"\0",-1};/*若沒找到指定的學號,在結構體變量中給學號置空串,給成績置-1*/for(i=0;i<N;i++)if(strcmp(a[i].num,b)==0)/*找到指定學號的學生數(shù)據(jù)*/str=a[i];returnstr;/*返回學生記錄*/}解析:【考點分析】本題考查:結構體類型;字符串比較函數(shù)strcmp()的應用?!窘忸}思路】本程序一開始先使結構體變量str中的學號為空串,成績?yōu)椋?。循環(huán)體的功能是搜索所有學生的學號,并判斷是否有學號與

溫馨提示

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

最新文檔

評論

0/150

提交評論