1 关于scanf函数说法正确的是?
A.scanf中也有占位符,占位符和后边的参数提供的地址一一对应。
B.scanf()处理所有占位符时,会自动过滤起首的空白字符,包括空格、制表符、换行符
C.scanf的占位符%s表示读取一个字符串,遇到空白字符也全部读取
D.scanf是库函数,库函数不需要包含头文件
答案:A
B:scanf()处理数值占位符时,会自动过滤空白字符,包括空格、制表符、换行符,scanf输出字符占位符的时候,不忽略空白字符,总是返回当前第一个字符,无论该字符是否为空格。 C:scanf的占位符%s表示读取一个字符串,遇到空白字符就停止读取。 D:scanf需要包含stdio.h这个头文件的
2 关于printf函数说法错误的是?
A.printf()的作用是将参数文本输出到屏幕。它名字里面的f代表format(格式化),表示可以定制输出文本的格式。
B.printf()不会在行尾自动添加换行符,运行结束后,光标就停留在输出结束的地方,不会自动换行。
C.printf()可以在输出文本中指定占位符,“占位符”,就是这个位置可以用其他值代入。
D.printf()参数与占位符是一一对应关系,如果有n个占位符,printf()的参数就应该有n个
答案:D
printf()参数与占位符是一一对应关系,如果有n个占位符,printf()的参数就应该有n+1个
3
A.12345 B.123456 C.23456 D.0
答案:B
printf()允许限定占位符的最小宽度。%5d表示这个占位符的宽度至少为5位。如果不满5位,对应的值的前面会添加空格。如果超过5位,正常输出就行,5是最少输出5位。
4 关于if语句说法正确是:( )
A.if语句后面只能跟一条语句
B.if语句中0表示假,1表示真
C.if语句是一种分支语句,可以实现单分支,也可以实现多分支
D.else语句总是和它的对齐的if语句匹配
答案:C
答案解析: A:错误,if之后可以跟多条语句,跟多条语句时需要使用{}括起来 B:错误,0表示假,非零表示真 C:正确 D:else语句总是跟最近的if 匹配
5
A.1 2 3 4 5 6 7 8 9 10
B.5 5 5 5 5 5 5 5 5 5
C.死循环的打印5
D.0 1 2 3 4 5 6 7 8 9
答案:C
答案解析: 上述代码本来的想法应该是:循环10次,每次循环时如果i==5则打印i的结果。 但if语句中表达式的==写成了赋值,相当于每次循环尽量都是将i的值设置成了5,5为真,因此每次都会打印5 i每次修改成5打印后,i的值永远不会等于10,因此造成死循环 故:死循环的打印5 因此:选择C