2015年计算机一级考试c卷,2015年计算机二级《C语言》最新章节练习题(1)

选择题:

1设有定义:

b38898d3a0cac3ce5e8314dd50463a48.png

A.1234,3.142

B.123,3.142

C.1234,3.141

D.123,3.141

参考答案:A

参考解析:函数Printf()中,%md指输出带符号的十进制整数,给定最小宽度为m位,不足m位左端补空格,超过m位按实际位数输出,%.nf表示以小数形式输出实数,小数占n位,对应题目,答案为A选项。

2若有定义

16615d8f627f3f4b06fa72e6d659cd93.png

则a的定义与下面哪个语句等价

A.int(*A.[10];B.int}g[10];C.int*a;D.int a[10];

参考答案:B

参考解析:本题考查typedef的使用方法,typedef对已存在的类型使用一个新的名字,其中本题中int*用T来代替,所以定义T a[10];就相当于是int*a[10];选项B正确。

3以下叙述中正确的是

A.语句int a[8]={0};是合法的

B.语句inta[]={0};是不合法的,遗漏了数组的大小

C.语句char a[2]={ "A","BII};是合法的,定义了一个包含两个字符的数组

D.语句char a[3];a="AB";是合法的,因为数组有三个字符空间的容量,可以保存两个字符

参考答案:A

参考解析:B选项中,如给全部元素赋值,则在数组说明中,可以不给出数组元素的个数;C选项中,char a[2]={ "","B"};不合法,应为char a[2]={´A´,´B´};;D选项中,字符数组只能在定义的时候可以用字符串常量来初始化,但不能够先定义字符数组,然后再用字符串常量进行赋值。因此A选项正确。

4有以下程序

cdb238526167030e06e7195c5e5a1c2b.png

程序运行后的输出结果是

A.随机值B.0C.15D.16

参考答案:A

参考解析:本题重点考查for语句,变量没有初始化的情况下,默认值与编译器有关系,不同的编译器有不同的值。因此A选项正确。

5有以下程序

c27cfe7bf6c47cc33ac2797adfe4badf.png

程序的输出结果是

A.21.10B.11.10C.12.10D.1.10

参考答案:D

参考解析:本题考查把数组名作为函数参数,执行fun函数后,s的值并没有发生变化,仍然是指向a,所以输出结果为1.10,选项D正确。

6若有以下程序

6d2b173356db23f5564fac5a374418cf.png

则程序的输出结果是

A.2,2,2,4

B.2,1,2,-1

C.5,1,2,-1

D.1,2,3,4

参考答案:C

参考解析:第一个if语句的判断条件中是逻辑与表达式,只有运算对象均非零结果才为真,执行第一个if判断条件,均为赋值表达式,第一个运算对象a=2非零,判断第二个表达式b=1也非零,所以条件成立执行c=2的赋值操作。执行第二个if判断条件中的逻辑或表达式,只要有一个对象非零结果就是真,本条件中c==3运算对象为假,所以需要判断第二个运算对象d=-1,结果为-1非零,所以条件成立,执行a=5,的操作,所以a值为5,b值为1,c值为2,d值为-1。

7若有以下程序

43c6749886a85a88c6575e8e84671b1c.png

则程序的输出结果是

A.17,289B.49,2401C.17,37D.49,289

参考答案:C

考解析:本题考查宏定义,宏定义只是做个简单的替换,执行S(k+j)=k+j*k+j=17,T(k+j)=S(k+j)*S(k+j)=k+j*k+j*k+j$k+j=37,选项C正确。

8设有定义:

double a,b,C;

若要求通过输入分别给a,b、c输入1、2、3,输入形式如 下(注:此处口代表一个空格)口口1.0口口2.0口口3.0则能进行正确输入的语句是

A.scanf("%If%If%If",a,b,C.;

B.scanf("%If%If%If",&a,&b,&C.;

C.scanf(”%f%f%f",&a,&b,&C.;

D.scanf("%5.1If%5.1If%5.1If",&a,&b,&C.;

参考答案:B

参考解析:

本题考查scanf函数的格式化输入,scanf函数的一般形式为scanf(格式控制,变量1地址,变量2地址,…),其中,格式字符串要与数据类型保持一致,由于变量double型,所以格式字符串中应为%/if,后面应该为变量地址,所以需要加上符号“&”。所以选择B。

9以下结构体说明和变量定义中,正确的是

890427119a3736c21ac58a6f9cdfc691.png

参考答案:A

参考解析:本题考查typedef的使用方法,typedef对已存在的类型使用一个新的名字,选项A中ABC为新的类型别名,定义正确。

10若有以下程序段

53cc8d35b035e2aaecaf8889746b8c98.png

则以下选项中值为6的表达式是

A.P->nB.(*p).nC.p->n++D.++(P->n)

参考答案:D

参考解析:本题考查结构体变量的引用,其中a为定义的结构体数组,D选项中P->n为5,++(P->11)为6,所以D选项正确。

相关推荐:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值