好文档 - 专业文书写作范文服务资料分享网站

2017年9月全国计算机等级考试二级c语言笔试试题(含参考答案)

天下 分享 时间: 加入收藏 我要投稿 点赞

{ int i=2,p;

p=f(i,i+1); printf(\}

int f(a,b) int a,b; { int c;

if(a>b) c=1; else

if(a==b) c=0; else c=-1; return(c); }

A) -1 B) 0 C) 1 请选出以下程序段的输出结果

#include

#define MIN(x,y) (x)<(y)? (x):(y) main()

{ int i,j,k; i=10; j=15; k=10*MIN(i,j); printf(\}

A) 15 B) 100 C) 10 请选出以下程序段的输出结果

#include main()

{ char sl[10], s2[10], s3[10], s4[10]; scanf(\puts(s1); puts(s2); puts(s3); puts(s4); }

输入数据如下:(此处代表回车符)

aaaa bbbb cccc dddd

A) aaaa B) aaaa C) aaaa bbbb bbbb bbbb cccc cccc cccc dddd dddd cccc dddd dddd eeee 请选出以下程序的输出结果

#include fun(s, n1, n2) int *s, n1, n2; { int i, j, t;

D) 2 D) 150 D) aaaa bbbb (46) (47) (48) i=n1; j=n2; while(i

{ t= *(s+i); *(s+i)= *(s+j); *(s+j)=t; i++; j--; }

}

main()

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

fun(p,0,3); fun(p,4,9); fun(p,0,9);

for(i=0; i<10; i++) printf(\printf(\}

A) 0 9 8 7 6 5 4 3 2 1 B) 4 3 2 1 0 9 8 7 6 5 C) 5 6 7 8 9 0 1 2 3 4 D) 0 9 8 7 6 5 1 2 3 4 (49) 请选出以下程序的输出结果

#include main()

{ int a[ ]={ 1,2,3,4 },i;

int x=0;

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

{ sub(a,x); printf(\printf(\}

sub(s,y) int *s, y;

{ static int t=3;

y=s[t]; t--; }

A) 1 2 3 4 B) 4 3 2 1 C) 0 0 0 0 D) 4 4 4 4 (50) 下面程序的输出结果为

struct st { int x; int *y; } *p;

int dt[4]={10,20,30,40};

struct st aa[4]={ 50,&dt[0],60,&dt[1],

70,&dt[2],80,&dt[3] };

main() { p=aa;

printf(\printf(\printf(\}

A) 10 B) 50 C) 51 D) 60

20 60 60 70 20 21 21 31

二、填空题(每空2分,共40分)

请将每空的正确答案写在答题卡上【1】-【20】序号的横线上,答在试卷上不得分。 (1) 十进制数123用八位二进制表示为 【1】 。

(2) 70年代末开始出现16位微处理器,标志着微型计算机进入了第三代;80年代起使用 【2】

位微处理器,标志微型计算机进入了第四代。 (3) 通用计算机操作系统的功能和任务是:作业管理、文件管理、外设管理、CPU管理和 【3】

管理。 (4) PC-DOS的两个隐含文件是:IBMBIO.COM(输入输出程序)与 【4】 (磁盘操作管理程序)。 (5) FoxBASE和dBASE有两种变量:即内存变量和 【5】 变量 。 (6) 设有如下程序段:

int i=0, sum=1; do

{ sum+=i++;} while(i<6);

printf(\

上述程序段的输出结果是 【6】 。

(7) 阅读下列程序:

#include main()

{ int i, j, row, column,m;

static int array[3][3]={{100,200,300},

{28,72,-30}, {-850,2,6} };

m=array[0][0];

for (i=0; i<3; i++) for (j=0; j<3; i++)

if (array[i][j]

{ m=array[i][j]; row=i; column=j;}

printf(\}

上述程序的输出结果是 【7】 。 (8) 设a、b、c为整型数, 且a=2、b=3、c=4, 则执行完以下语句:

a*=16+(b++)-(++c);

后,a的值是 【8】 。 (9) 下面程序的输出结果是 【9】 。 #include main()

{ int a=3, b=2, c=1; c-=++b; b*=a+c;

{ int b=5, c=12; c/=b*2; a-=c;

printf( '%d,%d,%d,\ a+=--c; }

printf( '%d,%d,%d,\ }

(10) 设有如下程序:

#include main(argc,argv)

int argc; char *argv[ ];

{ while( --argc>0) printf(\printf(\}

假定上述程序经编译和连接后生成可执行文件PROG.EXE,如果在DOS提示符下键入PROG

ABCD EFGH IJKL ,则输出结果为 【10】 。 (11) 阅读下列程序:

#include #define MAX_COUNT 4 void fun(); main()

{ int count;

for (count=1; count<=MAX_COUNT; count++) fun(); }

void fun()

{ static int i;

i+=2; printf(\ }

上述程序的输出结果是 【11】 。 (12) 设有下列程序:

#include #include main() { int i;

char str[10], temp[10]; gets(temp);

for (i=0; i<4; i++) { gets(str);

if (strcmp(temp,str)<0) strcpy(temp,str);

}

printf(\

}

上述程序运行后,如果从键盘上输入(在此代表回车符):

C++ BASIC QuickC Ada Pascal

则程序的输出结果是 【12】 。

(13) 设有如下程序:

#include main(argc,argv)

int argc; char *argv[ ]; { FILE *fp; void fc(); int i=1;

while( --argc>0)

if((fp=fopen(argv[i++],\ { printf(\ exit(1); } else

{ fc(fp); fclose(fp); } }

void fc(ifp) FILE *ifp; { char c;

while((c=getc(ifp))!='#') putchar(c-32); }

上述程序经编译、连接后生成可执行文件名为cpy.exe。假定磁盘上有三个 文本文件,其文件名和内容分别为: 文件名 内容 a aaaa# b bbbb# c cccc# 如果在DOS下键入 cpy a b c 则程序输出 【13】 。

(14) 若输入3个整数3,2,1,则下面程序的输出结果是【14】 。 #include void sub( n,uu) int n, uu[ ]; { int t;

2017年9月全国计算机等级考试二级c语言笔试试题(含参考答案)

{inti=2,p;p=f(i,i+1);printf(\}intf(a,b)inta,b;{intc;if(a>b)c=1;elseif(a==b)c=0;elsec=-1;return(c);}A)-1B)0
推荐度:
点击下载文档文档为doc格式
9ib4x2qjf71emx02sb8q8qp2012imx011h5
领取福利

微信扫码领取福利

微信扫码分享