




已阅读5页,还剩3页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
计算机二级C上机练习题汇总(二)第四套(1) 填空题 人员的记录由编号和出生年、月、日组成,N名人员的数据已在主函数中存入结构体数组std中,且编号唯一。函数fun的功能是:找出指定编号人员的数据,作为函数值返回,由主函数输出,若指定编号不存在,返回数据中的编号为空串。 请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。 注意:源程序存放在考生文件夹下的BLANK1.C中。 不得增行或删行,也不得更改程序的结构!#include #include #define N 8typedef struct char num10; int year,month,day ;STU;/*found*/_1_ fun(STU *std, char *num) int i; STU a=,9999,99,99; for (i=0; iN; i+)/*found*/ if( strcmp(_2_,num)=0 )/*found*/ return (_3_); return a;main() STU stdN= 111111,1984,2,15,222222,1983,9,21,333333,1984,9,1, 444444,1983,7,15,555555,1984,9,28,666666,1983,11,15, 777777,1983,6,22,888888,1984,8,19; STU p; char n10=666666; p=fun(std,n); if(p.num0=0) printf(nNot found !n); else printf(nSucceed !n ); printf(%s %d-%d-%dn,p.num,p.year,p.month,p.day); 第1 处:STU fun(STU *std, char *num)第2 处:if( strcmp(stdi.num,num)=0 )第3 处:return (stdi);(2) 改错题 给定程序modi.c中,函数fun的功能是:将s所指字符串的正序和反序进行连接,形成一个新串放在t所指的数组中。 例如,当s所指字符串为:ABCD时,则t所指字符串中的内容应为:ABCDDCBA。 请改正程序中的错误,使它能得出正确结果。 注意:不要改动main函数,不得增行或删行,也不得更改程序的结构!#include #include #include #include /*found*/void fun(char s,char t) int i,d; d=strlen(s); for(i=0;id;i+) ti=si; for(i=0;id;i+) td+i=sd-1-i;/*found*/ t2*d-1=0;main() char s100,t100; system(cls); printf(nPlease enter string S:);scanf(%s,s); fun(s,t); printf(nThe result is:%sn,t);第1 处:void fun(char s,char t) 改为 void fun (char *s, char *t)第2 处:t2*d-1=0; 改为 t2*d = 0;(3) 程序设计 请编写一个函数fun,它的功能是:根据以下公式求的值(要求满足精度0.0005, 即某项小于0.0005时停止迭代): 程序运行后,如果输入精度0.0005,则程序输出为3.140578。 注意:部分源程序存在文件prog.c中。 请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。/*本答案只作参考。*/#include #include double fun ( double eps) int n=0; double down=1,up=1; double one ,pi=0; one = (double)up/(double)down; while(one=eps) pi+=one; n+; up=up*n; down=down*(2*n+1); one=(double)up/(double)down; return pi*2;main( ) double x; printf(Input eps:) ; scanf(%lf,&x); printf(neps = %lf, PI=%lfn, x, fun(x);第五套(1) 填空题 人员的记录由编号和出生年、月、日组成,N名人员的数据已在主函数中存入结构体数组std中。函数fun的功能是:找出指定出生年份的人员,将其数据放在形参k所指的数组中,由主函数输出,同时由函数值返回满足指定条件的人数。 请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。 注意:源程序存放在考生文件夹下的BLANK1.C中。不得增行或删行,也不得更改程序的结构!#include #define N 8typedef struct int num; int year,month,day ;STU;int fun(STU *std, STU *k, int year) int i,n=0; for (i=0; iN; i+)/*found*/ if( _1_ )/*found*/ k_2_= stdi;/*found*/ return (_3_);main() STU stdN= 1,1984,2,15,2,1983,9,21,3,1984,9,1,4,1983,7,15, 5,1985,9,28,6,1982,11,15,7,1982,6,22,8,1984,8,19; STU kN; int i,n,year; printf(Enter a year : ); scanf(%d,&year); n=fun(std,k,year); if(n=0) printf(nNo person was born in %d n,year); else printf(nThese persons were born in %d n,year); for(i=0; in; i+) printf(%d %d-%d-%dn,ki.num,ki.year,ki.month,ki.day); 第1 处:if( stdi.year=year)第2 处:kn+= stdi;第3 处:return (n);(2) 改错题 给定程序modi.c中,函数fun的功能是:将从键盘上输入的每个单词的第一个字母写为大写字母,输入时各单词必须用空格隔开,用.结束输入。 请改正程序中的错误,使程序能输出正确的结果。 注意:不要改动main函数,不得增行或删行,也不得更改程序的结构!#include int fun(char *c,int status)/*found*/if (*c=) return 1; else if(status & *c=a)/*found*/ c+=A-a; return 0; main() int flag=1; char ch; printf(请输入一字符串,用点号结束输入!n); do ch=getchar(); flag=fun(&ch,flag); putchar(ch); while(ch!=.); printf(n);第1 处:if (*c=) return 1; 改为 if (*c= ) return 1;第2 处:c+=A-a; 改为 *c+=A-a;(3) 程序设计 请编写一个函数fun,它的功能是:比较两个字符串的长度,(不得调用C语言提供的求字符串长度的函数),函数返回较长的字符串。若两个字符串长度相同,则返回第一个字符串。 例如,输入beijing shanghai,函数将返回shanghai。 注意:部分源程序存在文件prog.c中。请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。/*本答案只作参考。*/#include char *fun ( char *s, char *t) int first=0,second=0; char *p,*q; p=s; q=t; while(*p+!=0) first+; while(*q+!=0) second+; if(first=second) return s; else if (firstsecond) return s; else return t; main( ) char a20,b10; printf(Input 1th string:) ; gets( a); printf(Input 2th string:) ; gets( b); printf(%sn,fun (a, b );第六套(1) 填空题 给定程序中,函数fun的功能是:求出形参ss所指字符串数组中最长字符串的长度,其余字符串左边用字符*补齐,使其与最长的字符串等长。字符串数组中共有M个字符串,且串长N。 请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。 注意:源程序存放在考生文件夹下的BLANK1.C中。 不得增行或删行,也不得更改程序的结构!#include #include #define M 5#define N 20void fun(char (*ss)N) int i, j, k=0, n, m, len; for(i=0; in) /*found*/ n=len; _1_=i; for(i=0; i=0;j-) ssim-=ssij; for(j=0; jn-len; j+)/*found*/ _3_=*; main() char ssMN=shanghai,guangzhou,beijing,tianjing,cchongqing; int i; printf(nThe original strings are :n); for(i=0; iM; i+) printf(%sn,ssi); printf(n); fun(ss); printf(nThe result:n); for(i=0; i=0; j-)第3 处:ssij=*;(2) 改错题 给定程序modi.c中,函数fun的功能是:从低位开始取出长整型变量s中偶数位上的数,依次构成一个新数放在t中。 例如,当s中的数为:7654321时,t中的数为:642。 请改正程序中的错误,使它能得出正确结果。 注意:不要改动main函数,不得增行或删行,也不得更改程序的结构!#include #include #include /*found*/void fun(long s,long t) long s1=10; s/=10; *t=s%10;/*found*/while(s0) s=s/100; *t=s%10*s1+*t; s1=s1*10; main() long s,t; system(cls); printf(nPlease enter s:);scanf(%ld,&s); fun(s,&t); printf(The result is:%ldn,t);第1 处:void fun(long s,long t) 改为 void fun(long s,long *t)第2 处:while(s0)(3) 程序设计 函数fun的功能是:将两个两位数的正整数a、b合并形成一个整数放在c中。合并的方式是:将a数的十位和个位数依次放在c数的百位和千位上,b数的十位和个位数依次放在c数的个位和十位上。 例如,当a=45,b=12。调用该函数后,c=5421。 注意:部分源程序存在文件prog.c中。请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。/*本答案只作参考。*/#include #include #includevoid fu
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 门面房租赁合同
- 安全施工管理培训课件
- 安全施工培训课程内容课件
- 安全施工培训教案课件
- (苏教2024版)科学三年级上册1.3 肥沃的土壤 课件(新教材)
- 二一一工程实施方案(3篇)
- 安全文明用语培训课件
- 球面透镜的矫正原理
- 防城港市上思县妇幼保健院整体搬迁项目(一期)环境影响报告表
- 农业气象服务创新与智慧农业产业链协同发展研究
- 城市街道景观设计课件
- 移动门式架操作平台安全技术交底
- 安全环保专员岗位常见面试问题部分含答案附面试技巧自我介绍
- 邮政行业痛点与解决措施
- 回族做礼拜的念词集合6篇
- 《铁路交通事故调查处理规则》解读
- 研究生学术行为规范讲座
- 年处理12万吨煤焦油加工工艺初步设计
- YB 4094-1993炮弹用方钢(坯)超声波探伤方法
- 《雨巷》优秀课件-雨巷课件一等奖
- 《嫦娥(李商隐)》课件
评论
0/150
提交评论