四川省计算机等级考试试题,四川省计算机二级第三十四次等级考试.doc

这篇博客主要探讨了C/C++编程中的字符常量、位运算和逻辑运算的相关知识。通过分析多个选择题实例,讲解了字符常量的合法形式、位运算符的使用以及逻辑运算在程序中的应用。同时,涉及了字符串处理、字符数组、结构体、宏定义等编程概念,帮助读者深入理解C/C++语法和逻辑控制。
摘要由CSDN通过智能技术生成

四川省计算机二级第三十四次等级考试

二级(C与C++语言)

一、单项选择题 ( 每小题1分,共10分 )

1. 以下合法的字符常量是( B ) 。(考点:常量)

(A) “a”(B) ‘\72’(C) ‘\0x12’(D) ‘ab’

2. 以下程序的结果是( B)。(考点:位运算)

void main()

{ unsigned int a=3,b=10;

printf("%d \n",a<<2|b>>1);

}

(A) 1(B) 13 (C) 12(D) 5

3. 以下程序的输出结果是( D )。(考点:逻辑运算)

void main()

{ 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

4. 以下程序运行后的输出结果是( C )。(考点:字符数组及字符串处理函数)

# include

void main()

{char p[20]={'a','b','c','d'},q[]="abc",r[]="abcde";

strcpy(p+strlen(q),r);

strcat(p,q);

printf("%d %d\n",sizeof(p),strlen(p));

}

(A) 20 9(B) 9 9(C) 20 11(D) 11 11

5. 下列对C语言字符数组的描述中错误的是( C )。(考点:字符数组)

(A)字符数组可以存放字符串

(B)字符数组的字符串可以整体输入、输出

(C)可以在程序中用赋值运算符“=”对字符数组进行整体赋值

(D)不可以用关系运算符对字符数组中的字符串进行比较

6. 下述程序的输出结果是( D )。(考点:条件运算)

# include

void main()

{int a[]={7,4,6,3,10};

int m=10,k,*ptr=&a[0];

for(k=0;k<5;k++)

m= *(ptr+k)

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

}

(A) 10(B) 4(C) 6(D) 3

7.有如下程序员 (考点:if~else嵌套)

# include

void main()

{int a=2,b=-1,c=2;

if(a

if(b<0) c=0;

else c++;

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

该程序的输出结果是( C )

(A) 0(B) 1(C) 2(D) 3

8. 根据下面的结构体类型及其结构数组的定义,值等于’A’的表达式是(D )(考点:结构体)

struct season

{char name[10];

int day;

};

struct season s[4]={"Spring",90,"Summer",91,"Autumn",92,"Winter",92};

(A) s[3].name[0](B)s[3].name(C) s[2].name(D) s[2].name[0]

9. 运行以下程序的输出结果为( B )。(考点:宏定义)

# define R 1+2

# define S(r) r*r

# define V(r) S(r)*R

# include

void main()

{int r1=1+2;

printf("%d",V(r1));

}

(A) 27(B) 11(C) 9(D) 7

10. 以下不能对二维数组a进行正确初始化的语句是 ( A ) 。(考点:二维数组赋初值)

(A) int a[2][3]={{1,2},{3,4},{5,6}};(B) int a[][3]={{1,2},{0}};

(C) int a[2][3]={0};(D) int a[][3]={1,2,3,4,5,6}

二、读程序回答问题 ( 每个选择3分,共45分 )

1. 读下面的程序并回答问题。(考点:switch语句嵌套)

# include

void main()

{int x=1,y=0,a=0,b=0;

switch(x)

{case 1:switch(y)

{case 0: a++;break;

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值