




已閱讀5頁,還剩16頁未讀, 繼續(xù)免費閱讀
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
交通學院213、214 C+(上)總練習題C+練習題第一、二章 習題一、選擇題1下列符號串中不合法的C語言標識符是 。A register B Turbo_C C auto_ D _1232A是一個整型變量,則執(zhí)行下列輸出語句后a的值是 。cout(a=3*5,a*4,a+5);A 65B 0C 15D 103若有整型變量a和c,c的當前值是5,則執(zhí)行下列語句后a的值是 。a=2+(c+=c+,c+8,+c);c+=c+后c值為11,再自增為12A 13B 14C 15D 164若有整型變量x的當前值是3,則執(zhí)行下列語句的結(jié)果是 。docout(x-=2);while(!(-x); 輸出1,3變?yōu)?后,為邏輯真,取反為假,退出循環(huán)A 輸出值0B 輸出值1和-2C 輸出值3和0D 陷入死循環(huán)5從語法的角度來看,語句if(a=b=c)x+;是 。用&或|連接邏輯表達式A正確的B語法正確,但在編譯是會有警告信息C語法上是錯誤的D編譯系統(tǒng)不會進行相關(guān)檢查6設(shè)有定義 enum colorred=3,yellow,blue=10,white,black;則black的值是 。A 7B 15C 12D 147數(shù)學式在C程序中對應(yīng)正確的表達式為 。Asqrt(x*x+y*y)/x*yBSQRT(x*x+y*y)/x*yCsqrt(x*x+y*y)/x/y)DSQRT(x*x+y*y)/(x*y)8設(shè)有變量說明:int x;則表達式(x=4*5,x*5),x+25的值為 。A20B45C100D1259設(shè)有說明:int x=1,z=1,y=1,k;執(zhí)行語句:k=x+|+y&+z;后,變量y的值為 。優(yōu)化原則,|前為真,則后面并不運算A1B2C3D410在C語言中,下面符號串中,能用作變量名的標識符為 。AautoBputsC-1*num D2-and11下面四個用戶定義的標識符中,只有一個 是正確的。A caseB _53C a&bD ab-c12在16位系統(tǒng)中,對整型變量int i=32767;+i的值是 。補碼,有符號整數(shù)A -1 B 0 C -32768 D 3276813有枚舉類型.enum directionUP,Down,LEFT=6,RIGHT;其枚舉成員Down的值是。A 1B 2C 5D 714已知整型變量a和b的當前值分別為13和20,a|b的值是 。A 0B 1C 4D 2915在32位系統(tǒng)中求表達式s=10!的值時,變量s的類型應(yīng)當是 。A intB unsignedC longD以上三種都可以16下面的常量表示有一個是不正確的,不正確的是。A -0B 0x203C 55D 10317浮點型變量f當前存儲的值是17.8,經(jīng)(int)f類型強制后f存儲的值是 。A 17B 18C 不變D 不可確定18如果有下列變理定義:char c=97;則coutc+d?a:bDx *=y+2523下面的常量表示中不正確的是 A、0 B.0fd C.n D. . 5e324設(shè)有枚舉類型定義:enum d (up,down=3,left,right);則枚舉量right的值為 A. 5 B. 4 C.3 D.2 25如果整型量a,b,c的值分別為5、4、3,則語句 if(a=b=c) c+;執(zhí)行后c的值是 A,語法錯誤 B. 4 C.2 D. 3有warnning,但if結(jié)果為假26設(shè)標識符ch,a都被定義為字符型變量,以下賦值語句不正確的是_A cha+3;B. chch+a; C.ch=c+h; D. ch+=ch-a27設(shè)有說明enum colorred,blue=100,yellow,black,括號中每個元素的實際值依次是_。A.0,100,101,102 B.100,101,102,103 C.0,1,2,3 D.1,2,3,428將變量a強制轉(zhuǎn)換為具有b類型的數(shù)據(jù),應(yīng)表示為_。A.(b)a B.a(b) C.b(a) D.(a)b29有整型變量x ,y ,其中y!=0,下列 與x等價A x/y*yB x%y*yC x/y*y+x%yD 以上都不是30已知整型變量a和b的當前值分別為13和16. a&b 的值是 A.0B.1C .29D.331設(shè)有定義enum colorred,yellow=3,blue=10,white,black;則red的值是 。A2B15C1D032C+將數(shù)據(jù)分為若干類型,定義數(shù)據(jù)類型實際給出了兩方面的信息:定義該類型數(shù)據(jù) 。 A有效數(shù)字位數(shù)和數(shù)值表示范圍 B占用多大存儲空間和允許的運算 C數(shù)值和字符的不同表示以及適用范圍 D適用范圍和允許的運算33以下給出的標識符中可用作合法的變量名。 A goto B $price C sum D 9kilo34設(shè)im a=l,b=2;那么執(zhí)行表達式a+&+b;后a和 b的值分別是 。 A 1和2 B 2和2 C 1和3 D 2和335在32位系統(tǒng)中,定義變量并賦值short int x=32767,則執(zhí)行+X后X的值為 。 A 32767 B 32768 C -l D -3276836設(shè)整型變量X的值是5,則表達式2X5的值是 。 A 不確定 B 1 C 0 D 表達式非法37ab且ed的c+表達式描述為 。 A ab,c=d B a!=b&c=d C a=!b&c=d D a!=b&cch B cinget(ch) C cinget(ch) D ch=get()39設(shè)有變量定義im x=100,y=1,Z,若執(zhí)行語句Z=y0?+x:-x,變量z的值為 。 A 99 B 100 C 10l D 10240表示程序流程的三種基本結(jié)構(gòu)是 A 順序、選擇、循環(huán) B 選擇、循環(huán)、返回C 函數(shù)、語句、數(shù)組 D 主函數(shù)、子函數(shù)、變量41用#include 命令包含的文件是 A 目標文件 B 可執(zhí)行文件 C 源程序文件 D 二進制文件42若有a=13,b=5,c=3則a%b*c的值為 A 6 B 9 C 7.8 D 843在中,能用作變量名的標識符為 break B puts -2*b 3-and44若有宏定義和變量說明如下:#define X1#defineYX+1#defineZY*X/2int ;=Y;則執(zhí)行以下語句后輸出的結(jié)果是: coutZ;A 7 5 1 1 12 5 D 7 645設(shè)x=2;y=3;表達式x=y= =3運算后。x= A 1 B 2 C 3 D 046一個可執(zhí)行C+程序的開始執(zhí)行點是 A 程序的第一條語句 B 包含文件的第一個函數(shù) C 名為void main的函數(shù) D 程序中的第一個函數(shù)47浮點型變量f當前存儲的值是17.8,經(jīng)(int)f類型強制后f存儲的值是。A 17B 18C 不變D 不可確定48如果有下列變量定義:char c=97;則coutc ; 的輸出是 A aB 97C 定義非法D 賦初值非法49若變量已正確定義并賦值,符合c+語言語法的表達式是 。Aa=a+7; Ba=7+b+c,a+ Cint(1234) Da=a+7=c+b50在C+語言中,int、float和long int這3種類型數(shù)據(jù)所占用的內(nèi)存是 。 A均為4個字節(jié) B由用戶自己定義C由所用機器的機器字長決定的 D任意的51若a、b、c、d都是int類型變量且初值為0,以下選項中不正確的賦值語句是 。Aa=b=c=d=100; Bd+; Cc+b; Dd=(c=22)-(b+);二、填空題1設(shè)a、b、c都是整型,則a=b=c=5時,下列表達式的結(jié)果是a= 、b= 、c= 。a+=b+c+2數(shù)學表達式sin(30 o)+x2cos(20o)的C+語言表達式是 。3設(shè)有int x=y=z=1;則執(zhí)行+x|+y&+z后,x= 、y= 、z= 。4程序main()int i=4,j=5,k=6;i+&+j|+k;coutijk;程序的輸出是。5程序main()int a=13,b=16;cout!ata&b;程序輸出為。6程序#define PR(x,y,z)coutxtytz=9%5+6%5;coutin;+i|+j&+k;PR(i,j,k);i+=j+;cout10?x+100:x-10 的值是 8若整型變量w=1,x=2,y=3,z=4,則條件表達式wx ? w : z y ? z : x的值為_9int a=5,b=6,c=1,x=2,y=3,z=4;c=(a=cx)&(b=yz);問:執(zhí)行上述程序后,b的值是_,c的值是_。10程序voidmain()int x,y,z;x=y=z=0;cout(x+&+y|z+)n;coutxtytz;程序第一行輸出為 程序第二行輸出為 11程序#define PR1(num) coutnum ; coutt#define PR2(a,b) PR1(a);PR1(b)#define PRINT(c,d)coutcdmain()int x=10,y=20,z=100;PR1(x);PR2(x,y);PRINT( hex , z);下面程序的執(zhí)行結(jié)果輸出 。1、程序void main()int i=4,j=5,k=6;i+&+j|+k;coutijk;程序的輸出是。2、程序#define PR(x,y,z)coutxtytz=9%5+6%5;coutin;+i|+j&+k;PR(i,j,k);i+=j+;couti;程序的第一行輸出是。 程序的第二行輸出是。程序的最后一行輸出是 。12void main() enum wmon,tues,wednes=3 ; w week; int k;for(k=mon;k=wednes;k+)switch(k)case0: week =mon; break;case1: week =tues; break;case2:week =wednes;break;switch(week)case mon:cout(int)mon; break;casetues:cout(int)tues;break;case wednes:cout(int)wednes;break;問題一:枚舉元素mon,tues,wednes的值依次是:_ 問題二:運行程序的輸出結(jié)果是:_ 問題三:程序運行結(jié)束時,變量k的值是:_ 第三章 選擇、循環(huán)結(jié)構(gòu)一、選擇題1設(shè)整型變量x的當前值為3,執(zhí)行以下循環(huán)語句后,輸出的結(jié)果是 。do cout(x-=2);while(!(-x)A0 B1 -2 C3 0D死循環(huán),輸出許多值2當前整型變量i的值是10,執(zhí)行下列switch語句后i的值是 。13switch(i)case 9: i+=1;case 10: i+=1;case 11: i+=1;defaule:i+=13對下面三條語句,正確的論斷是 。(1)if(a)s;else s2;(2)if(a=0)s2;else s1;(3)if(a!=0)s1;else s2;A三者相互等價B三者相互不等價C只有(2)和(3)等價D以上三咱說法都不正確4下列關(guān)于break和switch語句的敘述中,正確的是 。Abreak是switch語句的一個成分B在語句switch中可以根據(jù)需要使用或不使用break語句C在語句switch中必須使用break語句D上述結(jié)論中兩個正確的5設(shè)有程序段int x=10; while (x=0) x=x-1;則下面描述中正確的是 A while 循環(huán)執(zhí)行10次 B 循環(huán)是無限循環(huán) C 循環(huán)體語句一次也不執(zhí)行 D 循環(huán)體語句只執(zhí)行一次6退出一個循環(huán)語句(不終止函數(shù)的執(zhí)行)的有效措施是: A、用break語句B、用continue 語句C、用return語句 D、用exit語句7設(shè)整型變量x的當前值為3,執(zhí)行以下循環(huán)語句后,輸出的結(jié)果為: docout;while ( ! (); 、0B、1 2 C、3 0D、死循環(huán),輸出許多值8對下面三條語句,正確的論斷是。(1)if(a)s1; else s2; (2)if(a=0)s2;else s1; (3)if(a!=0)s1;else s2;A、三者相互等價B、三者相互不等價C、只有(2)和(3)等價D、以上三咱說法都不正確9以下關(guān)于switch語句和break語句的描述中,只有 是正確的。A在switch語句中必須使用break語句Bbreak語句只能用于switch語句C在switch語句中,可以根據(jù)需要使用或不使用break語句Dbreak語句是switch語句的一部分10C+語言中 。A不能使用do-while語句構(gòu)成的循環(huán)Bdo-whiIe語句構(gòu)成的循環(huán)必須使用break語句才能退出Cdo-while語句構(gòu)成的循環(huán),當while語句中的表達式值為非零時結(jié)束循環(huán)Ddo-while語句構(gòu)成的循環(huán),當while語句中的表達式值為零時結(jié)束循環(huán)11對于for(表達式1;表達式3)可理解為 。Afor(表達式1:0:表達式3)Bfor(表達式1;1;表達式3)Cfor(表達式1;表達式1;表達式3)Dfor(表達式1;表達式3;表達式3)二 填空題1有整型變量a、b,則下列for循環(huán)中的輸入語句最少可執(zhí)行 次,最多可執(zhí)行 次for(a=0,b=0;b!=30&ab;2設(shè)整型變量I初值是1,則語句while(I+5);執(zhí)行后I的值是 。3下面程序的執(zhí)行結(jié)果輸出 ,#define PR1(num) counum ; cout0; y-)if(y%3=0)cout -yt;5下面程序的執(zhí)行結(jié)果是 。#includemain()int x=1,i=1;for(;x10)break;if(x%2)x+=3;continue;x=1;coutxin6程序#includemain()unsigned i;int count=1;i=0;while(i=1)=0)count+;cout“count=”count=1)改為(i1)程序的結(jié)果是。不作上述修改,而將unsigned i;改為unsigned char i;;程序的輸出結(jié)果是。7程序main()int i=1;while(i+5);couti;程序的輸出是。8int a,b;for(b=1,a=1;b=10) break;if(a%2=1)a+=5;continue;a-=3;問:執(zhí)行上述程序段后,a的值是 ,b的值是 9void main()int m,n,x,y;cinxy;m=1;n=1;if(x0) m=m+1;if(xy) n=n+m;else if(x=y) n=5;else n=2*m;coutmb) if (ac) couta; else cout b;cout”end”endl;問:執(zhí)行上述程序后輸出_。11執(zhí)行下列程序段后,變量n的值是: int n=10;switch(n) case 9:n-=1; case 10:n+=1; case 11:n-; case 12:n+; default: +n;三 完善程序題1求f(X)=-x2/2!+x4/4!-x6/6+x8/8!要求精度為十萬分之一#include#includemain()double x,y,t;int n=0;coutxt=1;while(fabs(t)1e-6)n+;y+=(t=);cout“y(“x”)=”yn;2程序功能:在三個整數(shù)a,b和C中選出最大者,將該值輸出。void main() im a,b,c,max; coutabc: cout”a=:”atb:btc=cendl: if( )max=a; else if( )max=b; else ; cout”最大數(shù)為:max=” endi;3程序功能:用數(shù)字0和9之間不同的數(shù)字構(gòu)造所有可能的三位數(shù)(個位、十位和百位上的數(shù)字各不相同),并統(tǒng)計出共有多少種。#includevoid mainO int i,j,k,count=0; for(i=1;i= ;i+) for(j=0;j= ;j+) if( )continue; else for(k=0;k=9;k+) if( ) cout100*i+10*j+k,; count+; coutendl”Total=”countendl;4完善一個程序,求滿足以下條件的最大的n。12+22+32+n21000#includevoid main() int n,s; s=n=O; while( ) S+=n*n; cout“n=“n-1endl;第四章 函數(shù)習題一、 選擇題1以知函數(shù)原型struct tree f(int,int*,struct tree, struct tree*);其中tree是經(jīng)說明的結(jié)構(gòu)類型。且已有下列定義的變量struct tree pt, *p; int i ;則 是正確的函數(shù)調(diào)用語句。A &pt=f(10,&(i+2),pt,p) B pt=f(i+,(int*)p,pt,&pt);C p=f(i+1,&i,pt,p); D &p=f(10,&i,pt,p);2判斷兩個字符串s1和s2是否相等,應(yīng)當使用 。Aif(s1=s2)Bif(s1=s2)Cif(strcmp(s1,s)Dif(!strcmp(s1,s2)3C+語言中函數(shù)返回值的類型是由 決定的。Areturn語句中的表達式類型B調(diào)用該函數(shù)的主調(diào)函數(shù)類型C定義函數(shù)時所指定的函數(shù)類型D傳遞給函數(shù)的實參類型4下列論斷正確的是:在C+語言的函數(shù)中, 。A、可以定義和調(diào)用其他函數(shù)B、可以調(diào)用但不能定義其他函數(shù)C、不可以調(diào)用但能定義其他函數(shù)D、不可以調(diào)用也不能定義其他函數(shù)5在一個源文件中定義的全局變量的作用域為 A、文件的全部范圍 B、本程序的全部范圍 C、本函數(shù)的全部范圍D、從定義該變量的位置開始至本文件的結(jié)束6設(shè)函數(shù)聲明語句中的參數(shù)表為(int&a,int&b,im C),函數(shù)體中a,b,C三個變量的值都發(fā)生變化;主函數(shù)中調(diào)用此函數(shù)的實參表為(X,Y,z),調(diào)用函數(shù)語句執(zhí)行后,以下敘述正確的是。 A)變量X和Y的值發(fā)生變化 B)變量X和Y的值不發(fā)生變化 C)變量X、Y、Z的值都發(fā)生變化 D)只有變量Z的值發(fā)生變化7變量的有效范圍與其定義的位置有關(guān), ,其作用域在整個源程序文件中都有效。A、在第一個函數(shù)中定義的變量B、在定義第一個函數(shù)之前所定義的變量 C、在主函數(shù)中定義的變量D、在函數(shù)中定義的靜態(tài)變量8C+語言中函數(shù)返回值的類型是由 決定的。A、return語句中的表達式類型B、調(diào)用該函數(shù)的主調(diào)函數(shù)類型C、定義函數(shù)時所指定的函數(shù)類型D、傳遞給函數(shù)的實參類型9判斷兩個字符串s1和s2是否相等,應(yīng)當使用 、if (s1=s2) 、if (s1=s2) 、if (strcmp(s1,s2) 、if (!strcmp(s1,s2)10在程序執(zhí)行過程中,該程序的某一個函數(shù)func()中說明的static型變量V有這樣的特性: A、V存在于func()被調(diào)用期間且僅能被func()所用B、V存在于整個程序執(zhí)行過程且僅能被func()所用C、V存在于func()被調(diào)用期間且可被所有函數(shù)所用D、V存在于整個程序執(zhí)行過程且可被所有函數(shù)所用二、填空題1執(zhí)行下面程序共產(chǎn)生 行輸出,第一行輸出和最后一行輸出分別是 及 。#includevoid f(int);main()f(3);void f(int n)static int s=5int a=5if(n!=0)s+;a+coutsta;f(n-1); 2程序int fac(int a)int b=0static int c=3;b+;c+return a+b+c;main()int a=3,j;for(j=0;j3;j+) coutfac(j);招待以上程序后,第一行的輸出是 ,第三行的輸出是 。3程序 void f(int b, int t)int m;if(bt)m=(b+t)/2;coutmn;f(b,m-1);f(m+1,t)main()f(1,6);執(zhí)行以上程序后,第一行的輸出是 ,第二行的輸出是 ,最后一行的輸出是 。4程序(共2分)# define A 3main()int a;# define B(a)(A+1)*a)a=3*(A+B(5);cout(“x=”a”n”;程序是否正確(是或否) ;若程序錯,則原因是(或程序正確, 則輸出結(jié)果是): 。5當一個聯(lián)合類型的變量作為函數(shù)的實參時,它傳遞給函數(shù)的是。6程序int f(int x)int y=1;static int z=1;z+=z+y+;return(z+x);main()coutf(3)n;coutf(3)n;執(zhí)行以上程序后,第一和第二行的輸出分別是和 。7程序 #includeint m=10;int f(int x,int y)int m=5;m+=x*y;return m;void main()int a=6,b=7;coutf(a,b)/mn;執(zhí)行以上程序后,輸出結(jié)果 。8程序 void f(int a)if(a0)cout“-”;a=-a;cout char(a%10+0);if(a=a/10)!=0)f(a);main()int a=-3567;f(a);coutn;a=3456;f(a);cout“n”;執(zhí)行以上程序后,輸出結(jié)果的第一行是 ;第二行是 。9#includevoid main()int k=4,m=1,p;p=fun1(k,m); coutp;p=fun1(k,m); coutpendl;fun1(int x,int y)static int m=0,i=2;i+=m+1;m=i+x+y;return m;問: 程序執(zhí)行后輸出的結(jié)果為 , 10main() int w=2,k; for(k=0;k3;k+) w=f(w); coutwn;f(int x) int y=0; /*static*/ int z=3; y+; z+; return(x+y+z);問題1:執(zhí)行程序后,輸出的第一個數(shù)是_,最后一個數(shù)是_。問題2:如果把對static的注解改為static定義,輸出的第一個數(shù)是_,最火一個數(shù)是_。11#include int fun(int i); main()int i=1; switch(i) defaunlt: i+; break; case 0: i+;fun(i); case 1: i+;fun(i); case 2: i+;fun(i); coutin;int fun(int i) static k=10; i+;k+; coutkn; return k;問:執(zhí)行上述程序后,最后輸出的i是_,k是_。12程序int i=0;voidmain()int i=5;couti;int i=7;cout i;cout:i;
溫馨提示
- 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. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 信息處理技術(shù)員職能測試試題及答案
- 2025屆貴陽市八下數(shù)學期末綜合測試模擬試題含解析
- 信息處理技術(shù)員技能試題及答案展示
- 軟件水平考試的改版動向與試題及答案
- 解密2025年網(wǎng)絡(luò)管理員考試試題及答案
- 營造積極氛圍的年度工作策略計劃
- 黑龍江省安達市一中學2025屆數(shù)學七下期末預測試題含解析
- 學校美術(shù)教育評估體系計劃
- 2025屆湖南省長沙市天心區(qū)部分學校八下數(shù)學期末考試模擬試題含解析
- 人工智能算法實際應(yīng)用試題及答案
- 經(jīng)濟類高等數(shù)學(下)期末考試模擬試卷1及參考答案
- 養(yǎng)老院老人興趣小組活動制度
- 《能力陷阱》課件
- 人教版小學四年級數(shù)學下冊課后練習試題大全
- 廣東省廣州市八區(qū)聯(lián)考2025屆高一物理第一學期期末教學質(zhì)量檢測試題含解析
- 煤礦調(diào)度工作內(nèi)容和方法
- 地坪漆售后服務(wù)措施
- 機動車駕駛培訓理論科目一模擬考試題庫500題(含標準答案)
- 預防醫(yī)學練習題庫(附答案)
- 《讀書·目的和前提》《上圖書館》教學設(shè)計
- 農(nóng)民合作社資產(chǎn)負債表、盈余及盈余分配表、成員權(quán)益表
評論
0/150
提交評論