2018 年湖南省对口高考计算机C 语言试题
一、单选题(在本题的每一小题的备选答案中, 只有一个答案是正确的,本大题共 3 小题,每小题 5 分,共 15 分)
2018 年 20. 若“ int a=12;”,执行“ a/=a+8; ”后, a 的值是
2018 年 21. 若“ int a=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<>
int fun(int a[],int n){/*a存放某月的每日气温值,n
存放的是此月的天数 */
int i,c=0;
for(i=0;i
if(① a[i]>=22){
c++;
if(c>=5)② return i+1-c; 或者 return i-4
else③ continue;
}
④ c=0;
}
return -1;
}
int main()
{
int t[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}
int d;
d=fun(t,31);
if(d==-1)
printf(“Not in summern”)
else
printf(“5-%d in summer\n ” ,d+1) ;
return 0;
}
四、程序分析题(本大题共3 小题,共 75 分)
2018 年 32. 阅读程序,写出运行结果(每空
5 分,共 25 分)
(1)下列程序的运行结果是① gcd=7
#include <>
int main(){
int a=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);
return 0;
}
(2)下列方程的运行结果是②
#include <>
int main()
{
int a[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]);
return 0;
}
(3)下列程序的运行结果是③result=2018
#include<>
int main(){
char str[50]="welcome2018";
int i,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);
return 0;
}
(4) 下列程序的运行结果是④ 120
#include<>
int f(n)
{if(n==1||n==0)
return 1;
return(n*f(n-1));
}
int main(){
printf("%d",f(5));
return 0;
}
i= 4567
8
t=w[8]=987
5
j=n-2=7
(5 )下列程序的运行结果是 ⑤ 5 6 7 8 9 1 2 3 4
6
j--
j--
5
j--
4
#include<>
void fun(int *w,int m,int n){
int i,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;
}
}
int main(){
int i,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]);
return 0;
}
2018 年 33. 程序填空,按照题目要求,将正内容填入各题卡相应位置,
使程序完整。(每空 5 分,共 25 分)
1) 下列程序的功能是把文件 A 的内容追加到文件 B 中。例如文件
A为“ I ’m ten