2006年4月-2012年9月全国计算机等级考试二级C语言笔试真题及答案(打印版)

38、有以下函数

#include <sthio.h> struct stu

{int mun; char name[10]; int age;};

33、有以下函数 void fun(double a[], int *n)

#include <sthio.h> { }

void func(int n) 以下叙述中正确的是

{int i; A、调用fun函数时只有数组执行按值传

for(i=0;i<=n;i++) printf(“*”); 送,其他实参和形参之间执行按地址传送

B、形参a和n都是指针变量

C、形参a是一个数组名,n是指针变量

D、调用fun函数时将把double型实参数

组元素一一对应地传送给形参a数组

27、有以下程序

#include <sthio.h>

main()

{int a,b,k,m,*p1,*p2;

k=1,m=8;

p1=&k,p2=&m;

a=/*p1-m; b=*p1+*p2+6;

printf(“%d ”,a);

printf(“%d\n”,b);

}

编译时编译器提示错误信息,你认为出错

的语句是

A、a=/*p1-m B、b=*p1+*p2+6

C、k=1,m=8; D、p1=&k,p2=&m;

28、以下选项中有语法错误的是

A char *str[ ]={“guest”}; B、char str[10 ]={“guest”};

C、char *str[3] *str[1]={“guest”};

D、char

str[3][10];str[1]={“guest”};

29、avg函数的功能是求整型数组中的前

若干个元素的平均值,设数组元素个数最

多不超过10,则下列函数说明语句错误的

A、int avg(int *a,int n);

B、int avg(int a[10],int n);

C、int avg(int a,int n) ;

D、int avg(int a[],int n);

30、有以下函数

#include <sthio.h>

#include <string.h>

main(){ printf(“%d\n”,strren”ATS

\n012\1”) );}

程序运行后的输出结果是

A 3 B 8 C 4 D 9

31、有以下函数

#include <sthio.h>

main()

{ char a[20],b[20],c[20];

scanf(”%s%s”,a,b);

get(c);

printf(”%s%s\n”,a,b,c);

}

程序运行时从第一行开始输入 this is a

cat!<回车>,则输出结果是

A thisisacat! B this is a

C thisis a cat! D thisisa cat!

32、有以下函数

#include <sthio.h>

void fun(char c)

{if(c>’x’) fun(c-1);

printf (“%c”,c);

}

main()

{fun”z”;}

程序运行输出结果是

A xyz B wxyz C zyxw D zyx

printf(“#”); main() { func(3); printf(“????”); func(4); printf(“\n”); } 程序运行输出结果是 A ****#????***# B ***#????*****# C **#????*****# D ****#????*****# 34、有以下函数 #include <sthio.h> void fun(int *s) {staic int j=0; do {s[j]=s[j]+s[j+1];} wihle(++j<2); } main() {int k,a[10]={1,2,3,4,5}; for(K+1;k<3;k++) fun(a); for(K+1;k<5;k++) printf(“%d”,a[k]);

printf(“\n”); } 程序运行输出结果是 A 12345 B 23445 C 34756 D 35745 35、有以下函数 #include <sthio.h> #define S(x) (x)*x*2 main() {int k=5,j=2; printf(“%d,”,S[k+j]); printf(“%d\n”,S(k-j))); } 程序运行输出结果是 A 98,18 B 39,11 C39,18 D 98,11 36、有以下函数 #include <sthio.h> void exch(int t[ ]) {t[0]=t[5];} {int x[10]={1,2,3,4,5,6,7,8,9,10},i=0; while(i<=4) {exch(&x[i])’i++;} for(i=0;i<5;i++) printf(“%d”,x[i]); printf(“\n”); } 程序运行输出结果是 A 2 4 6 8 10 B 1 3 5 7 9 C 1 2 3 4 5 D 6 7 8 9 10 37、设有以下程序段 Struct MP3 {char name[20]; char color; float price; }std,*ptr; ptr=& std; 若要引用结构体变量std中的color成员,写法错误的是 A std.color B ptr-> color C std-> color D (*ptr) .color

2006年4月-2012年9月全国计算机等级考试二级C语言笔试真题及答案(打印版)

void fun(struct stu *p)

{ printf(“%s\n”,p->name);} mian()

{ struct stu

x[3]={{01,”zhang”,20},{02,”wang”,19},{03,”zhao”,18}}; fun(x+2); }

程序运行输出结果是

A zhang B zhao C wang D 19 39、有以下函数

#include <sthio.h> mian()

{int a=12,c; c=(a<<2)<<1;

printf(“%d\n”,c): }

程序运行输出结果是

A 3 B 50 C 2 D 96 40、以下函数不能用于向文件写入数据的是

A ftell B fwrite C fputc D fprintf 二、填空题

1、将长度为n的顺序存储在线性表中删除一个元素,最坏情况下需要移动表中的元素个数为( )。 2、设循环队列的存储空间为Q(1:3),初始状态为front=rear=30。现经过一系列入队与退队运算后,front=16,rear=15,则循环队列中有( )个元素。 3、数据库管理系统提供的数据语言中,负责数据的增、删、改和查询的是( )。 4、在将E-R图转换到关系模式时,实体和联系都可以表示成( )。

5、常见的软件工程方法有结构化方法和面向对象方法,类、继承以及多态性等概念属于( )。

6、设变量a和b已定义为int类型,若要通过scanf(”a=%d,b=%d”,&a,&b);语句分别给a和b输入1和2,则正确的数据输入内容是( )。

7、以下程序的输出结果是( )。 #include <sthio.h> mian()

{ int a=37;

a+=a%=9; printf(“%d\n”,a); }

8、设a、b、c都是整型变量,如果a的值为1,b的值为2,则执行c=a++||b++;语句后,变量b的值是( ). 9、有以下程序段 s=1.0;

for(k=1,k<=n;k++) s=s+1.0(k*(k+1)); printf(“%f\n”,s);

请填空,使以下程序段的功能与上面的程序段完全相同。 s=1.0; k=1; while( )

{ s=s+1.0(k*(k+1)); k=k+1;}

2006年4月 2012年9月全国计算机等级考试二级C语言笔试真题及答案(打印版)相关文档

最新文档

返回顶部