湖南省对口高考C语言试题含答案.docx

上传人:b****3 文档编号:10440671 上传时间:2023-05-25 格式:DOCX 页数:11 大小:17.73KB
下载 相关 举报
湖南省对口高考C语言试题含答案.docx_第1页
第1页 / 共11页
湖南省对口高考C语言试题含答案.docx_第2页
第2页 / 共11页
湖南省对口高考C语言试题含答案.docx_第3页
第3页 / 共11页
湖南省对口高考C语言试题含答案.docx_第4页
第4页 / 共11页
湖南省对口高考C语言试题含答案.docx_第5页
第5页 / 共11页
湖南省对口高考C语言试题含答案.docx_第6页
第6页 / 共11页
湖南省对口高考C语言试题含答案.docx_第7页
第7页 / 共11页
湖南省对口高考C语言试题含答案.docx_第8页
第8页 / 共11页
湖南省对口高考C语言试题含答案.docx_第9页
第9页 / 共11页
湖南省对口高考C语言试题含答案.docx_第10页
第10页 / 共11页
湖南省对口高考C语言试题含答案.docx_第11页
第11页 / 共11页
亲,该文档总共11页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

湖南省对口高考C语言试题含答案.docx

《湖南省对口高考C语言试题含答案.docx》由会员分享,可在线阅读,更多相关《湖南省对口高考C语言试题含答案.docx(11页珍藏版)》请在冰点文库上搜索。

湖南省对口高考C语言试题含答案.docx

湖南省对口高考C语言试题含答案

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

一、单选题(在本题的每一小题的备选答案中,只有一个答案是正确的,本大题共3小题,每小题5分,共15分)

2018年20.若“inta=12;”,执行“a/=a+8;”后,a的值是

2018年21.若“inta=5,b;”,执行“b=a>>2;”后,b的值是

2018年22.若“chara[6]="abcde";”,执行“printf("%d",strlen(a));”后,输出的结果是

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

2018年30.入夏标志着春夏季节完成转换,气候学上入夏的标准是必须要连续5天日平均气温达到22℃或以上,则这连续5天中的第一天为入夏日。

函数fun的功能是判断5月份是否入夏并输出有关信息,若入夏就返回是哪天,否则返回-1。

请补全下列代码。

#include<>

intfun(inta[],intn){/*a存放某月的每日气温值,n存放的是此月的天数*/

inti,c=0;

for(i=0;i

if(①a[i]>=22){

c++;

if(c>=5)②returni+1-c;或者returni-4

else③continue;

}

④c=0;

}

return-1;

}

intmain()

{

intt[31]={20,21,22,22,19,18,18,19,22,23,

22,21,20,21,24,22,25,24,23,

21,23,22,21,22,25,26,30,28,27,28}

intd;

d=fun(t,31);

if(d==-1)

printf(“Notinsummer\n”)

else

printf(“5-%dinsummer\n”,d+1);

return0;

}

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

2018年32.阅读程序,写出运行结果(每空5分,共25分)

(1)下列程序的运行结果是①gcd=7

#include<>

intmain(){

inta=14,b=35,c;

if(a

{c=a;a=b;b=c;}

c=a%b;

while(c!

=0)

{a=b;b=c;c=a%b;}

printf("gcd=%d\n",b);

return0;

}

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

#include<>

intmain()

{

inta[20],i,m=10,k=8;

for(i=0;m>0;i++)

{

a[i]=m%k;

}

for(i--;i>=0;i--)

printf("%d\n",a[i]);

return0;

}

(3)下列程序的运行结果是③result=2018

#include<>

intmain(){

charstr[50]="welcome2018";

inti,n=0;

for(i=0;str[i]!

='\0';i++)

if('0'<=str[i]&&str[i]<='9')

n=n*10+str[i]-'0';

printf("result=%d\n",n);

return0;

}

(4)下列程序的运行结果是④120

#include<>

intf(n)

{if(n==1||n==0)

return1;

return(n*f(n-1));

i=45678

t=w[8]=98765

j=n-2=7

j--6

j--5

j--4

j--3

j--2

j--1

j--0

w[j+1]=w]j]

w[8]=w[7]=87654

w[7]=w[6]=76543

w[6]=w[5]=65432

w[5]=w[4]=54321

w[4]=w[3]=43219

w[3]=w[2]=32198

w[2]=w[1]=21987

w[1]=w[0]=19876

w[0]=t=98765

}

intmain(){

printf("%d",f(5));

return0;

}

(5)下列程序的运行结果是⑤567891234

