一、选择题
1. 有以下程序:
若要使程序的运行结果为248, 应在下画线处填入的是( )。
A.
B.1248 C. D.
答:D
【解析】要输入248,是124的两倍,124为01111100,248为11111000,因此只要左移一位即可。
2. 以下叙述中正确的是( )。
A. 赋值语句是一种执行语句,必须放在函数的可执行部分
B.scanf 和printf 是C 语言提供的输入和输出语句
C. 由printf 输出的数据都隐含左对齐
D. 由printf 输出的数据的实际精度是由格式控制中的域宽和小数的域宽来完全决定的
答:A
【解析】A 项正确,赋值语句是一种可执行语句,应当出现在函数的可执行部分。但需要注意,不要把变量定义时的赋初值和赋值语句混为一谈。B 项错误,C 语言本身没有提供输入输出功能,scanf 和printf 属于标准库函数;C 项错误,数据都隐含右对齐,如果想左对齐,可以在格式控制中的“%”和宽度之间加一个号来实现;D 项错误,若给出的总宽度nl 小于n2加上整数
,则自动突破nl 的限制。 位数和小数点(e 或E 格式还要加上指数的5位)
3. 以下能正确输出字符a 的语句是( )。
答:A
【解析】“格式控制串”用来指定每个输出项的输出格式,对应字符串,对应字符,对应整型。
,单引号里面的内容为字符’a ’,A 选项正确。B 、C 、D 选项双引号里面的内容为字符串“a ”
语句本身就有问题。
4. 有以下程序
程序的运行结果是( )。
A.2
B.1
C.3
D.0
答:c 【解析】后值为3,
5. 有如下程序:
值为3。
程序运行后的输出结果是( )。
A.X
B.XYZ
C.YZ
D.Y
答:A
【解析】字符
不成立,不输出;判断
6. 有以下程序:
程序运行后的输出结果是( )。
的ASCII 码值分别为0、48、97、98。putchar 函数是不成立,不输出。故A 项正确。 向标准输出设备上输出一个字符。程序执行过程为:判断‘\0’==0成立,输出X ; 判断‘0’==0
A.0
B.1
C.2
D.3
答:C
【解析】“++”和“一”运算,当以前缀形式出现时,贝U 先进行加一或减一操作,再取值,当以后缀形式出现时,则先取值,再进行加一或减一操作。a 初始定义为1,b 为0,先执行--a ,结果为0,即if 判断为假,执行b+=2; ,然后输出b 的值。即b 为2。
7. 设变量x 为longint 型并已正确赋值,以下表达式中能将x 的百位上的数字提取出来的是。
A.x/10%100
B.x%10/100
C.x%100/10
D.x/100%10
答:D
x/100结果的个位数上的数字是原来x 的百位数上的数字,【解析】则要得到这个数字只需要
再%10即可。
8. 有以下程序:
程序运行后的输出结果是( )。
答:A
【解析】main ( )函数中,首先定义两个结构体STU 类型的变量a ,b , 并对a 完成初始化,然后将a 赋值给b ,使得结构体a ,b 的值都是再调用函数函数