错题集--大一C语言选择题

1.   

对下列代码的描述:

#include "stdio.h"
int main(){
    long num=1;
    while(num++ > 0) for(long i=num; i >=0; i--)printf("i :=\n \t %ld \n" , i);
    return 0;
}

正确的是:

(2分)

A.

程序有编译错误,不能执行

B.

循环条件永为真,循环无限次,程序根本停不下来,打印输出无限行

C.

循环有限次,程序正常结束,打印输出有限行                 long有范围,总会结束的

D.

程序运行过程必定会出错(崩溃),结果打印输出有限行

2.    

设有程序段

int m=20; while (m=0) m=m++;

则下面描述中正确的是( )。

(2分)

A.

while 循环执行 10 次

B.

循环是无限循环

C.                                                         没想到吧,题目里是“=”,不是“==”

循环体语句一次也不执行

D.

循环体语句执行一次

3.     

以下代码,语法正确的是:

(2分)

A.

while ( ) ;

B.

for( ) ;

C.                                                 眼瞎党练练眼力,而且()里得有东西的

for( ; ; ) ;

D.

do { } while( );

4.    

以下不正确的赋值或赋初值的方式是( )。

(1分)

A.

char str[]="string";

B.

char str[7]={'s', 't', 'r', 'i', 'n', 'g'};

C.                                                          出题人手残,别考虑中英文标点符号。  str单独出列时是数组首元素地址,不能赋值

char str[10];str="string";

D.

char str[7]={'s', 't', 'r', 'i', 'n', 'g', ’\0’};

5.  

对于定义 char str[] = "abc\000def\n"(注:其中0为数字零),求字符串str的长度len和数组str的大小size,len和size分别是:

(1分)

A.

12 ,13

B.

3 ,11

C.                                        39天下第一(???)   str是“a b c \0 d e f \n \0”,9个字符,3个有效长度

3 ,9

D.

3 ,4

补充: /65  是八进制数, ASCII值是53,对应数字5

6.        字符串数组可以在赋值语句中通过赋值运算符"="对字符数组整体赋值(X)  

                    错法同第四题,退化为指针类型

7.        

有以下定义:char x[ ]="abcdefg"; char y[ ]={'a', 'b', 'c', 'd', 'e', 'f', 'g'}; 则正确的叙述为()。

(1分)

A.

数组x和数组y等价

B.

数组x和数组y的长度相同

C.                                                                      y赋到’g‘就结束了,我犯什么大病,x就比y长

数组x的长度大于数组y的长度

D.

数组x的长度小于数组y的长度

8.       

以下名字,不能作为C语言标识符的是:

(2分)

A.                                   (真有你的周强,hehe)

hehe

B.

a$b_c

C.

student-2                       减号和取反符号都是用来运算的,不能标识符

D.

$$

E.

monkey~1

9.        

要定义一个做减法运算的宏,以下最恰当的是:

(2分)

A.

#define SUB(X,Y) X-Y

B.

#define SUB(X,Y) (X-Y)

C.

#define SUB(X,Y) (X

  • 14
    点赞
  • 81
    收藏
    觉得还不错? 一键收藏
  • 5
    评论
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值