二级C语言笔试-149_真题-无答案

二级C语言笔试-149
(总分100,考试时间90分钟)
一、选择题
在下列各题的A)、B)、C)、D)四个选项中,只有一个选项是正确的。
1. 以下选项中不合法的标识符是
A. ptint        B. FOR
C. &a        D. _00
2. 下面程序中有错误的行是(每行程序前面的数字表示行号)
    1 main()
    2 
    3    int a[3]=1;
    4    int i;
    5    scanf("%d",&
A. ;
  &        3. 阅读下面程序段,则执行后的结果为
    #inclide"stdio.h"
    main()
      int m=4,n=2,k;
    k=fun(m,n);
    printf("%d\n",k);
    fun(int m,int n)
      return(m*m*m-n*n*n);
A. 64        B. 8
C. 56        D. 0
4. 以下合法的十六进制数是
A. 0x        B. 0x4de
C. 0x1h        D. oX77
5. 下面程序的运行结果是
    #include<stdio.h>
    main()
      static char a[]="Languagef"  ,b[]="programe";
    char *p1,*p2;  int k;
    p1=a;p2=b;
    for(k=0;k<=7;k++)
    if(*(p1+k)==*(p2+k))  printf("%c",*(p1+k));
A. gae        B. ga
C. LanSuage        D. 有语法错
6. 下列叙述中正确的是
A. 在面向对象的程序设计中,各个对象之间具有密切的联系
B. 在面向对象的程序设计中,各个对象都是公用的
C. 在面向对象的程序设计中,各个对象之间相对独立,相互依赖性小
D. 上述三种说法都不对
7. 以下定义语句中正确的是
A. int a=b=0;
B. char A=65+1,b='b';
C. float a=1,*b=&a,*c=&b;
D. double a=0.0;b=1.1;
8. 主程序调用findmax函数求出数组中最大元素在数组中的下标,括号中需填写的内容是
    #include<stdio.h>
    findmax(int*s,int t,int*k)
      int p;
    for(p=0,*k=p;p<t;p++)if(s[p]>s[*k])(    );
    main()
      int a[10],i,k;
    for(i=0;i<10;i++)scanf("%d",&a[i]);
    findmax(a,10,&k);
    printf("%d%d\n"  ,k,a[k]);
A. k=p        B. *k=p
C. k=p-s        D. *k=p-s
9. 结构化程序设计方法的3种基本控制结构中不包括
A. 循环结构        B. 递归结构
C. 顺序结构        D. 选择结构
10. 数据库设计的四个阶段是:需求分析、概念设计、逻辑设计和
A. 编码设计        B. 测试阶段
C. 运行阶段        D. 物理设计
11. 定义如下变量和数组:
    int i;
    int x[3][3]=1,2,3,4,5,6,7,8,9;
    则下面语句的输出结果是(    )。
    for(i=0;  i<3;  i++)
    printf("%d",x[i][2-i]);
A. 1 5 9        B. 1 4 7
C. 3 5 7        D. 3 6 9
12. 如果需要打开一个已经存在的非空文件“Demo”进行修改,下面选项中正确的是
A. fp=fopen("Demo","r");
B. fp=fopen("Demo","ab+");
C. fp=fopen("Demo","w+");
D. fp=fopen("Demo","r+");
13. 以下程序运行时若要正确输出函数的入口地址和输入数的绝对值,应在程序空缺处填入的正确选项是
    abs(int x)
      if(x>=0)return x;
    else return-x;
    main()
      int y,z,(*p)(int x)=abs;
    scanf("  %d"  ,&y);
    z=(  *p)(y);
    ——; 
A. printf("%d%d\n",&p,z)
B. Printf("%d%d\n",p,z)
C. printf("%d%d\n",*p,z)
D. printf("%d%d\n",p,*z)
14. 设已执行预编译命令#include<string.h>,以下程序段的输出结果是
    char s[]="  an apple"  ;
    printf("%d\n",strlen(s));
A. 7        B. 8
C. 9        D. 10
15. x,y,z被定义为int型变量,若从键盘给x,y,z输入数据,正确的输入语句是
A. INPUTx、y、z;
B. scanf("%d%d%d",&x,&y,&z);
C. scanf("%d%d%d",x,y,z);
D. read("%d%d%d",&x,&y,&z);
16. 下述程序的输出结果是
    #include<stdio.h>
    void main()
      int a[5]=2,4,6,8,10;
    int*p=a,**q=&p;
    printf("%d,",*(p++));
    pfintf("%d",**q);
A. 4,4        B. 2,2
C. 4,5        D. 2,4
17. 软件工程的出现是由于
A. 程序设计方法学的影响        B. 软件产业化的需要
C. 软件危机的出现        D. 计算机的发展
18. 下面程序段的输出为
    #nclude"stdio.h"
    main()
      printf("%d\n",12<<2);
A. 0        B. 47
C. 48        D. 24
19. 在数据管理技术的发展过程中,可实现数据共享的是
A. 人工管理阶段        B. 文件系统阶段
C. 数据库系统阶段        D. 系统管理阶段
20. 以下叙述正确的是
A. continue语句的作用是结束整个循环的执行
B. 只能在循环体内和swish语句体内使用break语句
C. 在循环体内使用break语句或continue语句的作用相同
D. 从多层循环嵌套中退出时,只能使用goto语句
21. 设变量a、b、c、d和y都已正确定义并赋值。若有以下if语句
    if(a<b)
    if(c==d)y=0;
    else y=1;
    该语句所表示的含义是
   
22. 有三个关系R、S和T如下:            R         
  B      C      D   
  a      0      k1   
  b      1      n1   
                  S   
  B      C      D   
  f      3      h2   
  a      0      k1   
  n      2      x1   
                  T   
  B      C      D   
  a      0      k1   
    由关系R和S通过运算得到关系T,则所使用的运算为
A. 并        B. 自然连接
C. 笛卡尔积        D. 交
23. 请阅读以下程序:
    #include<stdio.h>
    main()
      int x=1,y=0,a=0,b=0;
    switch(x)
      case 1:
    switch(y)
      case 0:a++;break;
    case 2:
    a++,b++;break;
    printf("a=%d,b=%d\n",a,b);
    上面程序的输出结果是
A. a=2,b=1        B. a=1,b=1
C. a=1,b=0        D. a=2,b=2

本文发布于:2024-09-22 20:21:14,感谢您对本站的认可!

本文链接:https://www.17tex.com/tex/3/95362.html

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

标签:语句   阶段   程序   输出   程序设计   结果
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2024 Comsenz Inc.Powered by © 易纺专利技术学习网 豫ICP备2022007602号 豫公网安备41160202000603 站长QQ:729038198 关于我们 投诉建议