C语言练习题参考答案.doc
《C语言练习题参考答案.doc》由会员分享,可在线阅读,更多相关《C语言练习题参考答案.doc(6页珍藏版)》请在咨信网上搜索。
完成下列练习题: 练习一 单选题 (1) 下列 C语言表达式能正确表达数学计算式1÷× 2x y。 A、 1/sqrt(2*3.14)*2*pow(x,y) B、1.0/sqrt(2p)*2*x**y C、 1.0/sqrt(6.28)*2x^y D、 1/6.28^0.5*2*pow(x,y) (2) 执行以下程序段后, 输出结果为__(14)_. main( ) { long a; a=(72*456-60)/2; printf(“%ld\n”,a); } A、 -16382 B、 16382 C、 16386 D、-16386 (3) 可以用signed和unsigned 修饰的类型标识符是 。 ①int ②float ③double ④char A.①④ B.②③ C.①② D.①②③④ (4) 以下常量中, (4) 是符合语法要求的。 ①0258 ②’\0xaa’ ③1E-9 ④3.5f ⑤(1/2)e-2 ⑥3L ⑦0xFF A. ①②③ B. ③⑤ C. ②③④⑦ D.③④⑥⑦ (5) 以下常量表示中错误的是 。 A.e2 B.-2L C.2.5f D. 0xabcd (6) 以下符号中不能用作标识符的是 。 A. _256 B. scanf C. void D. Struct (7) 以下关于变量的叙述中错误的是 。 A. 所有变量在使用前都必须声明 B. 变量声明可放在函数体中任何位置 C. 全局变量和局部变量可以同名 D. 声明变量时必须给出变量的数据类型但可以缺省存储类型 (8) 若已声明: int a=7 ;char b=1;float x=2.0 , y=4.7 ; 则下列表达式的值不为2的是: 。 A. x+a%3*(int)(x+y)%2/4 B. sizeof ‘A’ C. b+1 D. sizeof b (9) 以下关于main函数的叙述中,错误的是 。 A. main函数是自定义函数 B. main函数可以有形式参数也可以没有形式参数 C. main函数定义必须出现在一个源文件的开头 D. 在一个源程序中只能有一个main函数 (10) 已知有声明: char c=‘1’ ; int x=300 ; float t=35000 ; double d=3.1234567e10 ; 则以下表达式求值时除 外,其结果都可能是不准确的。 A、x=t/c B、t=d/x; C、t=d/1e5f D、t=x+c (11) 设有定义 float y=3.45678; int x; 则以下表达式中能实现将y中数值保留到小数点后2位,第3位四舍五入的表达式是 。 A、 y=(y*100+0.5)/100.0 B、 x=y*100+0.5, y=x/100.0 C、 y=y*100+0.5/100.0 D、 y=(y/100+0.5)*100.0 (12) 以下局部变量声明中,正确的是 。 A、 int 2x=1,2y=0; B、 auto float x=2,y=sqrt(x); C、 char for=1; D、 double f’=1.0; (13) 以下常量中, 是符合语法要求的。 ① 0218 ② ’\0x1a’ ③ E-9 ④ 3.5f ⑤ (1/2)e-2 ⑥ 3L ⑦ 0xFF A、①②③ B、 ③⑤ C、 ②④⑦ D、④⑥⑦ (14) C语言中要求两个操作数都必须是整型数的运算符是 。 A、= = B、 + C、 / D、 % (15) 在内存中需 个字节存储下列字符串: “\t\”Name\\Address\n” A、 19 B、 15 C、16 D、 17 (16) 若已声明 unsigned a = 1024; ,则表达式 a = -a 的值为 64512 (17) 若有定义: int b=17; float a=4.5, c=6.5; 则表达式 a+(int)(b/3*(int)(a+c)/2)%4的值为 7.500000 。 (18) 下列哪些是C语言中的错误表达式 _ 。 ① ++a+++b ② “ABC” “abc” ③ -a++ ④ -++a ⑤ ++-a ⑥ int(x) ⑦ x>y=2 (19)下列叙述中正确的是 (21) 。 A. main函数必须出现在其他函数之前 B. main函数中至少必须有一条语句 C. 程序总是从main函数的第一条语句开始执行 D. 程序总是在执行完main函数的最后一条语句后结束 (20). 以下常量表示中正确的是 。 A. \xff B. 5L C. aEb D. 3.14u (21) 在以下各组标识符中,均可以用作变量名的一组是 。 A. a01, Int B. table_1, a*.1 C. 0_a, W12 D. for, point (22) 若有声明“long a,b;”且变量a和b都需要通过键盘输入获得初值,则下列语句中正确的是 。 A. scanf("%ld%ld,&a,&b"); B. scanf("%d%d",a,b); C. scanf("%d%d",&a,&b); D. scanf("%ld%ld",&a,&b); (23) 若有程序段“char c=256; int a=c;”,则执行该程序段后a的值是 。 A. 256 B. 65536 C. 0 D. -1 (24) 已知在函数f中声明了局部变量x,如果希望f函数第一次被调用返回后变量x中存储的数据保持到下次f函数被调用时仍可以使用,则在声明x时必须指定其存储类型为 。 A. auto B. register C. static D. extern (25) 以下叙述中正确的是 。 A.在编译时可以发现注释中的拼写错误 B.C语言程序的每一行只能写一条语句 C.main( ){}必须位于程序的开始 D.C语言程序可以由一个或多个函数组成 (26) 以下选项中不能用作变量名的是 。 A._float B.switch C.sum D._123 (27) 已知sizeof(int)的值为2,为将10!的值存储到变量f中(10!=3628800),变量f的类型应声明为 。 A.long int B.int C.short int D.unsigned int (28) 数学式在C程序中正确的表示形式为 。 A.sqrt(a)/2*b B.sqrt(a)/2/b C.sqrt(a)/2b D.sqrt a/(2*b) 二、填空题 1.在C语言源程序中,不带任何修饰符的浮点数直接量(例如:3.14)都是按 double 类型数据存储的。 2.可以改变局部变量的生存期、但不能改变它的作用域的存储类别是 static 。 3.C语言有效的预处理命令总是以 # 开头。 4.若有声明“double x=10,y=5;”,则计算xy的库函数调用形式是 pow(x,y) 。 5. 设有声明“int a=3, b=4; float x=4.5, y=3.5;”,则表达式“(float)(a+b)/2+(int)x%(int)y”的值是 4.500000 。 练习二 (1) C语言表示逻辑假的值是 。 A. 非零整数值 B. 0 C. 1 D. FALSE (2) 已知有声明:int x=1,y=2,z=3;以下表达式中,表达式的值为0的是 。 ① x/y ② !!x ③ x==2 ④ x=2 ⑤ y--,y-- ⑥ z>y>x A. ①③⑥ B. ②④⑤ C. ①③⑤ D. ②③⑥ (3) 以下表达式中,可以正确地用于if(e)/else语句中的条件表达式e是 。 A. ++(x+1)==x+2 B. t=!(y%4)&&y%100||!(y%400) C. x+1=z D. x%2.0==0 (4) 已知有char c;scanf(“%c”,&c);以下表达式均用于判断c中存储的是否是字母编码,除 外都是正确的。 A. c>=’A’&& c<=’z’ B. c>=’A’&& c<=’Z’|| c>=’a’&& c<=’z’ C. !(c<'A'||c>'Z'&&c<'a'||c>'z') D. c>=65 && c<=90 || c>=97 && c<=122 (5) 以下程序段执行后,将输出 no 。 unsigned char x,a,b; x=0; a=x-1;b=x; if(a<b)printf(“ok”); else printf(“no”); (6) 以下程序段执行后,变量t,x,y,z的值是 0 。 int t,x,y,z; x=y=z=0; t=(x+1,x++)&&(y+=1)||z++; (7)执行以下程序段后输出结果为 。 A. 1,1,1 B. 2,2,2 C. 2,1,1 D. 1,2,2 main() { int x,y,z; x=y=z=1; if(++x||++y&&++z) printf("%d,%d,%d",x,y,z); } (8) 26.以下程序中,输出值是 。 #define M 3 #define N M+1 #define NN N*N/2 main( ) { printf("%d\n“ , NN ); } A、5 B、6 C、7 D、8 (9) 以下程序片段输出结果是 ____。 int a=2,b=-1,c=2; if(a<b) if(b<0) c=0; else c+=1;c--; printf(“%d\n”,c); A、0 B、 2 C、3 D、1 (10)下列有语法错误的程序是_ ____ A. B. float PI=3.14; #define PI 3.1 main() { printf(“%f\n”,PI); } #define PI 3.1 float PI=3.14; main() { printf(“%f\n”,PI); } C. D. #define PI 3.1 main() { float define=PI; printf(“%f\n”,define); } float PI=3.14; main() { float PI=3.14; printf(“%f\n”,PI); } (11) 以下程序执行时输出结果为 false #include<stdio.h> void main() { if(“A”==“A”) printf("true"); else printf("false"); } (12)已有声明: int x=0 , y=0 , z=0; 以下表达式中与 ++x && y++ || ++z (值为1)的值不一样的表达式是 A,B 。 A、x += ++x || x++ (值为2) B、 x = y = z 0 (值为0) C、!x (值为1) D、 x >= y> z (值为1) (13) 设有如下声明和语句: int a=2, b, c=5 ; scanf( “%d” , &b) ; b = c-- || scanf (“%d” , &c ) && a++; 该程序段执行时,若从键盘上输入的数据是 4ƀ3 (ƀ代表空格键) , 则变量c 的值为 4 。 (14) 下列程序执行后的输出结果是 0 。 main( ) { unsigned short x=65536; int y; printf(“%d\n”, y=x); } (15)执行语句 printf(“%d” , (a=2)&&(b=-2) ); 后的输出是 1 。 (16)若用n表示年龄,则在C语言中表示1到16岁, 或高于60岁的逻辑表达式是 n>=1&&n<=16||n>60 。 (17)若有声明“int x=2,y=1,z=0;”,则下列关系表达式中有语法错误的是 。 A. x>y=2 B. z>y>x C. x>y==1 D. x==(x=0,y=1,z=2) (18) 若有声明 “ int a=5 , b=2 ; ” ,则表达式: b+=(float)(a+b)/2 运算后b的值为 15 。- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 语言 练习题 参考答案
咨信网温馨提示:
1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【仙人****88】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时私信或留言给本站上传会员【仙人****88】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。
1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【仙人****88】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时私信或留言给本站上传会员【仙人****88】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。
关于本文