(C)一些基础题13

1.在 C 语言中,以下非法的赋值语句是( )。

A.j++; B.++(i+1); C.x=j>0; D.k=i==j;

【答案】B。解析:自增运算符只能跟单个变量。

2..以下程序的输出结果是( )。

main()

{ int i=10,j=1;

printf("%d,%d\n",i--,++j);}

A.9,2 B.10,2 C.9,1 D.10,1

【答案】B。解析:i--为后置运算,先取值输出再进行计算,++j 为前置运算,先运算在取

值输出,所以输出 10 和 2。

3.运行时从键盘上输入 9876543210<CR>(<CR>表示回车),则该程序的输出结果是(

main()

{ int a;float b,c;

scanf("%2d%3f%4f\n",&a,&b,&c);

printf("a=%d,b=%f,c=%f\n",a,b,c);}

A.a=98,b=765,c=4321 B.a=10,b=432,c=8765

C.a=98,b=765.000000,c=4321.000000 D.a=98,b=765.0,c=4321.0

【答案】C。解析:%md 和%mf 的 m 为限制宽度。%f 要保留六位小数。

4.设变量均已正确定义,若要通过 scanf("%d%c%d%c",&a1,&c1,&a2,&c2);语句为变量 a1

和 a2 赋数值 10 和 20,为变量 c1 和 c2 赋字符 X 和 Y。以下所示的输入形式中正确的是

(注:□代表空格字符)( )。

A.10□X□20□Y<回车> B.10□X20□Y<回车>

C.10□X<回车> D.10X<回车>

20□Y<回车> 20Y<回车>

【答案】D。解析:%d 不读空格,%c 读空格。

以下程序段的输出结果是( )。

#define MIN(x,y) (x)<(y)?(x):(y)

main()

{ int i=10,j=15,k;

k=10*MIN(i,j);

printf("%d\n",k);

}

A15 B.100 C.10 D.150

【答案】A。解析:宏定义原样替换,因为*的优先级大于<,所以先算10*10。10*(10)<(15)?(10):(15)=15。

6.以下叙述中正确的是( )。

A.构成 C 程序的基本单位是函数

B.可以在一个函数中定义另一个函数

C.main()函数必须放在其它函数之前

D.所有被调用函数一定要在调用之前进行定义

【答案】A。解析:B 中函数不能嵌套定义只能嵌套调用。C 中 main()函数可以放在任意位

置。D 中在 C 语言函数库中定义过的函数不需要进行定义即可调用。

7.以下程序的输出结果是( )。

main()

{ char str[]="ABCD",*p=str;

printf("%d\n",*(p+4)); }

A. 68 B. 'D' C. 0 D. '0'

【答案】C。解析:p+4 指 p 指针指向了'\0','\0'的 ASCII 码为 0。

8.以下程序的输出结果是( )。

main()

{ char str[]="aeiou",*p=str;

printf("%c\n",*p+4)); }

A.o B.u C.e D.f

【答案】C。解析:p 指向数组第一个元素的位置,*p+4='a'+4='e'。

相关推荐
椰萝Yerosius几秒前
MATLAB简介
开发语言·数学建模·matlab
李日灐9 分钟前
C++STL:list(双链表)的底层实现 && 部分源码解析
开发语言·c++
无限进步_17 分钟前
C语言宏的魔法:探索offsetof与位交换的奇妙世界
c语言·开发语言·windows·后端·算法·visual studio
代码雕刻家20 分钟前
C语言关于换行符的注意事项
c语言·开发语言
咕咕嘎嘎102434 分钟前
C/C++内存对齐
java·c语言·c++
认真敲代码的小火龙35 分钟前
【JAVA项目】基于JAVA的图书管理系统
java·开发语言·课程设计
爱敲代码的小冰35 分钟前
js 时间的转换
开发语言·前端·javascript
缘三水36 分钟前
【C语言】14.指针(4)
c语言·开发语言·指针·语法
电子_咸鱼41 分钟前
【QT SDK 下载安装步骤详解 + QT Creator 导航栏使用教程】
服务器·开发语言·网络·windows·vscode·qt·visual studio code
AAA阿giao41 分钟前
深入理解 JavaScript 中的面向对象编程(OOP):从构造函数到原型继承
开发语言·前端·javascript·原型·继承·原型模式·原型链