国开题库c语言,C语言-程序设计-阅读程序题库.资料大全及其答案.doc

c8da8f5a7cda2d62dda9e5a200b168b9.gifC语言-程序设计-阅读程序题库.资料大全及其答案.doc

阅读程序题【2.1】以下程序的输出结果是 。 mainD float a;a1/100000000;printf“g“,a;A 0.00000e00 B 0.0 C 1.00000e-07 D 0【2.2】下面程序的输出结果是 B____。include main int x10; int x20;printf “d,“, x;printf“dn“, x;A 10,20 B 20,10 C 10,10 D 20,20【2.3】以下程序的输出结果是___B_。main unsigned int n;int i-521;ni;printf“nun“,n;//变量 i 中的负号传送给变量 n 后,因 n 是无符号数,已不作为负号处理。A n-521 B n521 C n65015 D n102170103【2.4】以下程序的输出结果是 。 mainD int x10, y10; printf“d dn“, x, y;A 10 10 B 9 9 C 9 10 D 10 9【2.5】以下程序的输出结果是___B。main int n1;printf“d d dn“,n,n,n--; // C 语言在执行 printf时,对函数中的表达式表列的处理顺序是从后向前,即先处理 n- -,再处理 n,最后处理 n,A 1 1 1 B 1 0 1 C 1 1 0 D 1 2 1【2.6】以下程序的输出结果是____。main int x0 x02ff,y0 x0ff00;printf“dn“,xstruct st a1,main pa;printf“dn“,*p-y;A 10 B 11 C 20 D 21 【2.56】以下程序的输出结果是____。include main union EXAMPLE struct int x,y;in;int a,b;e;e.a1;e.b2;e.in.xe.a*e.b;e.in.ye.ae.b;printf“d,dn“,e.in.x,e.in.y;A 2,3 B 4,4 C 4,8 D 8,8 【2.57】下面程序的输出结果是____。include main union int i2;long k;char c4;r,*sr;s-i00 x39;s-i10 x38;printf“cn“,s-c0;A 39 B 9 C 38 D 8【2.58】下面程序的输出是 。main printf“dn“, EOF;A -1 B 0 C 1 D 程序是错误的参考答案参考答案【2.1】参考答案D注释程序中除法运算的两个操作数均是整型,运算结果也是整型。【2.2】参考答案B注释C 语言允许在程序块分程序中说明变量。【2.3】参考答案C注释变量 i 中的负号传送给变量 n 后,因 n 是无符号数,已不作为负号处理。【2.4】参考答案D注释对变量 x 的操作是后缀形式,变量 x 的减 1 操作要在执行完 printf 函数之后才进行,所以变量 x 的值在输出的时候仍然保持原值 10。【2.5】参考答案B注释C 语言在执行 printf时,对函数中的表达式表列的处理顺序是从后向前,即先处理 n- -,再处理 n,最后处理 n,而且每一个表达式作为一个处理单元,也就是说在不同的表达式中自增自减运算是单独考虑的。【2.6】参考答案A注释变量 x 和变量 y 做按位与,结果为 0 x0200,右移 4位为 0 x0020,再与 0 x005f 做按位或,最后结果为 0 x007f。【2.7】参考答案A注释逗号表达式的结果是用逗号分开的最后一个表达式的值,此题由于 cA的值是 0,所以逗号表达式的值为 0。【2.8】参考答案 B【2.9】参考答案 A【2.10】参考答案 C注释在输出格式描述“m.ns“中,m 是输出总长度,n 是实际字符的个数,这里 m 没有给出,则输出总长度就是实际输出字符的个数。【2.11】参考答案 C【2.12】参考答案B【2.13】参考答案C【2.14】参考答案B【2.15】参考答案D【2.16】参考答案A【2.17】参考答案 C【2.18】参考答案A【2.19】参考答案 C注释在 switch 语句中,case 本身仅起到语句标号的作用,不会改变语句的流程,执行 break 语句才能退出当前的switch 语句。【2.20】参考答案 D注释siwtch 语句的表达式中,变量 c 是后缀的增一运算,第一次执行 do-while 循环时,执行 case A后面的语句。【2.21】参考答案 D【2.22】参考答案 B【2.23】参考答案 B注释fabs是浮点数绝对值函数。【2.24】参考答案 A【2.25】参考答案 C注释C 语言允许在程序块(分程序)内说明变量,如果在程序块内说明的变量和程序块外的变量同名,在块外说明的变量在块内是不可见的。可将此题和【2.11】进行比较,加深理解。【2.26】参考答案 C【2.27】参考答案 B【2.28】参考答案 D A【2.29】参考答案D【2.30】参考答案 B注释输出结果为字符串长度。【2.31】参考答案 D注释字符串拷贝函数 strcpy要求的两个参数都是字符串首地址。本题中第二个参数是字符串常量,接受这个字符串的第一个参量不是直接给出字符数组名,而是进行了地址运算后的结果。由于 str 字符串的长度是 13,除 2 取整后是 6,第一个参数给出的地址是字符数组 str 的首地址加6,也就是原来字符串中第二个空格的位置,把“es she“从该处放入,字符串 str 变为“How does she“。【2.32】参考答案 C注释main 函数调用 func 函数时,第一个实参使用的是逗号表达式的值,也就是 xy 的结果。由于对变量 x、y、z进行的是后缀运算,所以函数 func 的参数值是 13 和 8。【2.33】参考答案 C【2.34】参考答案 C A C【2.35】参考答案 C【2.36】参考答案 B注释函数 fun 进行了递归调用,实际进行的运算是54321310。主函数内说明的局部变量 w 屏蔽了外部变量 w,所以在主函数中外部变量 w 是不可见的,在调用printf 函数时表达式“fun5*w“中 w 的值是 10。【2.37】参考答案 D注释main 函数三次调用了函数 funa,在 funa 函数中的静态变量 c 仅在第一次调用时进行了初始化,再次调用时不再对静态变量赋初值。【2.38】参考答案 B注释main 函数和 num 函数中都说明了变量 a 和 b,由于它们是内部变量,所以它们分别在说明它们的函数内有效。外部变量 x 和 y 在函数 num 之后被说明,而在 num 函数中又要引用它们,所以在 num 函数中用关键字“extern“说明变量 x 和 y 是一个外部变量,也就是通知计算机这两个变量在 fun 函数以外被说明,此处不是定义两个 int 型变量。【2.39】参考答案 D注释函数 f 中的变量 c 是静态变量,仅在第一次调用函数f 时它被初始化为 3,第二次调用函数 f 时 c 的值是 4,第三次调用函数 f 时 c 的值是 5。【2.40】参考答案 D【2.41】参考答案 D注释程序中有三个“x“分别在三个不同的函数中,这三个“x“都是自动变量,所以三个“x“分别局部于三不同的函数,在三个函数中对“x“的操作互不影响。【2.42】参考答案 A【2.43】参考答案 A注释*p和*p 都是指针变量值前加 1,第一次指向a1,第二次指向 a2;a3 是 a3的地址。【2.44】参考答案 C注释句没有语法错误,但是 a6 指向数组之外,因为 a是 a0的地址,a1 是 a1的地址,a2 是 a2的地址,显然数组 a 没有 a6分量。句错误,因为 a1是地址常量,它是 a10的地址,对于地址常量是不可以进行赋值运算的。【2.45】参考答案 D A注释如果 FMT 定义为“xn“,则输出的 16 进制数据用小写字母表示。【2.46】参考答案 A注释语句“pa0“表示将数组 a 中元素 a0的地址赋给指针变量 p,则 p 就是指向数组首元素 a0的指针变量,“a0“是取数组首元素的地址。对于指向数组首址的指针,pi(或 ai)是数组元素 ai的地址,*pi或*ai就是ai的值。【2.47】参考答案 B【2.48】参考答案 D【2.49】参考答案 D【2.50】参考答案 A注释变量 g 是指向函数的指针,*ga,b是调用指针 g 所指向的函数。【2.51】参考答案 C注释p 是指针,pp 是指向指针的指针。【2.52】参考答案 A注释对于指向数组的指针变量可以做下标运算,pi和alphai都是指向字符串的首地址,*pi取出字符串的第一个字符。【2.53】参考答案 D A D D B注释pp 是一个二维指针数组,pp1 指向数组的第二维,*pp1是第二维的起始地址,**pp1是第二维第一个元素的地址,***pp1是第二维第一个元素的内容,所以,的参考答案应选 D。*pp11 是第二维第二个元素的地址,**pp11是第二维第二个元素,**pp114则是第二维第二个元素所指字符串下标为 4 的元素,即是字符 w,故应当选 D。【2.54】参考答案 B C【2.55】参考答案D【2.56】参考答案C注释联合体成员的取值是最后一次给成员赋的值。【2.57】参考答案 B注释整型数组 i 和字符数组 c 共用存储空间,给 i 赋值也等于给 c 赋值,所以 s-c00 x39,所以输出 9。【2.58】参考答案A注释基本概念。EOF 是由 C 语言在头文件 stdio.h 中定义的,用户可以直接使用。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
《java程序设计》课程的题库资料,由贺州学院整理,可供学生期末课程复习使用,也可以供相关任课教师出卷使用。 内容示例为: 9. 阅读下列程序片段,写出运行结果。 public class Test { public static void main(String[] args) { int percent = 10; tripleValue(percent); System.out.println(percent); } public static void tripleValue(int x) { x = 3 * x; } } 代码执行后输出的结果是______。 答案:10 [解析] static 关键字应用的场合有:①用来修饰类中定义的变量,这样的变量称为类变量或静态变量。②可以用来修饰类中定义的方法,这样的方法称为静态方法。③用来修饰初始化语句块,这样的语句块常称为静态初始化语句块。static 在这里表示这个方法为类方法,不属于任何对象实例,而是类所有,描述对象的共有动作,可以用类名直接调用。在调用了tripleValue函数之后,函数的值没有返回,所以percent的值还是10。 10. 阅读下列程序片段,写出运行结果。 class Shape { public Shape() { System.out.print("Shape"); } } class Circle extends Shape { public Circle() { System.out.print("Circle"); } } public class Test { public static void main(String[] args) { Shape d = new Circle(); } } 代码执行后输出的结果是______。 答案:ShapeCircle [解析] 继承是而向对象编程的一个主要优点之一,它对如何设计Java类有着直接的影响。继承有如下几点好处: ①它可以利用已有的类来创建自己的类,只需要指出自己的类和已有的其他类有什么不同即可,而且还可以动态访问其他有 关类中的信息。 ②通过继承,可以利用Java类库所提供的丰富而有用的类,这些类都已经被很好地实现。 ③当设计很大的程序时,继承可以使程序组织得层次清晰,有利于程序设计相减少错误的发生。该程序首先编写了一个Shape的类,然后又编写一个类Circle去继承Shape类。由于子类拥有父类所有的属性和方法,所以输出的是ShappeCircle。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值