C语言100L合法吗,2017年计算机二级C语言考前必做试题及答案5

ecee36f31299cc25614c0e46843a09d2.png

(21)有以下程序:

3e32a0736925e3fb61207c636a87a8d1.png

程序执行后的输出结果是(  )。

A.5

B.24

C.32

D.40

(22)有以下程序:

52627a73f1a7c6ed9f04edaa183de989.png

运行时,若输入1 2 3 4 5 0,则输出结果是(  )。

A.66656

B.6566456

C.66666

D.6666656

(23)以下叙述中错误的是(  )。

A.用户定义的函数中可以没有return语句

B.用户定义的函数中可以有多个return语句,以便可以调用一次返回多个函数值

C.用户定义的函数中若没有return语句,则应当定义函数为void类型

D.函数的return语句中可以没有表达式

(24)有以下程序:

56fd5241c69934e033f40bbf6752e95e.png

程序运行后的输出结果是(  )。

A.b,B,b,A

B.b,B,B,A

C.a,B,B,a

D.a,B,a,B

(25)下列选项中,能正确定义数组的语句是(  )。

A.int num[0..2008];

B.int num[];

C.int N=2008;int num[N];

D.#define N 20118 int num[N];

(26)以下函数实现按每行8个输出w所指教组中的数据:

33e44f1850a27a8afbffe1c8bdbaf650.png

(27)有以下程序:

1d531bf47d95284e9cd8877e221ff813.png

当执行程序时从键盘上输入Hello Beijing,则程序运行后的输出结果是(  )。

A.hello beijing

B.Hello Beijing

C.HELLO BEIJING

D.hELLO Beijing

(28)有以下程序:

b2eea1ddf53e1be9f447b952a4ea3f9d.png

程序运行后的输出结果是(  )。

A.1,6,2,1,

B.8,7,3,1,

C.4,7,5,2,

D.1,6,5,7,

(29)有以下程序(strcat函数用于连接两个字符串):

e344c94dce91b4f3d627518281467eac.png

程序运行后的输出结果是(  )。

A.IJK

B.ABCDE\OFG\OIJK

C.ABCDIJK

D.EFGIJK

(30)有以下程序段:

f73eef5d2bf628dde3aa30b5b813c4c3.png

当执行上述程序段,并从键盘输入:name=Lili num=100l后,name的值为(  )。

A、name=Lili num=1001

B.name=Lili

C.Lili num=

D.Lili

(31)有以下程序:

c6877b6261777407ba39f5857ccf702c.png

程序运行后的输出结果是(  )。

A.z

B.0

C.元素ch[5]的地址

D.字符Y的地址

(32)有以下程序:

20f814e783b3bb022ef3cc1c1d922de9.png

程序运行后的输出结果是(  )。

A.0

B.2

C.3

D.5

(33)有以下程序:

2ce1c39ff79949d6c0bcc1648280fbdd.png

执行程序时,给变量x输人10,程序运行后的输出结果是(  )。

A.55

B.54

C.65

D.45

(34)有以下程序:

7f3350311b8c59e076efa7726db4de83.png

程序运行后的输出结果是(  )。

A.3,3

B.1,1

C.2,3

D.1,2

(35)设有以下语句:

b4839289a9611d3f6edc3b4e93c29fee.png

则下面叙述中正确的是(  )。

A.CIN是struct TT类型的变量

B.TT是struct类型的变量

C.可以用TT定义结构体变量

D.可以用CIN定义结构体变量

(36)有以下程序:

2ccff8b1c4b63eb7b3b08dc020e06ff7.png

程序运行后的输出结果是(  )。

A.3,4

B.4,1

C.2,3

D.1,2

(37)有以下程序:

3deaaf498186794ef492f2cd88331dfd.png

程序运行后的输出结果是(  )。

A.0

B.-12

C.-20

D.10

(38)有以下程序:

7b730729c92b30cd96431dbc2d05c92c.png

程序运行后的输出结果是(  )。

A.2

B.4

C.6

D.8

(39)下列关于C语言文件的叙述中正确的是(  )。

A.文件由一系列数据依次排列组成,只能构成二进制文件

B.文件由结构序列组成,可以构成二进制文件或文本文件

C.文件由数据序列组成,可以构成二进制文件或文本文件

D.文件由字符序列组成,其类型只能是文本文件

(40)有以下程序:

d3047d7b1836ffe336bd33c9d63a5239.png

程序运行后的输出结果是(  )。

A.1,2,3,0,0,0,0,0,0,0,

B.1,2,3,1,2,3,0,0,0,0,

C.123,0,0,0,0,123,0,0,0,0,

D.1,2,3,0,0,1,2,3,0,0,

(21)C 【解析】本题的含义是在1-40的整数的范围中,只有当i的值能被5整除,且i+2的值能被8整除时,打印i的值,满足这个条件的只有32,选择C选项。

(22)B 【解析】switch语句的执行流程是:首先计算switch后面圆括号中表达式的值,然后用此值依次与各个case的常量表达式比较,若圆括号中表达式的值与某个case后面

