ImageVerifierCode 换一换
格式:DOCX , 页数:55 ,大小:42.53KB ,
资源ID:12547934      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/12547934.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(湖南省历界对口高考C语言真题答案.docx)为本站会员(b****0)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

湖南省历界对口高考C语言真题答案.docx

1、湖南省历界对口高考C语言真题答案历界高考C语言真题2007年真题一、程序分析题1、#include #*eef241-2main( ) int x=3; do printf(“%d”,x-=2); while(!(-x);2、#include main( ) int x=4,y=8,z; z=x2|y; printf(“%d”,z);3、#include main( ) char x=E,y=e; printf(“%c”,x+32); printf(“%c”,(x-,y+); printf(“%cn”,x=yx+=32:(y-=32);4、#include main( ) int t=2; w

2、hile(t5) switch(t%2) case 0: t+;printf(“#”);break; case 1: t+=2;printf(“*”); default:printf(“n”);5、#include main( ) char str150=”Beijing 2008”,*q=str1; char str250=”One world One Dream!”,*p=str2; while(*p!=0) p+;One world One Dream!Beijing 2008 while(*q!=0) *p+=*q+; *p=0; printf(“%s”,str2); 6 #inclu

3、de #includemain( )gfedcba char s=”abcdefg”,t; int i=0,j=strlen(s)-1; while(ij) t=si,si=sj,aj=t;i+,j-;puts(s); 二、程序填空题1、下面程序的功能是求1000以内的完数。完数是指一个数的子因子之和等于这个数本身。 #include main( ) int i,j,sum;for(i=1; i1000 ;i+) sum=0; for(j=1;ji;j+) if(i%j=0) sum+=j; if( sum=i ) printf(“%dn”,i); 2、以下程序是统计一维数组arr中小于平均值

4、的元素个数。 #include #define N 7 int fun(int s,float aver) int i,count=0;for(i=0;iN;i+) if( siaver ) count+;return count;main( ) int i,arrN=87,34,5,78,90,66,88; float aver=0; for(i=0;iN;i+) aver+=arri;aver=aver/N;printf(“统计结果为:%d”, fun(arr,aver );三、程序改错题,不得增行或删行。1、下面的程序是求,在函数fun()中存在两处错误,请标记并改正。 #include

5、 long fun(int x) int m,n,t; long sum; long sum=1; for(m=1;m=x;m+) t=1; for(n=1;n=m;n+) t=m*n; t*=n; sum+=t; return sum; main( ) int num; scanf(“%d”,&num); printf(“sum=%ldn”,fun(num);2、以下程序的功能是:从字符串str中,删除所有字母c,不区分大小写。如输入字符串”abcCdefcfCg”,删除后的字符串为”abdefg”。程序有两错误,请标记并改正。#includemain( ) char str81; int

6、i=0,j=0;gets(str);while(stri!=0) if(stri!=c|stri!=C) if(stri!=c&stri!=C) strj=stri; strj+=stri; i+;strj=0;printf(“%s”,str);3、以下程序从一个二进制文件中读出结构体数据,并将结构体数据输出在屏幕上。程序中有三处错误,请标记并改正。#includestruct student char name10; float score;stu;main( ) file *f; FILE *f; if(f=fopen(“”,”r”)=NULL) printf(“cannot open o

7、utfilen”); exit(0); while(feof(f) while(!feof(f) fread(stu,sizeof(struct student),1,f); fread(&stu,sizeof(struct student),1,f); printf(“%s,%.2fn”,;fclose(f);四、程序设计题1、已知一个数列从1项开始的前6项为:0,0,1,1,2,4,以后的各项都是其相邻的前3项之和,计算并输出该数列前20项之和。2、写一函数sort(int x ,int n)实现选择法排序 (从小到大)。 2008年真题一、程序分析题1、#include 21228,10

8、main( ) char a=55; a=a&055; printf(“%x,%o”,a,a);2、#include #define test(x,y) x+y main( ) float c;c=2*test,/2;printf(“”,c);3、#include void fun( ) int x=1;static int y=1;printf(“%d%d”,+x,y+); main( ) int i;for(i=0;i2;i+) fun( );4、#include main( )3403 int a=12,b=0,n=0;do b+=2;a-=2+b; n+; while(a=0);pri

9、ntf(“%d”,n); 5、#include main( ) int n=132,i=1,j,k,b10;while(n!=0) j=n%6; bi=j; n=n/6; i+;for(k=i-1;k0;k-) printf(“%d”,bk);二、程序填空题1、任意输入平面一点坐标(x,y),求该点到原点(0,0)的距离。#include #include #include typedef struct NODE float x;float y; NODE;main( ) NODE *p;p= (NODE *)malloc(sizeof(NODE) ;scanf(“%f,%f”,&p-x,&p

10、-y);printf(“%”,sqrt(p-x*p-x+p-y*p-y); free(p) ; 2、下列给定程序中,函数fun( )的功能是:从N个字符串中找出最长的那个串,并将其地址作为函数值返回。 #include #include #define N 4 #define M 50 char *fun(char (*q)M) int i;char *p; p=*q ;for(i=0;iN;i+) if(strlen(p) strlen(*(q+i) ) p=*(q+i) ;return p; main( ) char strNM=“pingpong”,”basketball”,field

11、hockey”,”softball”;char * longest; int i;longest=fun(str);printf(“The longest string:n”);puts(longest); 3、下列程序定义了33的二维数组,并在主函数中自动赋值;函数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 a33,i,j; for(i=1;i=3;i+)for(j=1;j=3;j+) ai-1j-1

12、 =i*j; fun(3,a); printf(“the result:n”); for(i=0;i3;i+) for(j=0;j3;j+) printf(“%4d”,aij); printf(“n”); void fun(int n,int a33) int i,j; for(i=0;in-1;i+) for(j=i+1; jn ;j+) aij=0; 三、程序改错题,不得增行或删行。1、下列程序的功能是求分数序列:的前8项之和。程序中有2处错误,请标记并改正。 #include main( ) int i,flag=1; float a=144,b=89,s=0,t; for(i=1;i=

13、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(“%”,s); 2、下列程序的功能是采用简单插入的排序方法,随机产生10个整数,按从小到大的顺序排列。程序中有2处错误,请标记并改正。#include #include main( ) int i,j,a11; for(i=1;i11;i+) ai=rand( ); for(i=2;i=1;j-) if(a0aj) aj-1=aj; aj+1=aj; else continue; else break;aj+1=a0; for(i=1;i

14、11;i+)printf(“%d ”,ai);四、程序设计题1、有一辆在高速公路上行驶的汽车,司机在某一时刻看到里程表显示的数值为95859公里(95859为回文数,回文数是指正读反读均一样的数),7小时后,里程表上又出现了一个回文数。编程求出此回文数和汽车时速(注:高速公路限速60公里以上,汽车的里程表为5位数) 2、弦数是指平方值等于某两个正整数平方之和的正整数,如:32+42=52,因此5为弦数。编程输出10到100之内的所有弦数及弦数的数量。2009年真题一、程序分析题1、#include48p h o5,125D,-6914 main( ) struct stu char name1

15、0; int age,sex;printf(“%d”,sizeof(struct stu);2、#include main( ) int x=68; printf(“%c,%dn”,x,x);3、#include #include main( ) double x=;int a=(int)floor(x);int b=(int)pow(floor(x),3);printf(“%d,%d”,a,b);4、#include main( ) char *p,*t=“compute”,”phone”,”mp3”; for(p=t+2;p=t;p-) printf(“%c ”,*(*p+1)5、#inc

16、lude f(int arr ) int i=0;for(;arri=10;i+=2) printf(“%d ”,arri);main( ) int arr=2,4,6,8,10,12; f(arr+1); 二、程序填空题1、以下程序的功能是:从3个红球队、6个白球、5个蓝球中任意取出8个球,且其上至少有一个白球,输出所有可能的方案。#includemain( ) int i,j,k; printf(“nRed White Bluen”); for(i=0;i=3;i+) for( j=1 ;j=0&k=5 ) printf(“%d %d %dn”,i,j,k);2、以下程序的功能是:求100

17、以内最大的一对孪生素数之和,孪生素数是指两个素数之差为2。#include#includeint isPrime(int i) int j,r=0,k=sqrt(i); for(j=2;jk) r=1; return r ;main( ) int i,sum=0; for(i=100;i=5;i-) if( isPrime(i)&isPrime(i-2) ) sum=i+i-2; break ;printf(“%dn”,sum);3、以下程序的功能是:输入某公司50名职员的工号、姓名和地址并存入名为”的磁盘文件。struct Employee int empid; char empname10

18、; char empadd30;emp50;void save( ) FILE *fp ; int i;if(fp=fopen(“”,”wb”)=NULL) printf(“cannot open filen”); return; for(i=0;i50;i+) if(fwrite( emp+i,sizeof(struct Employee),1,fp )!=1) printf(“file write errorn”);main( ) int i; for(i=0;i50;i+) scanf(“%d,%s,%s”, &empi.empid ,empi.empname, empi.empadd)

19、;save( );三、程序改错题,不得增行或删行。1、以下程序的功能是:从一个整数队列中找出值最大的数,若有多个则取最先得到的那一个。程序有两处错误,请标出并改正。#includeint *findmax(int a ,int n) int i,j,max; for(i=1,j=0,max=a0;imax) j=i; max=ai; return *(a+j); return a+j;main( ) int i,a50; for(i=0;i50;i+) scanf(“%d”,&ai); printf(“%d”,findmax(a,50); printf(“%d”,*findmax(a,50);

20、2、以下程序的功能是:输入一个字符串,将该字符串中的所有字符按ASCII码降序排序后输出。程序有两处错误,请标出并改正。#include#includevoid fun(char t) char c; int i,j; for(i=0;istrlen(t)-1;i+)for(j=i+1;jstrlen(t)-1;j+) if(titj) c=tj; tj=ti+; tj=ti; ti=c; main( ) char s81; gets(s); printf(nBefore sorting:n%s”,s); fun(s);printf(nafter sorting:n%s”,s);四、程序设计题

21、1、某学校操场上有一些学生,老师起知道有多少人,便让学生排队报数:按1到5报数,最后一名学生的报数为1,按1到6报数,最后一名学生的报数为5,按1到7报数,最后一名学生的报数为4,最后再按1到11报数,最后一名学生的报数为10。编写程序求操场上共有多少学生。2、将自然数1100按顺时围成一圈,首先取出1,然后按顺时针方向以步长30取数,直到所有的数取完为此。编程序求最后一个取出的数2010年真题一、单选题1、下列不是C语言合法标识符的是 B 。A、_124 B、124abc C、sum124 D、a_1242、若有如图1所示存储结构,且变量定义为struct nodeint data;stru

22、ct node *next;*p,*q,*r;若要实现如图2所示的存储结构,可选用的赋值语句是 D 。A、p=r; B、p=q-next C、p-next=q; D、p-next=q-next;二、程序分析题1、#include main( ) double x,y; printf(“%.2f”,(x=5,y=x+3/2); 2、#include #define CUBE(x) (x*x*x)30100,100512main( ) int n=5;int s=CUBE(+n); printf(“%d”,s);3、#include void fun(int a,int *b) a=*b*2; *

23、b=a*5; main( ) int x=10,*y; y=&x; fun(x,y); printf(“%d,%d”,x,*y);4、#include void fun(int *a) *a=*(a-1)+*(a+1); main( ) int i=0,s=0,arr5=1,3,5,7,9;fun(arr+2);for(;i5;i+) s+=arri;printf(“%d”,s); 三、程序填空题1、下列函数rtrim实现的是删除字符串str尾部的所有空格。 char * rtrim(char *str) int n= strlen(str)-1 ;if(n0) if(*(str+n)!= )

24、 *(str+n+1)=0 ; break; else n- ;return str;2、某超市推行会员优惠购物,其中VIP会员八八折,金牌会员九折,银牌会员九三折,普通会员九六折,非会员不打折。以下程序实现了超市购物的结算,其中非会员、普通会员、银牌会员、金牌会员、VIP会员分别用0,1,2,3,4表示。#includedouble compute(int n,int grade) int amount,i; double sum,price,discount5= , ; sum=; for(i=0;in;i+) scanf(“%lf%d”,&price,&amount); /*price:

25、商品单价,amount:商品数量*/ sum+=price*amount; return sum*discountgrade ;main( ) int n,grade;/*n:商品种数,grade:会员等级*/ scanf(“%d%d”,&n,&grade); printf(“%.2lfn”, compute(n,grade) ); 3、设文件中存放着学生的基本信息,基本信息包括学号、姓名、专业等信息。下列程序的功能是:输入要读取的学生人数,利用malloc动态分配内存来存储从文件中读取的学生信息,并输出读取的学生的学号,姓名,专业。 # include #include struct stu

26、dent long int num; /*学号*/char name20; /*姓名*/char major25; /*专业*/ ; FILE *fp; main( ) struct student st,*pst;int i,num,realnum;printf(“请输入读取的学生人数:”);scanf(“%d”,&num);pst=(struct student *)malloc( num*sizeof(struct student) );if(!pst) return;fp=fopen(“”,”rb”);if(NULL=fp) free(pst) ; return; realnum=0;printf(“%st%st%st%sn”,”number”,”number”,”name”,”major”);/*文件包含的学生人数可能少于输入的人数*/for(i=0; inum&!feof(fp) ;i+) fread(pst+i,sizeof(struct student),1,fp); realnum+; st=psti ; printf(“%dt%ldt%st%sn

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1