安徽c语言省二级试题及答案,安徽省C语言二级试卷200106附答案.doc

2001年06月安徽省C语言试题及答案

一、语言基础填空(共20分,每题2分)

字符串”a\x44\\\nbcd\102a”的长度是__9___________。9

设变量定义

int x=4,y=5;

则表达式(++x<=y--)? ++x:y--的值为__6__________。6

设int a=8,b=7,c=6,x=1;执行语句

if(a>6)if(b>7)if(c>8) x=2;else x=3;

后x的值是______________。1

设x,y为int变量,则执行下列语句

x=0;y=1;

do{y+=x;

x--;

} while (y++>0);

后y的值是________________。1

(五)设 char str1[10]=”ABCDE”,str2[10]=”xyz”;

则执行下列语句

printf(“%d”,strlen(strcpy(str1,str2)));

后输出结果是________________。3

(六)设int x[]={1,2,3,4},y,*p=&x[1];

则执行下列语句

y=(*--p)++;

后y的值是________________。1

(七) 函数调用时,若形参和实参均为数组,其传递方式是_____。地址传递

(八)若有如下说明

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

且0=

(九)某C编译系统规定,int型数组占2个字节,则定义

struct {long num;

char name[20];

union {float x;

short y;

}xy;

}aa;

后,sizeof(aa)=______。28

(十)设FILE *fp;关闭fp对应文件的操作语句是_______。fclose(fp)

二、阅读下列程序,写出运行结果(共20分,每题4分)

#include “stdio,h"

main()

{int x=1,y=0,a=0,b=0;

switch(x)

{case 1: switch(y)

{case 0:a++;break;

case 1:b++;break;

}

case 2:a++;b++;break;

}

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

}

a=2,b=1

#include “stdio.h”

main()

{int x,y;

for(x=1,y=1;x<=100;x++)

{if(y>=15) break;

if(y%3= =1) {y+=3;continue;}

y-=5;

}

printf(“x=%d,y=%d\n”,x,y);

}

x=6,y=16

#include “stdio.h”

main()

{static int a[][3]={1,3,5,7,9,2,4,6,8};

int i,j,s1=0,s2=0;

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

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

{ if(i= =j) s1=s1+a[i][j];

if(i+j= =2)s2=s2+a[i][j];

}

printf(“%d\n%d\n”,s1,s2);

}

18

18

#include “stdio.h”

void s(n)

int n;

{static int i=1;

int j=1;

if(n>0)

{++i;j++;printf(“%d,%d\n”,i,j);

s(n-1);

}

}

main()

{int k=4;

s(k);

}

2,2

3,2

4,2

5,2

#include “stdio.h”

main()

{int a[5],I,*pa,*pb;

pa=pb=a;

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

{*pb=i;pb++;}

for (i=0;pa

{printf(“a[%d]=%d\n”,I,*pa);

pa++;

}

}

a[0]=0

a[1]=1

a[2]=2

a[3]=3

a[4]=4

三、阅读下列程序,在____处填上适当的语句使程序(或函数完整)(共18分,每空2分)

求两个正整数的最大公约数的函数fun( )

int fun(m,n)

int m,n

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值