湖南省历界对口高考C语言真题答案.docx
- 文档编号:12547934
- 上传时间:2023-04-20
- 格式:DOCX
- 页数:55
- 大小:42.53KB
湖南省历界对口高考C语言真题答案.docx
《湖南省历界对口高考C语言真题答案.docx》由会员分享,可在线阅读,更多相关《湖南省历界对口高考C语言真题答案.docx(55页珍藏版)》请在冰豆网上搜索。
湖南省历界对口高考C语言真题答案
历界高考C语言真题
2007年真题
一、程序分析题
1、#include<>
#*
eef
24
1-2
main()
{intx=3;
do
printf(“%d”,x-=2);
while(!
(--x));
}
2、#include<>
main()
{intx=4,y=8,z;
z=x<<2|y;
printf(“%d”,z);
}
3、#include<>
main()
{charx=’E’,y=’e’;
printf(“%c”,x+32);
printf(“%c”,(x--,y++));
printf(“%c\n”,x==yx+=32:
(y-=32));
}
4、#include<>
main()
{intt=2;
while(t<5)
switch(t%2)
{case0:
t++;printf(“#”);break;
case1:
t+=2;printf(“*”);
default:
printf(“\n”);
}
}
5、#include<>
main()
{charstr1[50]=”Beijing2008”,*q=str1;
charstr2[50]=”OneworldOneDream!
”,*p=str2;
while(*p!
=’\0’)p++;
OneworldOneDream!
Beijing2008
while(*q!
=’\0’)*p++=*q++;
*p=’\0’;
printf(“%s”,str2);
}
6#include<>
#include<>
main()
gfedcba
{chars[]=”abcdefg”,t;
inti=0,j=strlen(s)-1;
while(i {t=s[i],s[i]=s[j],a[j]=t;i++,j--;} puts(s); } 二、程序填空题 1、下面程序的功能是求1000以内的完数。 完数是指一个数的子因子之和等于这个数本身。 #include<> main() {inti,j,sum; for(i=1;i<1000;i++) {sum=0; for(j=1;j if(i%j==0) sum+=j; if(sum==i)printf(“%d\n”,i); } } 2、以下程序是统计一维数组arr中小于平均值的元素个数。 #include<> #defineN7 intfun(ints[],floataver) {inti,count=0; for(i=0;i if(s[i] count++; returncount; } main() {inti,arr[N]={87,34,5,78,90,66,88}; floataver=0; for(i=0;i aver+=arr[i]; aver=aver/N; printf(“统计结果为: %d”,fun(arr,aver); } 三、程序改错题,不得增行或删行。 1、下面的程序是求 ,在函数fun()中存在两处错误,请标记并改正。 #include<> longfun(intx) {intm,n,t; longsum;longsum=1; for(m=1;m<=x;m++) {t=1; for(n=1;n<=m;n++) t=m*n;t*=n; sum+=t; } returnsum; } main() {intnum; scanf(“%d”,&num); printf(“sum=%ld\n”,fun(num)); } 2、以下程序的功能是: 从字符串str中,删除所有字母c,不区分大小写。 如输入字符串”abcCdefcfCg”,删除后的字符串为”abdefg”。 程序有两错误,请标记并改正。 #include<> main() {charstr[81]; inti=0,j=0; gets(str); while(str[i]! =’\0’) {if(str[i]! =’c’||str[i]! =’C’){if(str[i]! =’c’&&str[i]! =’C’) str[j]=str[i];str[j++]=str[i]; i++; } str[j]=’\0’; printf(“%s”,str); } 3、以下程序从一个二进制文件中读出结构体数据,并将结构体数据输出在屏幕上。 程序中有三处错误,请标记并改正。 #include<> structstudent {charname[10]; floatscore; }stu; main() {file*f;{FILE*f; if((f=fopen(“”,”r”))==NULL) {printf(“cannotopenoutfile\n”); exit(0); } while(feof(f))while(! feof(f)) {fread(stu,sizeof(structstudent),1,f);{fread(&stu,sizeof(structstudent),1,f); printf(“%s,%.2f\n”,,; } fclose(f); } 四、程序设计题 1、已知一个数列从1项开始的前6项为: 0,0,1,1,2,4,以后的各项都是其相邻的前3项之和,计算并输出该数列前20项之和。 2、写一函数sort(intx[],intn)实现选择法排序(从小到大)。 2008年真题 一、程序分析题 1、#include<> 2122 8,10 main() {chara=55; a=~a&055; printf(“%x,%o”,a,a); } 2、#include<> #definetest(x,y)x+y main() {floatc; c=2*test,/2; printf(“”,c); } 3、#include<> voidfun() {intx=1; staticinty=1; printf(“%d%d”,++x,y++); } main() {inti; for(i=0;i<2;i++) fun(); } 4、#include<> main() 340 3 {inta=12,b=0,n=0; do {b+=2;a-=2+b; n++; }while(a>=0); printf(“%d”,n); } 5、#include<> main() {intn=132,i=1,j,k,b[10]; while(n! =0) {j=n%6;b[i]=j; n=n/6;i++; } for(k=i-1;k>0;k--) printf(“%d”,b[k]); } 二、程序填空题 1、任意输入平面一点坐标(x,y),求该点到原点(0,0)的距离。 #include<> #include<> #include<> typedefstructNODE {floatx; floaty; }NODE; main() {NODE*p; p=(NODE*)malloc(sizeof(NODE)); scanf(“%f,%f”,&p->x,&p->y); printf(“%”,sqrt(p->x*p->x+p->y*p->y)); free(p); } 2、下列给定程序中,函数fun()的功能是: 从N个字符串中找出最长的那个串,并将其地址作为函数值返回。 #include<> #include<> #defineN4 #defineM50 char*fun(char(*q)[M]) {inti;char*p; p=*q; for(i=0;i if(strlen(p) p=*(q+i); returnp; } main() {charstr[N][M]={“pingpong”,”basketball”,fieldhockey”,”softball”}; char*longest;inti; longest=fun(str); printf(“Thelongeststring: \n”); puts(longest); } 3、下列程序定义了3×3的二维数组,并在主函数中自动赋值;函数fun的功能是使二维数组的上三角元素的值全部置0。 调用函数前调用函数后 123100 246240 369369 #include<> voidfun(intn,inta[][3]); main() {inta[3][3],i,j; for(i=1;i<=3;i++) for(j=1;j<=3;j++) a[i-1][j-1]=i*j; fun(3,a); printf(“theresult: \n”); for(i=0;i<3;i++) {for(j=0;j<3;j++) printf(“%4d”,a[i][j]); printf(“\n”); } } voidfun(intn,inta[3][3]) {inti,j;
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 湖南省 对口 高考 语言 答案
![提示](https://static.bdocx.com/images/bang_tan.gif)