1.选择试题2.注册/登陆3.开始答题4.提交试卷5.查看成绩6.答案解析
您的位置:模考吧在线考试中心 > 职业资格 > 软件 > C语言 > 确认进入考试
第13期-c语言基础结课考试
试卷预览
第 1 题:单选题:

(1)C语言中:1&1 =? ; 1|1=? ;  ; 1<<1 =?; !1=?  ( )

A:1,1,2,0;

B:1,0,2,0;

C:1,1,1,1;

D:1,1,1,0;

第 2 题:单选题:

当a=1,b=0,以下不能输出yes的是:( )

A:if (a) printf(“yes”)

B:if(b-a) printf(“yes”)

C:if(a+b)printf(“yes”)

D:if(b)printf(“yes”)

第 3 题:单选题:

以下程序结果是:()

for(int i=0;i<1;i++)

for(int j=0;j<2;j++)

printf(“1”);

   printf(“2”);

A:112

B:1212

C:12

D:2

第 4 题:单选题:

对于二维数组初始化错误的是:

A:int b[3][4];

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

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

C:int c[3][4] = { { 1 }, { 9 } };

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

第 5 题:单选题:

(5)对于缺省长度的数组初始化错误的是:()

A:int a[]={1};

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

C:int c[3][] = { { 1 }, { 9 } };

D:int b[]= { NULL};

第 6 题:单选题:

(5)以下不能输出char c[]={"china"};的是:()

A:puts(c)

B:printf("%s",c);

C:printf("%s",c[]);

D:printf(“%s”,c+0);

第 7 题:单选题:

对于char c[8]={"china"};printf("%d",strlen(str));结果是:()

A:8

B:9

C:5

D:6

第 8 题:单选题:

阅读一下程序:输出结果是()

int main()

{   void  increment(void);

     increment();

     increment();

     increment();

           return 0;

}

void  increment(void)

{   static int x=0;

     x++;

     printf(“%d\n”,x);

}

A:1 1 1

B:0 0 0

C:1 2 3

D:出现乱码

第 9 题:单选题:

(12)对于:int* i_pointer=&i以下说法错误的是:()

A:i  =    *i_pointer

B:*i_pointer  =    *(&i)

C:&i  =  &(*i_pointer)

D:指针的类型是int

第 10 题:单选题:

(12)以下指针初始化错误的是:()

A:int i;

    int   *p=&i;

B: int   i;

     static  int    *p=&i;

C:int i;

    int  *p=&i;

    int  *q=p;

D:int  *p=NULL;

第 11 题:单选题:

关于指针的运算,错误的是:()

A:p+i等价于p +i*d (i为整型数,d为p指向的变量所占字节数)

B:p++, p--, p+i, p-i, p+=i, p-=i都有意义

C:若p1与p2指向同一数组,p1-p2=两指针间元素个数等价于:(p1-p2)/d

D:p1+p2  有意义

第 12 题:单选题:

inta[]={1,2,3,4,5,6,7,8,9,10},*p=a,i;

对于数组元素地址正确的是()

A:&(a+1)

B:a++

C:&p

D:&p[i]

第 13 题:单选题:

对于二维数组 int a[3][4],说法错误的是:()

A:a-----二维数组的首地址,即第0行的首地址

B:a+i-----a[i]的地址

C:a[i] Û *(a+i)------第i行第0列的元素地址

D:*(a[i]+j) 等价于*(*(a+i)+j) 等价于a[i][j] 第i行第j列的元素

第 14 题:单选题:

对于二维数组int a[3][4]以下指针是行指针的是:()

A:&a[1][0]

B:a[1]

C:*(a+1)

D:a+1

第 15 题:单选题:

以下定义结构体变量错误的是:()

A:struct student{int num;}stu1,stu2;

B:struct{int num;}stu1,stu2;

C:struct student{int num;};

struct student stu1,stu2;

D:struct student{int num;};

student stu1,stu2;

第 16 题:单选题:

下列循环操作中,能打印1~10的代码为()。

  A、for(int i=0;i<10;i++){

       printf(“%-3d”,i);

     }

  B、int i=1;

     do{

       printf(“%-3d”,++i);

     }while(i<=10);

  C、int i=1;

     while(i<=10){

       Printf(“%-3d”,i++);

     }

  D、for(int i=1;i<=10;i++);

第 17 题:单选题:

下列标识符合法的是()

A.3age     B_age    C:age#    D:int

第 18 题:单选题:

定义一个整型指针p,下列程序语句中符合“为指针p申请10块存放整型数据的内存空间”的操作是( )。

  A、p=(int)malloc(sizeof(int)+10)

  B、p=(int *)malloc((int *)10)

  C、p=(int *)malloc(10*sizeof(int))

  D、p=malloc(10*sizeof(int))

第 19 题:单选题:

二进制1010110转换成10进账,8进制和16进制分别是多少?

A. 86   126    56

B:126 82  56

C:86  52  126

C:82  126   52

第 20 题:单选题:

下列代码打印的结果是:

int  x = 0;

switch(x)

{

case 0:printf("0");

case 1:printf("1");break;

default:printf("2");break;

}

A:0      B:1   C:12   D:01

做了该试卷的考友还做了