二级C语言笔试-424
(总分98,考试时间90分钟)
一、选择题
1. 栈和队列的共同点是(    )。
    A) 都是先进先出    B) 都是先进后出
    C) 只允许在端点处插入和删除元素    D) 没有共同特点
2. 数据库设计的根本目标是要解决(    )。
    A) 数据共享问题    B) 数据安全问题    C) 大量数据存储问题    D) 简化数据维护
3. 在数据库设计中,将E-R图转换成关系数据模型的过程属于
    A) 需求分析阶段    B) 逻辑设计阶段    C) 概念设计阶段    D) 物理设计阶段
4. 关系代数运算是以______为基础的运算。
      A) 关系运算    B) 谓词运算    C) 集合运算    D) 代数运算
5. 按照C语言规定的用户标识符命名规则,不能出现在标识符中的是______。
    A) 大写字母    B) 连接符    C) 数字字符    D) 下划线
6. 以下程序段的输出结果是 ______。
    int a=1234;
    printf("% 2d\n",a);
    A) 12      B) 34
    C) 1234    D) 提示出错、无结果
7. 以下叙述中错误的是
    A) C程序在运行过程中所有计算都以二进制方式进行
    B) C程序在运行过程中所有计算都以十进制方式进行
    C) 所有C程序都需要编译链接无误后才能运行
    D) C程序中整型变量只能存放整数,实型变量只能存放浮点数
8. 下列选项中,不能用做标识符的是______。
    A) _1234_    B) _1_2    C) int_2_    D) 2_int_
9. 若在定义语句:int a,b,c,*p=&c;之后,接着执行以下选项中的语句,则能正确执行的语句是(    )。
    A) scanf("%d",a,b,c);    B) scanf("%d%d%d",a,b,c);
    C) scanf("%d",p);    D) scanf("%d",&p);
10. 若变量a、i已正确定义,且i已正确赋值,下面合法的语句是
    A) a==1    B) ++i;    C) a=a++=5;    D) a=int(i);
11. 设有定义:“long x=123450L;”,则以下能够正确输出变量x的是(    )。
    A) printf("x=%d\n",x);    B) printf("x=%id\a",x);
    C) printf("x=%dL\n”,x);    D) printf("x=%ld\n",x);
12. 下列程序的运行结果是(    )。
    #include<stdio.h>
    main()
      int a=0,b=4,c=0,d=10,x;
        if(a)
            d=d-10;
        else
            if(!b)
                  if(!c)
                        x=15;
                  else
                        x=25;
        printf("%d\n",d);
   
    A) 5    B) 3    C) 20    D) 10
13. 下列4个关于C语言的结论中错误的是(    )。
    A) 可以用do…while语句实现的循环一定可以用while语句实现
    B) 可以用for语句实现的循环一定可以用while语句实现
    C) 可以用while语句实现的循环一定可以用for语句实现
    D) do…while语句与while语句的区别仅是关键字“while”出现的位置不同
14. 在以下给出的表达式中,与while(E)中的(E)不等价的表达式是(    )。
    A) (!  E==0)    B) (E>0 ‖ E<O)    C) (E==0)    D) (E!  =0)
15. 有下列程序段:
    typedef struct NODE
    int num;struct NODE*next;
    OLD;
    下列叙述中正确的是(    )。
    A) 以上的说明形式非法    B) NODE是一个结构体类型
    C) OLD是一个结构体类型    D) OLD是一个结构体变量
16. 有以下程序:
    #include<stdio.h>
    main()
    int a=6,b=7,m=I;
    switch(a%2)
    case 0:m++;break;
    case 1:m++;
    switch(b%2)
    defaut:m++;
    case 0:m++;break;
   
   
    printf("%d\n",m);
   
    程序运行后的输出结果是(    )。
    A) 1    B) 2    C) 3    D) 4
17. 设有如下程序段,则执行p=s;语句后,以下叙述中正确的是
    char s[20]="Bejing",*p;
    p=s:
    A) 可以用*p表示s[0]
    B) s数组中元素的个数和p所指字符串长度相等
    C) s和p都是指针变量
    D) 数组s中的内容和指针变量p中的内容相同
18. C语言规定,函数返回值的类型是(    )。
    A) 由调用该函数时的主调函数类型所决定
    B) 由return语句中的表达式类型所决定
    C) 由调用该函数时系统临时决定
    D) 由定义该函数时所指定的数值类型决定
19. 设有下列程序段:
    char s[20]="Beijing",*p;
    p=s;
    则执行p=s;语句后,下列叙述正确的是(  )。
    A) 可以用*p表示s[0]
    B) s数组中元素的个数和p所指字符串长度相等
    C) s和p都是指针变量
    D) 数组s中的内容和指针变量p中的内容相同
20. 请读程序:
#include<stdio.h>
#include<string.h>
main()
  char*s1="AbCdEf","*s2="aB";
    s1++;s2++;
    printf("%d\n",strcmp(s1,s2));
    上面程序的输出结果是______。
    A) 正数    B) 负数    C) 零    D) 不确定的值
21. 以下程序的输出结果是______。
        main()
            int a[4][4]=1,3,5,2,4,6,3,5,7
            printf("%d%d%d%d\n",a[0][3],a[1][2],a[2][1],a[3][0]);
       
        A) 0650    B) 1470    C) 5430    D) 输出值不定
字符串长度排序c语言22. 有以下程序
    #include  <stdio.h>
    main()
      int m=1,n=2,*p=&m,*q=&n,*r;
    r=p;p=q;q=r;
    printf("%d,%d,%d,%d\n",m,n,*p,*q);
   
    程序运行后的输出结果是
    A) 1,2,1,2    B) 1,2,2,1
    C) 2,1,2,1    D) 2,1,1,2
23. 下列程序的输出结果是(    )。
    #include<stdio.h>
    voidp(int*x)
 
printf("%d",++*x);
   
 
  voidmain()

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。