云题海 - 专业文章范例文档资料分享平台

当前位置:首页 > 湖南省07-12年高考C语言真题

湖南省07-12年高考C语言真题

  • 62 次阅读
  • 3 次下载
  • 2026/4/27 8:01:44

C语言真题(2007-2012) 湖南省2007年

五、程序设计题(本大题共4题,共90分) 1、程序分析题。写出下列程序运行的结果。(每小题5分) (1)#include main()

{ int x=3;

do {printf(\%d\,x-=2); } while(!(--x)); }

运行结果是_____________________________ (2)#include main()

{int x=4,y=8,z; z=x<<2|y;

printf(\%d\,z); }

运行结果是_____________________________ (3)#include main()

{ char x=‵E‵,y=‵e‵; printf(\%c, \,x=32);

printf(\%c,\,(x--,++y));

printf(\%c\\n\,x==y?x+=32;y-=32); }

运行结果是_____________________________ (4)#include main()

{ int t=2; while(t<5) switch(t%2)

{ case 0:t++;printf(\#\);break; case 1:t+=2;printf(\*\); default:printf(\\\n\); } }

运行结果是_____________________________ (5)#include main()

{ char str1{50}=\Beijing 2008! \,*q=str1;

char str2[50]= \One World One Dream! \,*p=str2; while(*p!='\\0') p++;

while(*q!='\\0') P++=q++; *p=‵\\0‵;

printf(\%s\,str2); }

运行结果是_____________________________ (6)#include #include

main()

{ char s[]=\abcdefg\,t; int i=0,j=strlen(s)-1; while(i

{ t=s[j];s[j]=s[i];s[i]=t;i++;j--;}

puts(s); }

运行结果是_____________________________ 2、程序填空(每空5分,共30分)

(1)下面程序的功能是求1000以内的完数。所谓完数是指一个数的子因子之和等于这个数本身。例如:6是一个完数,因为6=1+2+3。

#include main()

{ int i,j,sum;

printf(\1000以内的完数有:\\n\); for(i=1;______________________;i++) { sum=0;

for(j=1;j

_________________________ sum+=j;

if(_________________) printf(\%d\\n\,i); } } (2)以下程序是统计一维数组arr中小于平均值的元素个数。 #include _______________ N 7

int fun(int s[],float aver) { int i,count=0; for(i=0;i

if(________________) count++; return count; }

main()

{ int i,arr[N]={87,34,56,78,90,66,88}; float aver=0;

for(i=0;i

printf(\统计结果为:%d\,_________________);

}

3、程序改错,不得增行或删行。(每小题10分,共20分) m(1)下面的程序是求

?n!,在fun()函数中存在2处

n?1错误,请标记并改正。 #include long fun(int x)

{ int m,n;long sum; for (m=1;m<=x;m++) { t=1;

for(n=1;n<=m;n++) t=m*n; sum+=t; }

return sum; }

main()

{ int num;

printf(\input a number: \); scanf(\%d\,#);

printf(\1!+2!+??+%d!=%ld\\n\,num,fun(num));

1

} (2)下列程序的功能是:从字符串str中,删除所有字母'C',不区分大小写。如:输入字符串\,删除后的字符串为\。在main()函数中有2处错误,请标记并改正。 main() { int t;

int a[]={12,21,2,34,87,65,43,25,765,11}; sort(a,10);

#include main()

{ char str[80]; int i=0,j=0;

printf(\\\n请输入字符串:\); gets(str);

while(str[i]!=‵\\0‵)

{ if(str([i]!=‵c‵||str[i]!=‵C‵) str[j]=str[i]; i++; }

str[j]=‵\\0';

printf(\\\n删除后的字符串:%s\,str); }

4、程序设计(10分)

已知一个数列从1项开始的前6项为:0,0,1,1,2,4,以后的各项都是其相邻的前3项之和,计算并输出该数列前20项之和。

选考题

【第二组:程序方向】

1、以下程序是从一个二进制文件中读出结构体数据,并将结构体数据输出在屏幕上。在main()函数中有3处错误,请标记并改正,不得增行或删行。 #include struct student { char name[10]; float score; }stu; main()

{ file * f;

if((f=fopen(\a.txt\,\r\))==NULL)

{ printf(\cannot open outfile\\n\);exit(0);} while(feof(f)) {

fread(stu,sizeof(struct student),1,f); printf(\%s,%.2f\\n\,stu.name,stu.score); }

fclose(f); }

2、下面程序的功能是:用选择法对10个数进行排序(由小到大)。请完成sort()函数。

void sort(int x[],int n) {

}

printf(\排序后的数是:\\n\ for(i=0;i<10;i++)

printf(\ }

湖南省2008年

六、程序分析题(本大题共3题,共75分) 1、程序分析题。(每小题5分,共25分) (1) #include

main()

{ char a=55; a=~a&055;

printf(\

}

运行结果是 . (2) #include

#define test(x,y) x+y main()

{ float c;

c=2*test(3.2,5.4)/2; printf(\}

运行结果是 .

(3) #include

void fun() { int x=1;

static int y=1;

printf(\ }

main() { int i;

for (i=0;i<2;i++) fun(); }

运行结果是 . (4) #include

main()

{ int a=12,b=0; do {

b+=2;a-=2+b; }while (a>=0); }

程序中循环体的执行次数是 . (5) #include

main()

{ int n=132,i=1,j,k,b[10]; while(n!=0)

{ j=n%6; b[i]=j; n=n/6; i=i+1;} for (k=i-1;k>0;k--) printf(\

2

程序的功能是 . 2、程序填空题(每空5分,共30分) (1)任意输入坐标平面上一点(x,y),求该点到原点(0,0)间的距离。

#include #include #include

Node { float x; float y; }Node; main( )

{ Node *p;

p= ; scanf(\

printf(\ ; }

(2) 下列给定程序中,函数fun()的功能是:从N个字符串中找出最长的那个串,并将其地址作为函数值返回。 #include #include #define N 4 #define M 50

char *fun(char(*q)[M]) {

int i; char *p;

; for(i=0; i

if (strlen(p)< ) ; return p; }

main( )

{ charstr[N][M]={ \

\

char *longest; int i; longest=fun(str);

printf(\puts(longest); }

3、程序改错,不得增行或删行(每小题10分,共20分) (1)下列程序的功能是求分数序列:89/55,-55/34,34/21,-21/13,13/8 …的前8项之和。程序中有2处错误,请标记并改正。

#include main()

{ int i,flag=1;

float a=144,b=89,s=0,t; for(i=1;i<=8;i++) { s=s+a/b;

flag=-flag; t=b;a=a-b;a=t; } printf(\}

(2)下列程序的功能是采用简单插入的排序方法,随机产生10个整数,按从小到大的顺序排列。在程序中有2处错误,请标

记并改正。

#include #include main()

{ int i,j,a[11]; for(i=1;i<11;i++) a[i]=rand(); for(i=2;i<11;i++) { a[0]=a[i]; for(j=i-1;j>=1;j--) if(a[0]

七、程序设计题(本大题共1题,共15分) 有一辆在高速公路上行驶的汽车,司机在某一时刻看到里程表显示的数值为95859公里(95859为回文数,回文数是指正读反读均一样的数),7小时后,里程表上又出现了一个回文数。编程求出此回文数和汽车时速?(注:高速公路限速60公里以上,汽车的里程表为5位数)

选考题:

[第二组:程序方向]

1、 程序填空(每空5分,共15分)

下列程序定义了3*3的二维数组,并在主函数中自动赋值;函数fun的功能是使二维数组的上三角元素的值全部置0。

调用函数前 调用函数后 1 2 3 1 0 0 2 4 6 2 4 0 3 6 9 3 6 9 #include

main() { int a[3][3],i,j; for(i=1;i<3;i++)

for(j=1;j<=3;j++) =i*j; fun(3,a);

printf(\for(i=0;i<3;i++) {for(j=1;j<3;j++) printf(\ printf(\ }

3

}

void fun (int n,int a[3][3]) { int i,j;

for(i=0;i

for(j=i+1;j< ;j++) a[i][j]=0;

}

2、 程序设计

弦数是指平方值等于某两个正整数平方之和的正整数,如:32+42=52,因此5为弦数。

编程输出10到100之内的所有弦数及弦数的数量。

湖南省2009年

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

30、阅读程序,写出运行结果。(每小题5分,共25分) (1)#include main()

{ struct stu{ char name[10];

int age,sex;

};

printf(\%d\,sizeof(struct stu));

}

(2) #include main() { int x=68;

printf(\%c,%d\,x,~x);

}

(3) #include #include

main()

{ double x=5.14; int a=(int)floor(x); int b=(int)pow(floor(x),3);

printf(\%d,%d\,a,b);

}

(4) #include

main()

{ char **p,*t[]={\computer\,\phone\,\mp4\}; for(p=t+2;p>=t;p--) printf(\%c \,*(*p+1));

}

(5) #include f(int arr[]) { int i=0; for(;arr[i]<=10;i+=2)

printf(\%d\,arr[i]);

} main()

{ int arr[]={2,4,6,8,10,12}; f(arr+1);

}

31、程序填空。请按题目要求,将正确的内容填入答题卡相应位置中,使程序完整(每空5分,共30分)

(1)以下程序的功能是:从3个红球、6个白球、5个蓝球中任意取出8个球,且其中至少有一个白球,输出所有可能的方案。 #include main() { int I,j,k; printf(“\\nRed White

Blue”);

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

for( ;j<=6;j++)

{ k= ;

if( )

printf(\%d,%d,%d\\n\,I,j,k); }

}

(2) 以下程序的功能是:求100以内最大的一对孪生素数之和,孪生素数是指两个素数之差为2。 #include

#include int isPrime(int i) { int j,r=0,k=sqrt(i); for(j=2;j<=k;j++)

{ if (i%j==0)

break; }

if (j>k) { r=1; }

}

4

搜索更多关于: 湖南省07-12年高考C语言真题 的文档
  • 收藏
  • 违规举报
  • 版权认领
下载文档10.00 元 加入VIP免费下载
推荐下载
本文作者:...

共分享92篇相关文档

文档简介:

C语言真题(2007-2012) 湖南省2007年 五、程序设计题(本大题共4题,共90分) 1、程序分析题。写出下列程序运行的结果。(每小题5分) (1)#include main() { int x=3; do {printf(\%d\,x-=2); } while(!(--x)); } 运行结果是_____________________________ (2)#include main() {int x=4,y=8,z; z=x<<2|y; printf(\%d\,z); } 运行结果是_____________________________ (3)#include m

× 游客快捷下载通道(下载后可以自由复制和排版)
单篇付费下载
限时特价:10 元/份 原价:20元
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信:fanwen365 QQ:370150219
Copyright © 云题海 All Rights Reserved. 苏ICP备16052595号-3 网站地图 客服QQ:370150219 邮箱:370150219@qq.com