下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、3.若有整型变量a=2+(c+=c+,A 134.若有整型变量x的当前值是3,则执行下列语句的结果是C+ (上)总复习题第一、二章习题、选择题1 .下列符号串中不合法的C+语言标识符是A register B Turbo_C C auto_ D _123a和c, c的当前值是5,则执行下列语句后a的值是c+8 , +c) ; c+=c+后c值为11,再自增为12B 14C 15D 16docout<<(x-=2);while(!(-x);输出1 , 3变为1后,为逻辑真,取反为假,退出循环A输出值0 B输出值1 C输出值3和0 D陷入死循环5 .从语法的角度来看,语句 if (a&
2、lt;=b<=c ) x+ ;是_。用&&或|连接逻辑表 达式A正确的B语法正确,但在编译是会有警告信息C语法上是错误的D编译系统不会进行相关检查 227 .数学式i-y-在C程序中对应正确的表达式为。x.y一A. sqrt(x*x+y*y)/x*yB. SQRT(x*x+y*y)/x*yC. sqrt(x*x+y*y)/x/y)D. SQRT(x*x+y*y)/(x*y)8 .设有变量说明:int x ;则表达式(x=4*5,x*5) ,x+25 的值为_。A. 20 B. 45 C. 100D. 12510 .在C+语言中,下面符号串中,能用作变量名的标识符为_。A.
3、 auto B. puts C. -1*num D . 2-and11 .下面四个用户定义的标识符中,只有一个是正确的。A case B _53 C a&b D ab-c12 .在16位系统中,对整型变量int i=32767; +i的值是_。补码,有符号整数A -1 B 0 C -32768 D 3276814 .已知整型变量 a和b的当前值分别为13和20 , a|b 的值是_。A 0B 1 C 4 D 2915 .在32位系统中求表达式 s=10 !的值时,变量 s的类型应当是 _。A intB unsignedC long D以上三种都可以16 .下面的常量表示有一个是不正确的
4、,不正确的是_。A -0B 0x203C ''55 'D '103 '18 .如果有下列变理定义:char c=97;则cout<<c ; 的输出是B 97C定义非法D赋初值非法x xe e19.数学式e 在C程序中对应正确的表达式为a bA. exp(x)+exp(-x)/(a+b)B. (exp(x)+exp(-x)/a+bC. (exp(x)+exp(-x)/(a+b) (a+b )D .(eAx+eA(-x)/20 .在 while(! a)A. a= =0中,其中! a与表达式等价B. a= =1C. a ! =1 D. a! =0
5、21 .设有说明:为 。int a, b;执行语句:b=(a=3*5,a*4),a+15;之后,b的值A. 15 B. 30C. 60 D. 9022 .下列表达式中,错误的是_。A. 4.0%2.0B. k+jc. a+b>c+d?a:b D, x *=y+2525 .如果整型量 a,b,c的值分别为5、4、3,则语句if(a>=b>=c)c+行后c的值是A,语法错误B. 4C.2D. 3 有warnning ,但if 结果为假26 .设标识符ch , a都被定义为字符型变量,以下赋值语句不正确的是A. ch =a+' 3'B. ch =' ch &
6、#39; + 'a'C.ch= 'c'+'h'D. ch+=ch-a 28 .将变量a强制转换为具有b类型的数据,应表示为 _ ACA.(b)a B.a(b) C.b(a) D.(a)b 29 .有整型变量x ,y , 其中y!=0,下列与x等价30 .已知整型变量 a和b的当前值分别为13和16. a&b 的值是 AA.0 (位运算) B.1 C .29D.3 32 . C+将数据分为若干类型,定义数据类型实际给出了两方面的信息:定义该类型数据BA有效数字位数和数值表示范围B占用多大存储空间和允许的运算C数值和字符的不同表示以及适用范围
7、D适用范围和允许的运算33 .以下给出的标识符中 C可用作合法的变量名。A goto B $priceC sum D 9kilo34 .设int a=l , b=2 ;那么执行表达式 a+&&+b ;后a和b的值分别是DA 1 和2 B 2 和2C 1 和3 D 2和336 .设整型变量 X的值是5,则表达式2<X<5的值是 B 。A 不确定 B 1 C 0 D表达式非法37 . a w b且e w d的c+表达式描述为 D 。A a Ob, c<=d B a!=b&c=<dC a=!b&&c<=d Da!=b&&a
8、mp;c<二d38 .如果定义了字符变量ch ,以下 B语句可以实现将键入的字符(包括空格、回车及间隔符)赋予ch。A cin>>chC cin>>get(ch)39 .设有变量定义 im x=100z的值为 C 。A 99 B 100B cin . get(ch)D ch=get(),y=1 ,乙若执行语句 Z=y>0?+xoC 10l D 102-x ,变量41 .用#include命令包含的文件是CA目标文件B可执行文件C源程序文件 D 二进制文件42 .若有 a=13,b=5,c=3 贝U a%b*c 的值为 BA 6B 9 C 7.8 D 844
9、.若有宏定义和变量说明如下:# define X1# defineYX+1# defineZY*X/2int a ; a =Y;则执行以下语句后输出的结果是: B cout<<Z<<- a ;A 7 5 B 1 1 C 125 D 7 645 .设x=2;y=3; 表达式x=y= =3 运算后。x= AA 1 B 2 C 3 D 046 . 一个可执行C+程序的开始执行点是_A 程序的第一条语句B包含文件的第一个函数C名为void main 的函数 D程序中的第一个函数49 .若变量已正确定义并赋值,符合 C+语言语法的表达式是A 。A. a=a+7 ;B . a=7+
10、b+c , a+ C . int(12 .3%4) D .a=a+7=c+b50 .在C+语言中,int 、float 和long int 这3种类型数据所占用的内存 是_。A.均为4个字节B.由用户自己定义C.由所用机器的机器字长决定的D .任意的51 .若a、b、c、d都是int类型变量且初值为 0,以下选项中不正确的赋值语 句是 C 。A. a=b=c=d=100; B . d+ ; C . c+b ; D . d=(c=22)-(b+)二、填空题1 .设a、b、c都是整型,则a=b=c=5 时,下列表达式的结果是 a= 15、b=5、c= 6。a+=b+c+2 .数学表达式sin(30
11、 0 )+x 2cos(20 o)的C+语言表达式是 4 . main()2 题:sin(30*3.14/180)+x*x*cos(20*3.14/180)5题注意:1、 使用a&&b时,无论b为何值, 输出的结果都一样;2、 使用(a&&b)时,输出结果为1;3、 使用a&b时编译出错;4、 使用(a&b)时输出结果为0int i=4,j=5,k=6; i+&&+j|+k; cout<<i<<j<<k;程序的输出是566。5 . void main()int a=13,b=16;cout<
12、;<!a<< ' t' <<a&&b;程序输出为013 Q6. #define PR(x,y,z)cout<<x<<, t,<<y<<, t,<<z<<, n,main()int i=0,j=0,k=0;i=(9+6)%5>=9%5+6%5;cout<<i<<,n,;+i|+j&&+k;PR(i,j,k);i+=j+;cout<<i;程序的第一次输出是0。程序的第二次输出是1 0 0。程序的最后一次输出是
13、1。7 .设整型变量x,y,z的值分别为10,3,7;则表达式x>10?x+100:x-10 的值是 08 .若整型变量 w=1,x=2,y=3,z=4, 则条件表达式 w>x ? w : z > y ? z :x的值为 49 . int a=5,b=6,c=1,x=2,y=3,z=4;c=(a=c>x)&&(b=y>z);问:执行上述程序后,b的值是_6_ , c的值是_0_。10 .程序void main() int x,y,z;x=y=z=0;cout<<(x+&&+y|z+)<<'n'
14、cout<<x<<'t'<<y<<'t'<<z; 程序第一行输出为 0 程序第二行输出为 10 1 11 .程序 #define PR1(num) cout<<num ; cout<< 't'#define PR2(a,b) PR1(a);PR1(b) #define PRINT(c,d)cout<<c<<dmain() int x=10,y=20,z=100; PR1(x); PR2(x,y); PRINT( hex , z); 输出结果
15、为_10 10 20 64第三章选择、循环结构 一、选择题 2 .当前整型变量i的值是10,执行下列switch 语句后i的值是 13。switch(i) case 9: i+=1; case 10: i+=1; case 11: i+=1; defaule:i+=1 4.下列关于break 和switch语句的叙述中,正确的是B 。A. break 是switch语句的一个成分B.在语句switch中可以根据需要使用或不使用break语句C.在语句switch中必须使用 break 语句D.上述结论中两个正确的5 .设有程序段int x=10; while (x=0) x=x-1;则下面描述
16、中正确的是 C A. while循环执行10次B. 循环是无限循环 C.循环体语句一次也不执行 D.循环体语句只执行一次6 .退出一个循环语句(不终止函数的执行)的有效措施是:AA、breakB、continue C、return D、exit7 .设整型变量x的当前值为3,执行以下循环语句后,输出的结果为: docout<< ' t ' <<x -= 2 ;7 题输出是 1 -2while ( ! (-x );A、0B、1 -2 C、30D、死循环,输出许多值10 . C+语言中D 。A.不能使用do-while语句构成的循环B. do-whiIe语句
17、构成的循环必须使用break 语句才能退出C. do-while语句构成的循环,当while语句中的表达式值为非零时结束循环D. do-while语句构成的循环,当 while语句中的表达式值为零时结束循环二填空题 1 .有整型变量a、b,则下列for循环中的输入语句最少可执行J 次,最多可执行 3 次for(a=0,b=0;b!=30&&a<3;a+) cin>>b;2 .设整型变量I初值是1,则语句while (I+<5 );执行后I的值是 6。3 .下面程序的执行结果输出10 10 20,#define PR1(num) cou<<nu
18、m ; cout<< 't'#define PR2(a,b) PR1(a);PR1(b) main() int x=10,y=20,z=100;PR1(x);PR2(x,y);4 .下面程序的执行中共输出3 个数,最后一个输出的数是2void main()int y=9;运行结果:8,5,2for( ; y>0; y-)if(y%3=0) cout<< -y<<, t,;5 .下面程序的执行结果是死循环 。#include<iostream.h> main() int x=1,i=1;for(;x<50;i+)if(x
19、>10)break;if(x%2)x+=3;continue;x=1;cout<<x<<i<<, n6 .程序#include<iostream.h>6题这里将=0改为! =0 了。不然会有语法错误本题是通过右移算类型所占的位数n'void main()unsigned i;int count=1;i=0;while(i>>=1)!=0)count+;cout<< "count= " <<count<<在16位系统中程序的结果是count=32。如果将(i>&
20、gt;=1 )改为(i>>1 )程序的结果是死循环 。不作上述修改,而将 unsigned i; 改为unsigned char i; ;程序的输 出结果是 count=8 。8 . int a,b;for(b=1,a=1;b<=50;b+)if(a>=10) break;if(a%2=1)a+=5;continue;a-=3;问:执行上述程序段后,a的值是 10 ,b 的值是 69 . void main() int m,n,x,y;cin>>x>>y;m=1;n=1;if(x>0) m=m+1;if(x>y) n=n+m;else
21、 if(x=y) n=5;else n=2*m; cout<<m<<n; 问:为了使输出的结果是 n=4, x的输入值应满足条件x>0 与 x<y10 .void main()int a,b,c;a=2,b=3,c=1;if(a>b)if (a>c) cout<<a;else cout <<b;cout<< "end"<<endl;问:执行上述程序后输出_3end_o11 .执行下列程序段后,变量 n的值是:12int n=10;switch(n) case 9:n-=1; ca
22、se 10:n+=1; case 11:n-; case 12:n+; default: +n;三完善程序题1 .求 f(X)=-x2/2!+x 4/4!-x6/6+x 8/8!要求精度为十万分之一#include<iostream.h>#include<math.h>void main()double x,y,t;int n=0;cout<< "Input x: "cin>>xt=1;y=0 ;while(fabs>1e-6)pow(-1,n)*x*x*fabs(t) / (2*n) / (2*n-1)n+;y+=(t
23、= pow(-1,n)*pow(x,2*n)/(2*n);cout<< “y( "<<x<<" 尸” <<y<<, n,; 2 .程序功能:在三个整数 a, b和C中选出最大者,将该值输出。void main()im a,b , c , max;cout<<”请输入三个正数:”;cin>>a>>b>>ccout<< " a=:" <<a<<'t' <<"b : "&
24、lt;<b<<'t'<<"c="<<c<<endl:if( a>b&&a>c )max=a ;else if(b>a&&b>c )max=b ;else max=c ;cout<< ”最大数为:max=" << max <<endi ;3 .程序功能:用数字 0和9之间不同的数字构造所有可能的三位数(个位、十位和百位上的数字各不相同),并统计出共有多少种。#include<iostream . h&
25、gt;void main()int i,j , k, count=0 ;for(i=1 ; i<=9; i+)for(j=0 ; j<=9; j+)if( j=i )continue ;else for(k=0 ; k<=9 ; k+) if( k!=i&&k!=j)cout<<100*i+10*j+k<<count+ ; cout<<endl<< " Total= " <<count<<endl ;第四章函数习题一、 选择题全局变量默认(缺省)的作用域是D ,但是不加
26、“缺省”时的答案是A5 .在一个源文件中定义的全局变量的作用域为 A A、文件的全部范围 B、本程序的全部范围 C、本函数的全部范围DK从定义该变量的位置开始至本文件的结束6 .设函数声明语句中的参数表为 (int &a , int &b , int C),函数体中a,b , C三个变量的值都发生变化;主函数中调用此函数的实参表为(x , y, z),调用函数语句执行后,以下叙述正确的是A 。B)变量x和y的值不发生变化 D)只有变量z的值发生变化A)变量x和y的值发生变化C) 变量x、y、z的值都发生变化7 .变量的有效范围与其定义的位置有关,B ,其作用域在整个源程序文件中
27、都有效。 A、在第一个函数中定义的变量 B、在定义第一个函数之前所定义的变量 C、在主函数中定义的变量 D、在函数中定义的静态变量9 .判断两个字符串si和s2是否相等,应当使用DA、if (s1=s2)B、if (s1=s2)C、if (strcmp(s1,s2)D、if (!strcmp(s1,s2)(相等为 0)10 .在程序执行过程中,该程序的某一个函数 func() 中说明的static 型变量 V有这样的特性: B A、V存在于func()被调用期间且仅能被func() 所用B、V存在于整个程序执行过程且仅能被func() 所用C、V存在于func()被调用期间且可被所有函数所用D
28、、V存在于整个程序执行过程且可被所有函数所用二、填空题1 .执行下面程序共产生工行输出,第一行输出和最后一行输出分别是6 及6。#include<iostream.h> void f(int); void main() f(3); void f(int n) static int s=5; int a=5; if(n!=0)s+;a+;cout<<s<<, t,<<a; f(n-1); 3题一、改正错误1、A行处少一个分号“;2、在 main 前加 void二、运行结果3, , 53 . void f(int b, int t) int m; i
29、f(b<t) m=(b+t)/2;cout<<m<<,n,;f(b,m-1); f(m+1,t) /A main() f(1,6);执行以上程序后,第一行的输出是 ,第二行的输出是 ,最后 一行的输出是 。4题一、改正错误1、改 main 为 void main2、cout处多了一个(二、运行结果:程序正确,结果是x=694 .程序(共2分) # define A 3 main() int a;# define B(a) (A+1)*a) a=3*(A+B(5);cout<<( "x=" <<a<<"
30、;n" ;则原因是(或程序正确,则输程序是否正确(是或否) ;若程序错, 出结果是):。6题一、改正错误:改 main 为 void main二、运行结果:6和106 .程序 int f(int x) int y=1; static int z=1;z+=z+y+; return(z+x); main() cout<<f(3)<< 'n';cout<<f(3)<< 'n';执行以上程序后,第一和第二行的输出分别是7 .程序#include<iostream.h> int m=10;int f(
31、int x,int y) int m=5; m+=x*y; return m;void main()int a=6,b=7;cout<<f(a,b)/m<<'n'执行以上程序后,输出结果 /。8 . void f(int a)if(a<0) cout<< "-"a=-a;cout<< char(a%10+ ' 0');if(a=a/10)!=0)f(a);main()int a=-3567;f(a);cout<<, n,;a=3456;f(a);cout<< &qu
32、ot; n" ;行是7654;第二行是9题一、改正错误1、添加原型声明:fun1(int,int);二、运行结果8和17执行以上程序后,输出结果的第 -6543。9 . #include<iostream.h>void main()int k=4,m=1,p;p=fun1(k,m); cout<<p;p=fun1(k,m); cout<<p<<endl;fun1(int x,int y)static int m=0,i=2;i+=m+1;m=i+x+y;return m;问:程序执行后输出的结果为 ,.10 . void main()
33、int w=2,k;for(k=0;k<3;k+) w=f(w);cout<<w<< ,n,;f(int x)int y=0;/*static*/ int z=3;y+;z+;return(x+y+z);10题一、改正错误:1、 原型声明f(int);运行结果1、7 和 172、7 和 20问题1:执行程序后,输出的第一个数是,最后一个数是 一。问题2:如果把对static的注解改为static 定义,输出的第一个数是最后一个数是。11 . int fun(int i); void main() int i=1; switch(i) default: i+; br
34、eak;case 0: i+;fun(i);case 1: i+;fun(i);case 2: i+;fun(i); cout<<i<< ' nint fun(int i)static k=10;i+;k+;cout<<k<< ,n,; return k;问:执行上述程序后,最后输出的13 .对下面小程序:(1) 写出执行后的输出结果。(2) 写出程序求解的原数学公式。int HT(int n , im x)if(n=O)return 1:if(n=1)return 2*x:11题一、改正错误:11) main 前应有 void ;二、后
35、运行结果:I是 3K是 1213.(1)执行结果:HT (1, 2) =4 HT (3, 2) =40i是,k 是13题(2)原公式1n0HT(n,x)2*xn12*x* HT(n1,x) 2*(n 1)*HT(n 2,x)n1elsereturn 2*x*HT(n-1, x)-2*(n-1)*HT(n-2, x);)void main( )int x , m, n ;x=2;for(n=1 ; n<4 ; n+=2)m=HT(n , x);cout<< " HT( " <<n<< ; <<x<< " )= " <
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026年体育产业扶贫与乡村振兴结合方案
- 2026年汽车维修新技术培训总结报告
- 耳鼻喉科手术后护理管理培训措施
- 手术室消防管理
- 精神科工作述职报告
- 核医学诊断介入措施
- 精神文化建设成果汇报
- 脑瘫患儿头控训练方案
- 充足的营养绘本
- 内分泌科甲亢病人甲状腺功能监测指南
- 生猪屠宰加工合同范例
- 2024年版手足口病
- 奶茶店店长职能培训
- 老年护理实践指南(试行)
- 三国演义整本书阅读导读课教学 +公开课一等奖创新教案
- DZ∕T 0211-2020 矿产地质勘查规范 重晶石、毒重石、萤石、硼(正式版)
- 小学刑法知识讲座
- 城发公司行业分析
- 麻醉科临床诊疗指南2020版
- 非常规时段施工安全管理方案
- 普通气动调节阀规格书
评论
0/150
提交评论