首页 > 全部 > 二级C语言 > 国家二级(C语言)机试模拟试卷497

国家二级(C语言)机试模拟试卷497

本单篇文档共14952字,内容预览3600字,预览为有答案版,源文件无水印,下载后包含无答案空白卷版和有答案版,同时也有计算机类NCRE全国计算机二级整科真题模拟题,讲义课件,思维导图,易错高频题等下载。
二级C语言 模拟试卷 5899人下载
价格: 1.00 原价:¥8.00
收藏

国家二级(C语言)机试模拟试卷497

选择题

1.算法的有穷性是指( )。(A)

A. 算法程序的运行时间是有限的

B. 算法程序所处理的数据量是有限的

C. 算法程序的长度是有限的

D. 算法只能被有限的用户使用

解析:算法原则上能够精确地运行,而且人们用笔和纸做有限次运算后即可完成。有穷性是指算法程序的运行时间是有限的。

2.有以下程序:

main()

{int k=33;

printf(\\(D)

A. 33,033,0x21

B. 33,033,21

C. 33,041,021

D. 33,41,21

解析:本题考查不同进制间的转换。printf输出函数中输出变量的格式,由输出格式符决定。题中“%o”格式符表示以八进制的形式输出;“%x”格式符表示以十六进制的形式输出。“33”的八进制和十六进制分别是41和21。

3.以下程序:

#include

main()

{ char str[10];

scanff\\(A )

A. how

B. how are you

C. h

D. howareyou

解析:当从键盘输入how are you时,由于scanf输入函数的特点是遇到空格时结束读入字符,因此,该程序只将how这3个字符送到了字符数组str中,并在其后自动加上结束符“\\\\0”。

4.有以下程序段:

#include<stdio.h>

int i,n;

for(i=0;0;i<8;i++)

{n=rand()%5;

switch(n)

{ease1:

ease3:printf(\\(D)

A. for循环语句固定执行8次

B. 当产生的随机数n为4时结束循环操作

C. 当产生的随机数n为1和2时不做任何操作

D. 当产生的随机数n为0时结束程序运行

解析:case常量表达式只是起语句标号作用,并不是该处进行条件判断。在执行switch讲句时,根据switch的表达式,找到与之匹配的case讲句,就从此case子句执行下去,不再进行判断,直到碰到hreak或函数结束为止。简单的说break是结束整个循环体,而continue是结束单次循环。B选项中当产生的随机数n为4时要执行打印操作。C选项中当产生的随机数为1和2时分别执行case3与case4后面语句的内容。由于存在break语句所以for循环不是同定执行8次,执行次数与产生的随机数n有关系。

5.语句“printf(\\(C)

A. a\bhow\’are\’y\kbou

B. a\bhowk\’are\’y\bou

C. how’are’you

D. ahow’are’y\bou

解析:“\b”格式符表示退格。功能是将它后面的字母把它前面的字母覆盖,导致“\b”格式符前面的字母不能输出;“\”格式符表示输出单引号字符;“\”格式符表示输出反

6.下面程序的运行结果是( )。

#include

main()

{int i;

for(i=1;i<=5;i++)

{ if(i%2)printf(\\(A)

A. *#*#*

B. #*#*#*

C. *#*#

D. #*#*

解析:分析程序可知,程序循环5次,然后利用if语句决定每次循环时输出的字符。当i为奇数时,i%2=1,if(i%2)为真,输出“*”’;当i为偶数时,i%2=0,if(i%2)为假,执行else语句,输出“#”,所以当i取1、3、5值时输出“*”,当i取2、4值时输出“#”。

7.设有定义:

char p[]={’1’,’2’,’3’},*q=p;

以下不能计算出一个char型数据所占字节数的表达式是( )。(C)

A. sizeof(*q)

B. sizeof(char)

C. sizeof(p)

D. sizeof(p[0])

解析:数组名表示该数组的首地址,是一个地址常量,所以sizeof(p)求得的是一个地址占用的字节数,即4个字节,答案选C。

8.有以下程序:

#include<stdio.h>

#define N4

void fun(int a[][N],int b[])

{int i;

for(i=0;i<N;i++)b[i]=a[i][i]-a[i][N-1-i];

}

main()

{int x[N][N]={{1,2,3,4},{5,6,7,8},{9,10,11,12},{13,14,15,16}},y[N],i;

fun(x,y);

for(i=0;i<N;i++)printf(\\(A)

A. -3,-1,1,3,

B. -12,-3,0,0,

C. 0,1,2,3,

D. -3,-3,-3,-3,

解析:本题中由fun函数可知,b[0]=a[0][0]-a[0][3]=1-4=-3,b[1]=a[1][1]-[1][2]=6-7=-1,b[2]=a[2][2]-[2][1]=11-10=1,b[3]=a[3][3]-[3][1]=16-13=3。所以主函数中打印y数组元素的值为A选项。

9.有如下程序

#include

int * sum(int data)

{

static int init = 0;

init += data;

return &init;

}

main()

{

int i, *p;

for (i=1; i<=4; i++) sum(i);

p = sum(0);

printf(\\(A)

A. 10

B. 0

C. 1

D. 15

解析:静态变量在定义时的初始化只运行一次,并且其值在程序运行过程中一直存在,所以函数sum()的作用是用静态变量init累加所有的调用sum()函数时传入的参数值。for循环中传入的参数为1,2,3,4,每次的计算结果为1,3,6,10。再次调用函数sun(0)时返回值为10,答案选A)。

10.在C语言中,只有在使用时才占用内存单元的变量的是( )。(A)

A. auto和register

B. extern和register

C. auto和static

D. static和register

解析:C语言中,动态存储区域中存放的变量在使用时才分配内存空间。auto变量的存储单元是分配在内存的动态存储区中,每当进入函数体时自动分配存储单元。register变量也是自动类变量。static说明的变量为静态变量,静态变量在内存的静态存储中占据着永久的存储单元,直至程序运行结束。extern说明的变量为外部变量,属于全局变量,全局变量在整个程序运行期间都占用内存空间。

11.在软件生产过程中,需求信息的来源是( )。(D)

A. 程序员

本文档预览:3600字符,共14952字符,源文件无水印,下载后包含无答案版和有答案版,查看完整word版点下载

剩余未完,查看全文
收藏
国家二级(C语言)机试模拟试卷497

推荐资源

客服

扫码添加客服微信

热线

官方客服

如遇问题,请联系客服为您解决

电话客服:

客服微信:pujinet

工作时间:9:00-18:00,节假日休息

公众号

扫码关注微信公众号