当前位置:首页 > 湖南省历界对口高考C语言真题(答案)
main( ) { int i;
for(i=0;i<2;i++) fun( ); }
4、#include
{ int a=12,b=0,n=0;
do
{ b+=2;a-=2+b; n++;
} while(a>=0); printf(“%d”,n); }
5、#include
{ int n=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]); } 二、程序填空题
3 340 1、任意输入平面一点坐标(x,y),求该点到原点(0,0)的距离。 #include
float y; }NODE; main( ) { NODE *p;
p= (NODE *)malloc(sizeof(NODE)) ; scanf(“%f,%f”,&p->x,&p->y);
printf(“%5.1f”,sqrt(p->x*p->x+p->y*p->y)); free(p) ; }
2、下列给定程序中,函数fun( )的功能是:从N个字符串中找出最长的那个串,并将其地址作为函数值返回。
#include
5
#define N 4 #define M 50
char *fun(char (*q)[M]) { int i;char *p; p=*q ;
for(i=0;i if(strlen(p)< strlen(*(q+i)) ) p=*(q+i) ; return p; } main( ) { char str[N][M]={“pingpong”,”basketball”,field hockey”,”softball”}; char * longest; int i; longest=fun(str); printf(“The longest string:\\n”); puts(longest); } 3、下列程序定义了3×3的二维数组,并在主函数中自动赋值;函数fun的功能是使二维数组的上三角元素的值全部置0。 调用函数前 调用函数后 1 2 3 1 0 0 2 4 6 2 4 0 3 6 9 3 6 9 #include void fun(int n,int a[ ][3]); main( ) { int a[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(“the result:\\n”); for(i=0;i<3;i++) { for(j=0;j<3;j++) printf(“M”,a[i][j]); printf(“\\n”); } } void fun(int n,int a[3][3]) { int i,j; for(i=0;i for(j=i+1; j 6 三、程序改错题,不得增行或删行。 1、下列程序的功能是求分数序列: 8955342113,-,,-,??的前8项之和。程序中有2553421138处错误,请标记并改正。 #include float a=144,b=89,s=0,t; for(i=1;i<=8;i++) { s+=a/b; { s+=flag*b/(a-b); flag=-flag; t=b;a=a-b;a=t; t=b;b=a-b;a=t; } printf(“%5.1f”,s); } 2、下列程序的功能是采用简单插入的排序方法,随机产生10个整数,按从小到大的顺序排列。程序中有2处错误,请标记并改正。 #include for(j=i-1;j>=1;j--) if(a[0] a[j-1]=a[j]; a[j+1]=a[j]; else continue; else break; a[j+1]=a[0]; } for(i=1;i<11;i++) printf(“%d ”,a[i]); } 四、程序设计题 1、有一辆在高速公路上行驶的汽车,司机在某一时刻看到里程表显示的数值为95859公里(95859为回文数,回文数是指正读反读均一样的数),7小时后,里程表上又出现了一个回文数。编程求出此回文数和汽车时速?(注:高速公路限速60公里以上,汽车的里程表为5位数) 2、弦数是指平方值等于某两个正整数平方之和的正整数,如:32+42=52,因此5为弦数。编程输出10到100之内的所有弦数及弦数的数量。 7 2009年真题 一、程序分析题 1、#include { char name[10]; int age,sex; }; printf(“%d”,sizeof(struct stu)); } 2、#include printf(“%c,%d\\n”,x,~x); } 3、#include { double x=5.14; int a=(int)floor(x); int b=(int)pow(floor(x),3); printf(“%d,%d”,a,b); } 4、#include { char **p,*t[]={“compute”,”phone”,”mp3”}; for(p=t+2;p>=t;p--) printf(“%c ”,*(*p+1)) } 5、#include for(;arr[i]<=10;i+=2) printf(“%d ”,arr[i]); } main( ) { int arr[]={2,4,6,8,10,12}; f(arr+1); } 二、程序填空题 1、以下程序的功能是:从3个红球队、6个白球、5个蓝球中任意取出8个球,且其上至少有一个白球,输出所有可能的方案。 #include 8 14 D,-69 5,125 p h o 48
共分享92篇相关文档