湖南c语言高考试卷及答案,湖南省对口高中高考C语言试卷试题含答案(14页)-原创力文档...

2019 年湖南省对口高考计算机C 语言试题

一、单选题(在本题的每一小题的备选答案中,只有一个答案是正确

的,本大题共

3 小题,每小题

5 分,共 15 分)

2019

年 20.

已知“ int w=1,x=2,y=3,z=4; ”,则表达式“ w>xw:z>yz:x”的值是

(

)

A. 1

B. 2

C. 3

D. 4

2019

年 21.

若有定义语句“ int a[3][5]; ”,按内存中的数据存放顺序,

a 数组的第

10 个元素

是(

)

A. a[1][4]

B. a[1][3]

C. a[2][3]

D. a[2][4]

2019

年 22.

已知“ int a=1,b=2,c=3,x;”与“ x=(a^b)&c; ”,则 x 的值为

(

)

A. 0

B. 1

C. 2

D. 3

三、综合应用题(每小题20 分,每空 5 分,共 20 分)

2019 年 30.下面程序功能是统计 5 个同学成绩( 1~100 间的整数)中低于平均成绩的人数并输出,请补全以下代码。

#include “”

main()

{ int i,count=0;

①int score[5];

float ave=;

printf( “input 5 scores:\n

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

{

”);

scanf("%d",&score[i])

;

ave+=score[i];

}

ave/=5

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

if( ④score[i]

printf( “%2d”,count);

}

四、程序分析题(本大题共3 小题,共 75 分)

2019 年 32. 阅读程序,写出运行结果(每空

5 分,共 25 分)

(1)下列程序的运行结果是

① 0,1

#include “”

main()

{int i =0;

do printf( “%d,”,i);

while(i++);

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

}

( 2)下列程序的运行结果是

② 7

#include “”

int fun(char *s) {

char *t=s;

while(*t++);

return t-s;

}

main(){

char t[8]= ”123456 ”;

printf( “%d\n ”,fun(t));

}

( 3)下列程序的运行结果是

③ 56

#include “”

int fun(char s[]) {

int n=0;

while(*s<= ’9’&&*s>= ’0’)

{

n=10*n+*s- ‘0’;

s++;

}

return n;

}

main() {

printf( “%d\n ”,fun( “056a0”));

}

( 4)下列程序的运行结果是④f(n)=2

#include “”

int f(int n) {

if(n<=2)

return 1;

else

return f(n-1)+f(n-2);

}

main() {

int n=5;

printf( “f(n)=%d\n ”,f(3));

}

( 5)下列程序的运行结果是⑤the result is 2

#include <>

int f(char *s,char *t) {

int n=0,num=0; char *p,*r;

while(*s)

{

p=s;r=t;

while(*r)

if(*r==*p)

{r++;p++;}

else

break;

if(*r== ’\0 ’)

num+=1;

n++;s++;

}

return num;

}

main()

{

printf( “the result is %d\n ”,f(“aabdabc”,”ab”));

}

2019 年 33.

程序填空。按照题目要求,将正确内容填入答题卡相应位置,使程序完整。

(每

空5分,共

25 分)

下列程序的功能是求整数

n( 1~10)的阶乘的位数,例如:

5!=120 ,输出结果是 3。

#include “”

#include ""

#include ""

#include

“”

#include ""

#include ""

int fun(int n) {

int fun(int n) {

int fun(int n) {

int i,d=0;

int i,d=0;

int i,d=0;

double s= ;

double s=0 ;

double s=0 ;

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

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

s+=log10(i)

;

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

s+=log10(i) ;

d=s

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值