#include<>

voidfun(int*w,intm,intn){

inti,j,t;

for(i=m;i

{

t=w[n-1];

for(j=n-2;j>=0;j--)

w[j+1]=w[j];

w[0]=t;

}

}

intmain(){

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

fun(a,4,9);

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

printf("%4d",a[i]);

return0;

}

2018年33.程序填空,按照题目要求,将正内容填入各题卡相应位置,使程序完整。

(每空5分,共25分)

(1)下列程序的功能是把文件A的内容追加到文件B中。

例如文件A为“I’mten”,文件B为“I’mastudent”,追加之后,文件B的内容为“I’mastudent!

I’mten”。

#include<>

Intmain(){

①FILE*fp1,*fp2;

charch;

if((fp1=fopen(“”,”r”)!

=NULL){

if((fp2=fopen(“B.txt”,”a”))!

=NULL){

while((ch=fgetc(fp1))!

=EOF)

②fputc(ch,fp2);

fclose(fp2);

}

else{

printf(“fileBcannotbeopened\n”)

③fclose(fp1);

exit(0)

}

}

else{

printf(“fileAcannotbeopened\n”)

exit(0);

}

return0;

}

(2)下列程序中函数f的功能是用选择排序法对一个数组中数据按升序进行排序,

Voidf(inta[],intN){/*a为待排序数组N为数据元素个数*/

inti,j,p,t;

for(i=0;i

p=i;

for(④j=i+1;j

if(a[p]>a[j])

⑤p=j;

if(p!

=i){

t=a[i];a[i]=a[p];a[p]=t

}

}

}

2018年34.阅读程序,修改程序中的错误,不得增行或删行,也不得更改程序结构。

请在答题卡中指出错误代码所在的行号,并给出该行修改后的程序代码。

(每空5分,共25分)

(1)下列程序中,函数fun的功能是;根据形参m,计算如下公式的值。

y=1+1/(2×2)+1/(3×3)+1/(4×4)+⋯+1/(m×m)。

以下程序只允许修改三行

L1#include<>

L2voidfun(intcn)L2改为:

doublefun(intm)

L3{

L4doubley=

L5inti;

L6for(i=2;i

for(i=2;i<=m,i++)

L7y+=I/(I+I);L7改为:

y+=(i*i);

L8return(y);

L9}

L10intmain()

L11{

L12intn=5;

L13printf(“\nTheresultis%1f\n”,fun(n));

L14return0;

(2)下列程序的功能是用折半查找法来查找一个输入的数是否在一个已经排好序的数组中,如果存在就返回所在位置的下标,如果不存在就返回“Notfound”

以下程序只允许修改两行。

L1#include<>

L2#defineN5

L3intfun(inta[],intm)

L4{

L5intlow=0,high=N-1,mid;

L6while(low<=hight){

L7mid=high-low;L7改为:

mid=(high-low)/2;

L8if(m

L9high=mid-1;

L10elseif(m>a[mid])

L11low=mid+1;

L12else

L13mid=m;L13改为:

returnmid;

L14}

L15return(-1);

L16}

L17intmain()

L18{

L19inti,a[N]={7,9,13,24,67},k,m;

L20scanf(“%d”,&m);

L21k=fun(a,m);

L22if(k>=0)

L23printf(“m=%d,index=%d\n”,m,k);

L24else

L25printf(“Notbefound!

\n”);

L26return0;

L27}

五、程序设计题(本大题25分,每空5分)

2018年35.下列程序的主函数中,通过函数调用把N名学生的成绩放入一个带头节点的链表中,h指向链表的头节点。

函数fun的功能是:

找出N名学生中的最高分并返回,请补充程序。

#include<>

#defineN8

structslist{

ints;

①structslist*next;

};

typedefstructslistSTREC;

intfun(STREC*h){

intmax=h->s;

while(②h!

=NULL){

if(maxs)max=h->s;

③h=;

}

printf(“%d”,max);

returnmax;

}

STREC*creat(int*s){

STREC*h,*p,*q;/*h表示链表的头部*/

inti=0;

h=p=(STREC*)malloc(sizeof(STREC));

p->s=0;

while(i

q=(STREC*)malloc(sizeof(STREC));

p->s=s[i++];

p->next=q;

④p=q;

}

p->next=NULL;

returnh;

}

intmain(){

ints[N]={85,76,69,85,91,72,64,87},max;

STREC*head;

⑤head=creat(s);

max=fun(head);

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

return0;

}

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 高等教育 > 军事

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2