77范文网 - 专业文章范例文档资料分享平台

c语言近几年考题(6)

来源:网络收集 时间:2019-05-18 下载这篇文档 手机版
说明:文章内容仅供预览,部分内容可能不全,需要完整文档或者需要复制内容,请下载word后使用。下载word有问题请添加微信号:或QQ: 处理(尽可能给您提供完整文档),感谢您的支持与谅解。点击这里给我发消息

}

void main() { int m=12,n=8;

printf(\fun(m)/fun(n)/③ ); }

第 26 页 共 50 页

机试部分

(第一套)

(60分钟)

一、程序调试题(文件名为test1-1.c) (40分)

磁盘上有一个名为test1-1.c的C程序文件,其中函数fun的功能是:在字符串a中找出ASCII码值最大的字符,将其放在第一个位置上;并将该字符前的原字符向后顺序移动。例如,调用fun函数之前字符串为:123aBYdZf,调用后字符串中的内容为:f123aBYdZ。

在main函数中,从文本文件test1-1.txt中读出字符串放入一维数组a中,调用fun函数构成新的数组,在主函数中输出处理后的结果。

请改正程序中的错误,使它能得出正确结果。

注意:不得增行或删行,也不得更改程序结构。

源程序如下: #include #include #include fun(char *p)

{ char max,*q; int i=0; max=p[i]; while(p[i]!=0) {if(max>p[i])

{ max=p[i]; q=p+1;

} i++; }

while(q>p) {*q=*(q-1); q++; }

p[0]=max; }

void main( ) { FILE *fp; char a[255]; int i=0;

if((fp=fopen(\ { printf(\

exit(0); }

while(1)

{ a[i++]=fgetc(); if(a[i]==EOF) break; i++; }

第 27 页 共 50 页

a[i]=\

printf(\ puts(a); fun(a);

printf(\ %s\\n\\n\ fclose(fp); }

二、编写程序(程序文件名命为test1-2.c)(60分)

(1)编写函数fun,fun函数的功能是:将一个由二进制数字字符组成的字符串转换为与其面值相等的十进制整数。规定输入的字符串最多只能包含32位二进制数字。例如,若输入11111111,则输出将是255。 (2)在main函数中输入二进制数字字符串s的值,调用fun函数,并输出转换后的十进制数。

(第二套)

(60分钟)

一、程序调试题(文件名为test2-1.c) (40分)

磁盘上有一个名为test2-1.c 的C程序文件,其中函数fun的功能是:统计数组a中素数的个数,并将个数作为函数值返回。

在main函数中,从文件test2-1.txt中读出10个整数放入整型数组中,调用fun函数,将整型数组的10个数及素数的个数输出到屏幕上。

请改正程序中的错误,使它能得出正确的结果。 注意:不得增行或删行,也不得更改程序的结构。 源程序如下: #include #include void fun(int *a,int n) { int i,j,cnt=0; for(i=0;i

if(i%j==0) continue; if(j>a[i]/2) cnt++;

}

return cnt;

void main( )

{ int a[10],i,cnt;

file *fp;

if((fp=fopen(\{ }

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

{ scanf(fp,\ }

printf(\

printf(\exit(0);

cnt=fun(a,10); printf(\

第 28 页 共 50 页

fclose(fp); }

二、编写程序(程序文件名命名为test2-2.c) (60分)

(1)编写函数fun,它的功能是:将字符串中ASCII码为奇数的字符删除。例如:原串中的内容为ABCDEFG123,则删除后的结果为BDF2。

(2)在main函数中输入一个字符串,调用fun函数,并输出删除后的结果。

(第三套)

(60分钟)

一、程序调试题(文件名为test3-1.c) (40分)

磁盘上有一个名为test3-1.c的C程序文件,其函数strfun的功能是:在字符串中,删除以字符‘<’开始,字符‘>’结束的字符串内容(包括<>符号本身)。

例如,输入的字符串为:This is a html page,则输出结果为:This is a html page。

在main函数中,从文本文件test3-1.txt中读出一个字符串放入一维数组中,调用函数strfun删除以字符‘<’开始,字符‘>’结束的字符串内容,在主函数中输出删除后的结果。

请改正程序中的错误,使它能得出正确结果。 注意:不得增行或删行,也不得更改程序结构。 源程序如下: #include \#include \

void strfun(char str, char start, char end) { char *pstart,*pend; while (str) { if (*str=start) {

pstart=str; pend=str+1;

while (*pend!='\\0' || *pend!=end) pend++;

if (pend==end)

while (*pstart++=*++pend); } str++; } }

void main( ) { char string[81]; FILE *fp;

if((fp=fopen(\{ printf(\

exit(0);

}

fgets(string,81,fp); strfun(string,'<','>'); puts(string);

}

二、编写程序(程序文件名命名为test3-2.c) (60分)

第 29 页 共 50 页

(1)编写move函数,其功能是:对10个整数循环右移n(n<=10)位后,存入main函数的a数组中。 (2)编写main函数,对长度为10的整型数组a进行初始化,输入n,调用move函数,最后输出循环右移n位后的10个数组元素。

例如,原数组 a[10]={0,1,2,3,4,5,6,7,8,9},n=3,则移位后的结果为{7,8,9,0,1,2,3,4,5,6}。

(第四套)

(60分钟)

一、程序调试题(文件名为test4-1.c ) (40分)

磁盘上有一个名为test4-1.c的C程序文件,程序的功能是从文件test4-1.dat中输入N个学生的信息,包括每个学生的姓名、学号、3门课程的成绩。计算并输出每个学生3门课程的平均分,并输出平均分最高学生的信息(包括姓名、学号、3门课程的成绩和平均成绩)。

请改正程序中的错误,使它能得出正确的结果。

注意:不得增行或删行,也不得更改程序结构。

源程序如下: #include #define N 10 struct stu { char name[20]; int num; int score[4]; }s[N]

void main() { FILE *fp; int i,k,max;

if((fopen(\ { printf(\ exit(0); }

for(i=0;i

fscanf(fp,\ fclose(fp);

printf(\verage:\

for(i=0;i

{ s[i].score[3]=(s[i].score[0] + s[i].score[1] + s[i].score[2])/3; printf(\ }

max=s[i].score[3]; k=0;

for(i=0;i<=N;i++) if(s[i].score[3]

max=s[i].score[3]; }

printf(\

printf(\

第 30 页 共 50 页

百度搜索“77cn”或“免费范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,免费范文网,提供经典小说综合文库c语言近几年考题(6)在线全文阅读。

c语言近几年考题(6).doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印 下载失败或者文档不完整,请联系客服人员解决!
本文链接:https://www.77cn.com.cn/wenku/zonghe/630343.html(转载请注明文章来源)
Copyright © 2008-2022 免费范文网 版权所有
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ: 邮箱:tiandhx2@hotmail.com
苏ICP备16052595号-18
× 注册会员免费下载(下载后可以自由复制和排版)
注册会员下载
全站内容免费自由复制
注册会员下载
全站内容免费自由复制
注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: