全国计算机二级C语言历年考试 - 真题1

发布时间 : 星期一 文章全国计算机二级C语言历年考试 - 真题1更新完毕开始阅读

func (f2(v1, v2), (v3, v4, v5), (v6, max(v7, v8))); A)3 B)4 C)5 D)8

(23)若有定义语句:double x[5]={1.0,2.0,3.0,4.0,5.0}, *p=x;则错误引用x 数组元素的是 ( )。

A)*p B)x[5] C)*(p+1) D)*x

(24)若有定义语句:char s[10]=\,则strlen(s)的值是()。 A)7 B)8 C)9 D)10

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

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

B)用户定义的函数中可以有多个return 语句,以便可以调用一次返回多个函数值 C)用户定义的函数中若没有return 语句,则应当定义函数为void 类型 二级C 语言程序设计试卷 第 3 页(共9 页) D)函数的return 语句中可以没有表达式 (26)以下关于宏的叙述中正确的是( )。 A)宏名必须用大写字母表示

B)宏定义必须位于源程序中所有语句之前 C)宏替换没有数据类型限制 D)宏调用比函数调用耗费时间 (27)有以下程序 #include main()

{ int i, j;

for(i=3; i>=l; i--)

{ for(j=1; j<=2; j++) printf(\printf(\} }

程序的运行结果是( )。 A)2 3 4 B)4 3 2 3 4 5 5 4 3 C)2 3 D)4 5 3 4 3 4 4 5 2 3

(28)有以下程序 #include main()

{ int x=l, y=2, z=3; if(x>y)

if(y

程序的运行结果是( )。

A)331 B)41 C)2 D)1 (29)有以下程序 # include main() { int i=5; do

{ if (i%3=1) if (i%5==2)

{ printf(\i++;

} while(i!=0); printf(\}

二级C 语言程序设计试卷 第 4 页(共9 页) 程序的运行结果是( )。

A)*7 B)*3*5 C)*5 D)*2*6 (30)有以下程序 #include int fun(int a,int b) { if(b==0) return a;

else return(fun(--a,--b)); }

main()

{ printf(\程序的运行结果是( )。 A)1 B)2 C)3 D)4 (31)有以下程序 #include #include int fun(int n) { int *p;

p=(int*)malloc(sizeof(int)); *p=n; return *p; }

main() { int a;

a = fun(10); printf(\}

程序的运行结果是( )。 A)0 B)10 C)20 D)出错 (32)有以下程序 #include void fun(int a, int b) { int t;

t=a; a=b; b=t; }

main()

{ int c[10]={1,2,3,4,5,6,7,8,9,0), i; for (i=0; i<10; i+=2) fun(c[i], c[i+l]); for (i=0; i<10; i++) printf(\printf(\}

程序的运行结果是( )。

A)l,2,3,4,5,6,7,8,9,0, B)2,l,4,3,6,5,8,7,0,9, C)0,9,8,7,6,5,4,3,2,1, D) 0,1,2,3,4,5,6,7,8,9, (33)有以下程序 #include struct st

二级C 语言程序设计试卷 第 5 页(共9 页) { int x, y;) data[2]={l,10,2,20}; main()

{ struct st *p=data;

printf(\}

程序的运行结果是( )。

A)10,1 B)20,1 C)10,2 D)20,2 (34)有以下程序 #include

void fun(int a[], int n) { int i, t;

for(i=0; i

main()

{ int k[10]={1,2,3,4,5,6,7,8,9,10}, i; fun(k,5);

for(i=2; i<8; i++) printf(\printf(\}

程序的运行结果是( )。

A)345678 B)876543 C)1098765 D)321678 (35)有以下程序 #include #define N 4

void fun(int a[][N], int b[]) { int i;

for(i=0; i

main()

{ int x[][N]={{1,2,3),{4),{5,6,7,8),{9,10}},y[N], i; fun(x,y);

for (i=0; i

程序的运行结果是( )。

A)l,2,3,4, B)1,0,7,0, C)1,4,5,9, D)3,4,8,10, (36)有以下程序 #include

int fun(int (*s)[4],int n, int k) { int m, i; m=s[0][k];

for(i=l; im) m=s[i][k]; return m; }

二级C 语言程序设计试卷 第 6 页(共9 页) main()

{ int a[4][4]={{1,2,3,4),{11,12,13,14},{2l,22,23,24},{31,32,33,34}}; printf(\}

程序的运行结果是( )。 A)4 B)34 C)31 D)32 (37)有以下程序 #include main()

{ struct STU { char name[9]; char sex; double score[2]; }; struct STU a={\b=a;

printf(\}

程序的运行结果是( )。

A)Qian,f,95,92 B)Qian,m,85,90 C)Zhao,f,95,92 D)Zhao,m,85,90 (38)假定已建立以下链表结构,且指针p 和q 已指向如图所示的结点: head a b c data next ↑p ↑q

则以下选项中可将q 所指结点从链表中删除并释放该结点的语句组是( )。 A)(*p).next=(*q).next; free(p); B)p=q->next; free(q); C)p=q; free(q); D)p->next=q->next; free(q); (39)有以下程序 #include main()

{ char a=4;

printf(\

联系合同范文客服:xxxxx#qq.com(#替换为@)