• <strong id="gma4q"><object id="gma4q"></object></strong>
    <tr id="gma4q"><rt id="gma4q"></rt></tr>
    <tr id="gma4q"></tr>
    <tr id="gma4q"><table id="gma4q"></table></tr>
    <tr id="gma4q"></tr>
  • <strong id="gma4q"></strong>
  • 考试吧

    计算机等级

    考试吧>等级考试>计算机二级考试>C语言>模拟试题>正文
    2018年12月计算机二级C语言考前冲刺题及答案(3)
    考试吧 2018-12-07 15:24:46 评论(0)条

      点击查看:2018年12月计算机二级C语言考前冲刺题及答案汇总

      一、选择题

      1.若有以下数组说明,则i=10;a[a[i]]元素数值是(C )。

      int a[12]={1,4,7,10,2,5,8,11,3,6,9,12};

      A、10

      B、9

      C、6

      D、5

      先算a[a[i]]内层的a[i],由于i=10,因此a[i]即a[10].

      a[10]对应下面数组中的元素为9. 因此a[a[i]]即为a[9]

      a[9]对应下面数组中的元素为6. 因此a[9]即为6

      2.若有说明:int a[][3]={{1,2,3},{4,5},{6,7}}; 则数组a的第一维的大小为: ( B )

      A、2

      B、3

      C、4

      D、无确定值

      5 7

      D、3 6 9

      二维数组的一维大小,即指二维数组的行数,在本题中,按行对二维数组赋值,因此内层有几个大括号,数组就有几行

      3.对二维数组的正确定义是(C )

      详见教材P149~152,二维数组的定义、初始化

      类型符 数组名 [常量表达式][常量表达式]

      二维数组可以看做是矩阵

      类型符是指数组中数组元素的类型;数组名要符合标识符命名规则;第一个常量表达式是指数组的行数;第二个常量表达式是指数组的列数;常量表达式的值只能是整数,不可以是变量,而且从1开始计数。

      一维数组初始化时可以省略数组长度

      二维数组初始化时可以省略行数,但不能省略列数

      选项A,B,都省略了列数

      选项D,不符合二维数组定义的一般形式,行、列常量表达式应该放在不同的[]中

      A、int a[ ][ ]={1,2,3,4,5,6};

      B、int a[2] []={1,2,3,4,5,6};

      C、int a[ ] [3]={1,2,3,4,5,6};

      D、int a[2,3]={1,2,3,4,5,6};

      4.已知int a[3][4];则对数组元素引用正确的是__C___

      A、a[2][4]

      B、a[1,3]

      C、a[2][0]

      D、a(2)(1)

      5.C语言中函数返回值的类型是由 A 决定的.

      A、函数定义时指定的类型

      B、 return语句中的表达式类型

      C、 调用该函数时的实参的数据类型

      D、形参的数据类型

      6. 在C语言中,函数的数据类型是指(A )

      A、 函数返回值的数据类型

      B、 函数形参的数据类型

      C、 调用该函数时的实参的数据类型

      D、任意指定的数据类型

      7.在函数调用时,以下说法正确的是( B )

      A、函数调用后必须带回返回值

      B、实际参数和形式参数可以同名

      C、函数间的数据传递不可以使用全局变量

      D、主调函数和被调函数总是在同一个文件里

      8. 在C语言中,表示静态存储类别的关键字是: ( C )

      A、 auto

      B、 register

      C、static

      D、extern

      9.未指定存储类别的变量,其隐含的存储类别为(A )。

      A、auto

      B、static

      C、extern

      D、register

      10. 若有以下说明语句:

      struct student

      { int num;

      char name[ ];

      float score;

      }stu;

      则下面的叙述不正确的是: (D )

      A、 struct是结构体类型的关键字

      B、 struct student 是用户定义的结构体类型

      C、 num, score都是结构体成员名

      D、 stu是用户定义的结构体类型名

      11.若有以下说明语句:

      struct date

      { int year;

      int month;

      int day;

      }brithday;

      则下面的叙述不正确的是__C___.

      A、 struct是声明结构体类型时用的关键字

      B、 struct date 是用户定义的结构体类型名

      C、 brithday是用户定义的结构体类型名

      D、year,day 都是结构体成员名

      12. 以下对结构变量stul中成员age的非法引用是 B

      struct student

      { int age;

      int num;

      }stu1,*p;

      p=&stu1;

      A、 stu1.age

      B、 student.age

      C、 p->age

      D、(*p).age

      13.设有如下定义:

      struck sk

      { int a;

      float b;

      }data;

      int *p;

      若要使P指向data中的a域,正确的赋值语句是 C

      A、 p=&a;

      B、 p=datA、a;

      C、p=&datA、a;

      D、*p=datA、a;

      14.设有以下说明语句:

      typedef struct stu

      { int a;

      float b;

      } stutype;

      则下面叙述中错误的是( D )。

      A、struct是结构类型的关键字

      B、struct stu是用户定义的结构类型

      C、a和b都是结构成员名

      D、stutype是用户定义的结构体变量名

      15.语句int *p;说明了 C 。

      A、p是指向一维数组的指针

      B、p是指向函数的指针,该函数返回一int型数据

      C、p是指向int型数据的指针

      D、p是函数名,该函数返回一指向int型数据的指针

      16、以下语句的输出结果是( D)。

      int a=-1,b=4,k;

      k=(+ +a<0)&&!(b - -<=0);

      printf("%d,%d,%d\n",k,a,b);

      A. 1,0,4

      B. 1,0,3

      C. 0,0,3

      D. 0,0,4

      17、下列程序的输出结果是(D )。

      char *p1="abcd", *p2="ABCD", str[50]="xyz";

      strcpy(str+2,strcat(p1+2,p2+1));

      printf("%s",str);

      A. xyabcAB

      B. abcABz

      C. ABabcz

      D. xycdBCD

      18、执行下面的程序后,a的值是(B )。

      #define SQR(X) X*X

      main( )

      { int a=10,k=2,m=1;

      a/=SQR(k+m)/SQR(k+m);

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

      A. 10

      B. 1

      C. 9

      D. 0

      19、设A为存放(短)整型的一维数组,如果A的首地址为P,那么A中第i 个元素的地址为( B)。

      A.P+i*2

      B. P+(i-1)*2

      来源:考试大

      C. P+(i-1)

      D. P+i

      20、下列程序执行后输出的结果是( A)。

      int d=1;

      fun (int p)

      { int d=5;

      d + =p + +;

      printf("%d,",d); }

      main( )

      { int a=3;

      fun(a);

      d + = a + +;

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

      A. 8, 4

      B. 9, 6

      C. 9, 4

      D. 8, 5

      21、表达式:10!=9的值是(D )。

      A. true

      B. 非零值

      C. 0

      D. 1

      22、若有说明: int i,j=7, *p=&i;, 则与i=j; 等价的语句是( B)。

      A. i= *p;

      B. *p=*&j;

      C. i=&j;

      D. i=* *p;

      23、不能把字符串:Hello!赋给数组b的语句是( B)。

      A. char b[10]={’H’,’e’,’l’,’l’,’o’,’!’};

      B. char b[10]; b="Hello!";

      C. char b[10]; strcpy(b,"Hello!");

      D.char b[10]="Hello!";

      24、在C程序中有如下语句:char *func(int x,int y); 它是(C )。

      A. 对函数func的定义。

      B. 对函数func的调用。

      C.对函数func的原型说明。

      D. 不合法的。

      25、以下程序的输出结果是( D)。

      char str[15]=”hello!”;

      printf(“%d\n”,strlen(str));

      A. 15

      B. 14

      C. 7

      D. 6

    展开全文
    评论(0条) 发表
    触屏版电脑版
    Copyright ? 2004-2019
    考试吧(www.97qx.cn)北京雄鹰教育科技股份有限公司
    社会统一信用代码:91110 10877 95089 232
    帮助中心
    高清视频无码