计算机二级C语言|错题汇总+解析(DAY1)

下列论述中正确的是(B

A. 

有一种以上根结点的数据构造不一定是非线性构造

B. 

只有一种根结点的数据构造不一定是线性构造

C. 

循环链表是非线性构造

D. 

双向链表是非线性构造

解析:A:线性结构有且仅有一个根节点,所以有一个以上根节点的一定是非线性结构;

B:比如树就不是非线性结构,但是它只有一个根节点

C,D:链表是线性结构


某二叉树共有7个结点,其中叶子结点只有1个,则该二叉树的深度为(假设根结点在第1层)( D

A. 

3

B. 

4

C. 

6

D. 

7

解析:因为它叶子结点只有一个,所以它一定是只有右子树或者左子树的二叉树,那么它的深度就会等于它的结点个数


下面描述中错误的是( A

A. 

系统总体构造图支持软件系统的具体设计

B. 

软件设计是将软件需求转换为软件表达的过程

C. 

数据构造与数据库设计是软件设计的任务之一

D. 

PAD图是软件具体设计的表达工具

解析:系统总体结构图支持软件系统的需求分析阶段,实际上就是框架图,PAD图支持软件系统的具体设计(详细设计)


如下选项中不能用作C程序合法常量的是( A

A. 

1,234

B. 

“123”

C. 

123

D. 

“\x7G”

解析:A:中间有,会造成语法错误


有如下程序:

1

2

3

4

5

6

7

8

9

#include<stdio.h>

main()

{

    char s[]="012xy\08s34f4w2";

    int i,n=0;

    for(i=0;s[i]!=0;i++)

    if(s[i]>= "0"&&s[i]<= "9")n++;

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

}

程序运行后的输出成果是(B

A. 

0

B. 

3

C. 

7

D. 

8

解析012xy\0,遇到了\0结束循环,所以只能计算到123是数字,所以是3个


若i和k都是int类型变量,有如下for语句:

1

2

for(i=0,k=1;k=1;k++)

printf("*****\n");

下面有关语句执行状况的论述中正确的是( D

A. 

循环体执行两次

B. 

循环体执行一次

C. 

循环体一次也不执行

D. 

构成无限循环

解析:因为判断循环是否继续的的条件为k=1,是一个赋值操作,则该条件一直成立,所以会造成死循环


设有定义:double x[10],*p=x;,如下能给数组x下标为6的元素读入数据的正确的语句是( C

A. 

scanf("%f",&x[6]);

B. 

scanf("%lf",*(x+6));

C. 

scanf("%lf",p+6);

D. 

scanf("%lf",p[6]);

解析:因为scanf里面要输入的为数组下标为6的地址,并且类型为double


有如下程序:

1

2

3

4

5

6

7

8

9

10

#include<stdio.h>

main()

{

    int x=1,y=0;

    if(!x) y++;

    else if(x==0)

       if (x) y+=2;

       else y+=3;

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

}

程序运营后的输出成果是(D

A. 

3

B. 

2

C. 

1

D. 

0

解析:因为else总是和前面最近的尚未配对的if,所以最后

        if (x) y+=2;

       else y+=3;

是一起的一句,则前面if和else if的条件都是false,所有没有改变y的值


若有定义语句:char s[3][10],(*k)[3],*p;,则如下赋值语句正确的是( C

A. 

p=s;

B. 

p=k;

C. 

p=s[0];

D. 

k=s;

解析:A:p=s将二维数组赋值给指向字符的指针,错误;

B:p=k将指向一维数组的指针赋值给指向字符的指针,错误;

C:p=s[0]是把一维数组的首地址赋给p指针,正确;

D:k=s将二维数组赋值给一维数组,错误;

  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值