的常量表达式的值相等,就执行此case后面的语句,执行后遇break语句就退出switch语句;若圆括号中表达式的值与所有case后面的常量表达式都不等,则执行default后面的语句。然后退出。所以输入1时打印65,输入2时打印6,输入3时打印64,输入4时打印5,输入5时打印6。

(23)B 【解析】本题重点考察函数返回值的相关知识,函数的值只能通过return语句返回主调函数,在函数中允许有多个return语句,但每次调用只能有一个return语句被执行,因此只能返回一个函数值。不返回函数值的函数,可以明确定义为“空类型”,类型说明符为“void”。因此B选项正确。

(24)A

c4eb1e55be751f07011b3e76042499fd.png

(25)D 【解析】C语言不允许定义动态数组,定义数组的大小必须为常量表达式。A选项错误,C语言中数组没有此类型的定义方法;B选项错误,定义数组应指明数组大小,如果不指明数组大小,需要给定初值的个数;C选项错误,N为变量,不能用来定义数组大小。因此D选项正确。

(26)C 【解析】要按照每行8个输出数据的话,横线处语句的功能应该为:当i是8的倍数时(即i%8==0),输出一个换行符。因此C选项正确。

(27)C 【解析】主程序读取整个字符串存于S中,调用fun函数,字符指针c指向数组s。函数fun的功能是把指针c所指向的字符数组中的所有小写字符转换为大写。gets函数可以把空格作为字符串的一部分输入,以回车作为输入结束。如果*C为小写字符,则*C=* c-32(转大写)。因此C选项正确。

(28)D【解析】首先对二维数组进行赋值操作,a[0][0]、a[0][1]、…、a[3][2]、a[3][3]的值为1、4、…、6、1。通过for语句和if语句,对二维数组各列元素进行由小到大的排序操作,程序最后通过for语句输出二维数组对角线上的元素。因此D选项正确。

(29)C 【解析】字符数组a中包含两个‘\0’,遇到第一个‘\O’时就表示字符串a结束。字符串处理函数strcat(字符数组a,字符数组b),功能是连接两个字符数组中的字符串,把字符串b连接到a的后面,结果放在字符数组a中。连接时将字符串a后的‘\0’取消,只在新串最后保留一个‘\0’。本题相当于将“ABCD”和“IJK”连接。因此C选项正确。

(30)D

42d48a909f9b4393d119fedb726dc297.png

(31)A 【解析】语句pc=eh;使得指针变量指向字符数组ch的首地址,即指向字符‘u’。则pc+5指向的是字符向后移动5位,指向字符‘z’。所以输出的spc+5的值即为‘z’。因此A选项正确。

(32)B 【解析】程序首先给字符数组s[]赋值为“Ol2xy”,for循环语句的功能是遍历字符串,通过if条件语句对字符串中的小写字母计数,在符串中小写字母为2个,即n=2。因此B选项正确。

(33)A 【解析】该程序考察的是函数的递归调用,在调用—个函数的过程中又出现直接或间接地调用该函数本身,称为函数的递归调用,执行结果为1+2+3+…+8+9+10=55。因此A选项正确。

(34)D 【解析】该题目中首先区别++n和n++,第一次调用f函数时,将++n(n自增1后再参与运算)作为参数进行传递,此时变量m的值为1,执行n+=m;后,n=1,将1返回主函数,并输出。第二次调用f函数时,将n++(n参与运算后再自增1)作为参数进行传递,此时变量m的值为1,执行语句n+=m;,由于n是静态存储变量,因此n=2,将2返回主函数并输出。因此D选项正确。

(35)D 【解析】本题考查typedef重新声明一种结构体类型,其中CIN为结构体类型名,而不是结构体变量,所以D选项正确。

(36)C 【解析】本题考查结构体数组的相关操作,dt为结构体数组,那么指针p指向了结构体数组的一个元素,所以p->x为1,p->y为2,结果为2,3。选项C正确。

(37)C 【解析】本题考查宏定义,宏定义只是做简单的替换,所以本题中SUB(a+b)*e=(a+b)-(a+b)*e=-20,所以答案为C选项。

(38)D 【解析】本题考查位运算符,题目中将a向左移两位,左移两位表示乘以4,所以答案为8。选项D正确。

(39)C 【解析】本题考查文件的概念,文件是由数据序列组成,可以构成二进制文件或文本文件,所以答案为C选项。

(40)D 【解析】本题考查文件操作函数,两次fwrite后,币文件中已经写入1,2,3,0,0,1,2,3,0,0然后将文件fp中的内容重新写入数组a中,最后输出a为1,2,3,0,0,1,2,3,0,0,所以选项D正确。

2829f2ca24f0d0090cbba57f30759f23.png

2017年计算机二级C语言考前必做试题及答案5.doc

下载Word文档到电脑,方便收藏和打印[全文共37080字]

编辑推荐:

8b95f2eb3d3f7ce4dc3bf1178c74941e.png

8b95f2eb3d3f7ce4dc3bf1178c74941e.png

8b95f2eb3d3f7ce4dc3bf1178c74941e.png

8b95f2eb3d3f7ce4dc3bf1178c74941e.png

8b95f2eb3d3f7ce4dc3bf1178c74941e.png

下载Word文档

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值