c语言程序设计综合练习题集.pdf
《c语言程序设计综合练习题集.pdf》由会员分享,可在线阅读,更多相关《c语言程序设计综合练习题集.pdf(20页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、.-CC 语言程序设计语言程序设计 综合练习题综合练习题一、单项选择题一、单项选择题1.C 语言中根本数据类型有。C CA 整型、实型、逻辑型B整型、字符型、逻辑型C 整型、实型、字符型D整型、实型、字符型、逻辑型2.在 C 语言中,数字 O29 是一个。A AA 八进制数 B 十进制数 C 十六进制数 D 非法数3.在以下关于 C 语言的不严格的表达中,错误的说法是。A AA 在标识符中,大写字母和小些字母的意义一样B 有些不同类型的变量可以在一个表达式中运算C 在赋值表达式中等号=左边的变量和右边的值可以是不同类型D 同一个运算符号在不同的场合可以有不同的含义4.以下关于 C 语言用户标识
2、符的表达中正确的选项是。B BA用户标识符中可以出现下划线和中划线减号B用户标识符中不可以出现中划线,但可以出现下划线C用户标识符中可以出现下划线,但不可以放在用户标识符的开头D用户标识符中可以出现下划线和数字,它们都可以放在用户标识符的开头【解析】考察 C 语言中的用户标识符规则,在 C 语言程序设计中,用户标识符是由字母、数字和下划线组成的,并且第一个字符必须是字母或下划线。5.构造化程序设计方法中有三种根本控制构造,以下不正确的选项是。D DA)顺序构造B)选择构造C)循环构造 D)数组构造6.C 语言提供的合法关键字是。D DA)swicthB)chaC)Case D)default7
3、以下非法的赋值语句是 C CA)n=(i=2,+i);B)j+;C)+(i+1);D)*=j0;【解析】对表达式不能进展自加自减运算。8.在以下一组运算符中,优先级最高的运算符是。.优选-.-A)算术运算符关系运算符逻辑与&逻辑或|赋值运算符逗号运算符。由于 C 选项为求余运算符,所以此题正确答案为 C 选项。9.以下四个选项中不能看作一条语句的是。D DA);B)a=0,b=0,c=0;C)if(a0)D)if(b=0)m=1;n=2;【解析】C 语言的根本语句包含控制语句、表达式语句、空语句、复合语句、函数调用语句。控制语句:完成一定的控制功能,C 语言有 9 种控制语句,分别是 if-e
4、lseif-else、whilewhile、continuecontinue、switchswitch、returnreturn、forfor、do-whiledo-while、breakbreak、gotogoto;表达式语句:由各类表达式构成,后面加上一个分号,就可以单独作为一条语句出现在一行,多数情况下含赋值运算符。复合语句:由一对大括号将一组语句序列括起来形成一个程序段,经常出现在选择或循环语句中。空语句:只有一个分号,表示什么也不做。函数调用语句:由函数名、圆括号加实参表和分号组成。此题中 D 选项为三条语句,一条控制语句,链条表达式语句。正确答案为D 选项。10.能将高级语言编写的
5、源程序转换为目标程序的软件是。D DA)汇编程序B)编辑程序C)解释程序 D)编译程序11.以下选项中合法的实型常数是。C CA)5E2.0B)E-3C).2E0D)1.3E【解析】以指数形式表示实数时,字母e 或 E 之前必须有数字,且 e 后面指数必须为整数。12.依据 C 语言的语法规则,以下合法标识符是A A A)Else B)else C)user$2 D)5_e*amp【解析】标识符的定义有明确的规则:1标识符只能由字母、数字、下划线三者构成;2标识符的首字符必须是字母或者下划线;3标识符命名对字母大小写敏感;4标识符定义不能和 C 语言关键字Key Words一样。C 语言中标识
6、符对大小写敏感,sum 和 SUM 是不同的标识符。13.以下选项中合法的用户标识是。.优选-.-A)longB)_2TestC)3Dma*D)A.dat【解析】选项中 A 为保存字;选项 C 没有以字母或者_开头;选项 D 中不能有.14.在 C 语言中,字符型数据在存中的存储形式是。D DA)原码B)补码C)反码D)ASCII 码【解析】数据在存中是以二进制形式存放的。数值是以补码表示的。c 的 char 数据属于根本类型,在存中字符的存储实际上是把字符相对应的 ASCII 代码放到存储单元中的。而这些 ASCII代码值在计算机中也是以二进制形式存放的。这个与整型的存储很相似。因此这两类之
7、间的转换也比拟方便!整型:一个正数的补码和其原码的形式一样。而负数的补码方式是将其绝对值的二进制形式按位求反再加 1”;实型:在存中占4 个字节,是按照指数形式存储的,实型数据分为小数局部和指数局部,分别存放!计算机用二进制表示小数局部,用2 的幂次来表示指数局部!15.以下非法的赋值语句是。C CA)n=(i=2,+i);B)j+;C)+(i+1);D)*=j0;【解析】对表达式不能进展自加自减运算。16.已定义 c 为字符型变量,则以下正确的赋值语句是。D DA)c=66;B)c=66;C)c=B;D)c=66;17.小写字母的 ASCII 码为 97,对于 int a=99,b=b;pr
8、intf(%c,%d,a,b);的结果是。B BA)99,bB)c,98C)99,98D)c,b【解析】字符类型变量用 char 来定义,特别要注意字符数据在存中的存储方式:字符数据在存中是用字符对应的 ASCII 码存储,其存储形式实质是采用整数形式,由于 ASCII 码集合中有 256个字符,因此用 0255 这个围的 256 个整数分别与每个字符对应。因此字符型数据和整型数据在一定围0255,形式上可以相互引用。表现在这两种类型的变量能够以对方形式常量来赋值,以对方的形式来输出,还可以同时出现在算数表达式中参与运算int n=a;/*相当于 n=97*/char c=65;/*相当于 c
9、=A,A 的 ASCII 码是 65*/printf(n=%d,n=%c,n,n);/*输出:c=97,n=a*/.优选-.-printf(c=%d,c=%c,c,c);/*输出:n=65,n=A*/虽然字符型数据和整型数据在一定围可以通用,但其外在表现形式并不影响各自的数据类型,上例中 n 本质上还是整型变量,c 本质上还是字符型变量。18.假设变量 a 和 i 已正确定义,且 i 已正确赋值,合法的语句是。B BA)a=1B)+i;C)a=a+=5D)a=int(i)【解析】C 语言的语句必须以分号完毕,选项A 是错误的。赋值表达式等号的左边只能是变量,而不能是表达式,选项 C 中含有 a
10、+=5,是错误的。选项 D 中的强制转换类型必须用圆括号将int 括起来,也是不正确的。19.假定*和 y 为 double 型,则表达式*=2,y=*+3/2 的值是。D DA)3.500000B)3C)2.000000D)3.000000【解析】算出来结果为 3,排除 A 和 C 选项;又因为是 double 型,所以 D 选项为正确答案。20.以下程序的输出结果是。C Cmain()int a=5,b=4,c=6,d;printf(%dn,d=ab(aca:c):(b);)5)4)6)不确定【解析】此题考察条件表达式。简单的条件表达式条件表达式.表达式 1:表达式2可以用来代替if 语句
11、进展赋值。详见教材102 页。21.设 a=3,b=4,c=-5,则逻辑表达式:a|b+c&b=c 的值是。B BA)1B)0C)非 0D)语法错【解析】运算符优先级由高到底为算术运算符-关系运算符-&和|-赋值运算符。其中&和|的结合方向为从左到右22.表示关系*=y=z 的 c 语言表达式为。A AA)(*=y)&(y=z)C)*=y=zB)(*=y)AND(y=z)D)(*=y)&(yz-后,*,y,z 的值分别是。D D)1,1,1)1,2,0)0,1,1)0,2,0【解析】注:前缀是先增值后引用,后缀是先引用再增值注:前缀是先增值后引用,后缀是先引用再增值24.int a=4,b=5
12、;,执行表达式 a=ab 后,变量 a 的值为。A AA0 B1 C4 D5【解析】C 语言常用的积累运算符的优先级关系是:逻辑非!算术运算符关系运算符逻辑与&逻辑或|赋值运算符逗号运算符。由于关系运算符优先级别高于赋值运算符,所以先执行 ab,得到结果为假,即 0,所以变量 a 的值为 0。25.能正确表示逻辑关系a10 或 a0”的 C 语言表达式是。B BA)a=10 or a=10|a=10&a=10|a=026.设有定义 int a=3,b=4,c=5;,则以下表达式中,值为0 的表达式是。D D A a&b B a=b C a|b+c&b-c D!(a=A&ch=A&ch0;k-=
13、3)putchar(*);输出是。B B A*B*C*D无限循环【解析】在 k 分别为 16,13,10,7,4,1 的时候,分别输出一个*。putchar函数字符输出函数的作用是向终端输出一个字符。用 putchar函数可以输出能在屏幕上显示的字符,也可以输出控制字符,如 putcharn的作用是输出一个换行符,使输出的当前位置移到下一行的开头。35.int i=1;执行语句 while(i+4)后,变量 i 的值为。C C.优选-.-A)3 B)4 C)5 D)6【解析】i+是先进展其他运算,运算终了后再将i 加 1。所以循环中过程如下:i=0判断 i4:成立i=i+1,于是 i=1继续循
14、环:判断 i4:成立i=i+1,于是 i=2继续循环:判断 i4:成立i=i+1,于是 i=3继续循环:判断 i4:成立i=i+1,于是 i=4继续循环:判断 i0 前 1 个大,7)m-;printf(%dn,m);A)9B)10987计算析】复习C)9876while 一一下D)1098对圆括号中表达式的while 循环的执行过【解87程:1值。当值为非零时,执行步骤2;当值为零时,执行步骤4。.优选-.-2执行循环体中语句。3转去执行步骤1。4退出 while 循环。由以上 while 循环的一般过程来看,只有当 while 后面的括号中表达式的值为零时才停顿循环。此题中,当 m=7 是
15、循环停顿,也就是说最后一个输出的应是7.开场 m 被赋予 10,进入循环体,由于 m-;所以 m 自减 1 为 9,所以第一个输出的应是9.44.假设有如下程序段,其中s、a、b、c 均已定义为整型变量,且 a、c 均已赋值c 大于 0s=a;for(b=1;b=c;b+)s=s+1;则与上述程序段功能等价的赋值语句是。B BA)s=a+b;B)s=a+c;C)s=s+c;D)s=b+c;【解析】掌握两点:一、a 赋给了 s;二、s 执行 c 次自加;所以最终相当于将a+c 赋给了 s。45.以下程序中,while 循环的循环次数是。D Dmain()int i=0;while(i10)if(
16、i1)continue;if(i=5)break;i+;A)1B)10C)6D)死循环,不能确定次数【解析】在循环中,如果执行continue,将直接开场下一次循环,不继续执行continue 下面的语句。.优选-.-进入循环时,i=0,当执行到if(i1)continue;一句时,将执行continue 命令,直接开场下一次循环,i 的值始终没有变,循环条件i10将一直满足下去。所以,程序将一直无法退出循环,即死循环。46.当对两个字符串进展比拟时,应该使用的函数是。B BA)strcatB)strcmpC)strcpyD)strlen47假设有定义int k,*q;,则以下各选项中赋值表达
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 语言程序设计 综合 习题集
限制150内