全文预览已结束
付费下载
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
上机考试模拟试题(8)一、填空题 请补充fun函数, 该函数的功能是把从主函数中输入的字符串s2接在字符串s1后面。 例如, 输入s1=Hi, , s2=Welcome!, 结果输出Hi, Welcome!。 请勿改动主函数main与其他函数中的任何内容, 仅在fun函数的横线上填写所需的若干表达式或语句。 注意: 部分源程序给出如下。# include # include # define LEN 100 void fun(char *s1,char *s2) int i=0; char *p1=s1; char *p2=s2; while(_l_) i+; for(;_2_;i+) *(p1+i)=_3_; *(p1+i)= 0; main() char s1LEN,s2LEN; printf(Please input the string s1 and s2n); printf( ns1:); gets(s1); printf( ns2:); gets(s2); printf(The string s1 and s2n); puts(s1);puts(s2); fun(s1,s2); printf(The new string isn); puts(s1); 二、改错题 下列给定程序中函数fun的功能是: 将长整型数中每一位上为偶数的数依次取出, 构成一个新数放在b中。高位仍在高位, 低位仍在低位。例如, 当a中的数为123456时, 则b中的数为246。 请修改程序中的错误, 得出正确的结果。 注意: 不要改动main函数, 不能增行或删行, 也不能更改程序的结构。# include # include void fun(long a,long *b) /*error*/ int d; long s1=0; *b=0;while(a0) d=a%10;if(d%2=0) *b=d*s1+*b; s1*=10; /*error*/a/=10; main() long a,b; printf(nPlease enter data:); printf(The result is :%ldn,b); scanf(%1d,&a); fun(a,&b); printf(The result is:%1dn,b); 三、编程题 请编写函数fun, 其功能是; 将str所指字符串中ASCII值为偶数的字符删除, 串中剩余字符形成一个新串放入s所指的数组中。 例如, 若str所指字符串中的内容为12345678, 其中字符2的ASCII码值为偶数、字符4的ASCII码值为偶数.都应当删除, 其他依次类推。最后s所指的数组中的内容应是1357。 请勿改动主函数main与其他函数中的任何内容, 仅在函数fun的花括号中填入所编写的若干语句。 # include # include # include void fun(char *str,char s) main() char str100,s100,m=nPlease enter string:; FILE *out;printf(m);scanf(%s,str); fun(str,s); printf(nThe result is :%sn,s); out=fopen(outfile.dat,w); fun(m,s);fprintf(out,%s,s); fclose (out); 上机考试模拟试题(8)参考答案及解析一、填空题 答案 (1)*(p1+i) (2)*p2 (3)*p2+ 解析 本题中函数功能是把输入的字符串s2接在字符串s1后面。此类题的解题思路首先是找到第一个字符串的末尾, 然后将s2复制到第一个串后。 第一空: 通过while循环, 令指针p1指向第一个串的尾, 所以第一空填“*(p1i)”。 第二空: for循环足将p2指向的字符串的内容接着p1指向的串赋值到p1指向的字符串, 循环是对p2指向字符串的操作, 所以第二空填“*p2”。 第三空: 将p2指向的串内容逐个放入p1指向的字符串, 所以p2执行逐个指向下一个的操作, 所以第三空填“*p2+”。二、改错题 答案 (1) longs1=1; (2) a/=10; 解析 本题中函数的功能是将长整型数中每一位上为偶数的数依次取出, 构成一个新数放在b中。首先在函数中对长整型数的每一位来进行截取, 然后对其进行判断, 最后根据判断结果进行操作。 (1)第一个标识下s1代表级数, 如果它的初始化值为0, 那么任何数乘以这个级数都会一直是0, 所以将“long s1=0;”改为“long s1=1; ”。 (2)第二个标识下的“a=10: ”是对a的截取, 这里的“”本意应该是除号, 但这个在C语言中是不可识别的, 所以第二个标识下“a=10; ”应该改为“a/=10;”。三、编程题 答案 int i,j=0,n=strlen(str); for(i=0; in; i+) if(stri%2!=0) sj=stri; j+; sj=0; 解析 该程序功能是将str所指字符串中ASCII值为偶数的字符删除, 串中剩余字符形成一个新串放存s所指的数组中。解题过程利用if判断表达式选择ASCII值为奇数的字符, 然后将符合条件的字符放入指定的字符串s, 这样就实现了函数功能。 (1)判断一个字符串中的某一字符ASCII值是否为奇数, 可用“stril%2!=0”来判断。 (2)对串str中各
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026年木里藏族自治县医疗事业单位人员招聘考试模拟试题及答案解析
- 2026年临沭县医疗事业单位人员招聘笔试模拟试题及答案解析
- 2026年云阳县医疗事业单位人员招聘考试参考题库及答案解析
- 2026年那坡县医疗事业单位人员招聘考试备考题库及答案解析
- 2026年鄯善县医疗事业单位人员招聘考试参考题库及答案解析
- 2026年左云县带编教师招聘考试模拟试题及答案解析
- 2026年乐亭县医疗事业单位人员招聘笔试备考试题及答案解析
- 2026年林西县医疗事业单位人员招聘考试模拟试题及答案解析
- 2026年中牟县医疗事业单位人员招聘考试备考试题及答案解析
- 2026年康平县医疗事业单位人员招聘考试模拟试题及答案解析
- 2026年从江县事业单位人员招聘考试备考试题及答案解析
- 2026年新教师班级管理入门培训课件
- 钢结构工程专项施工方案
- 2026年高校辅导员面试题(附答案)
- 2026年青海公务员(行测)考试试卷真题(含答案)
- 新版部编人教版四年级上册道德与法治(课件)9安全文明上网
- 长期照护师技能实操考核试卷含答案
- 2026秋小学新版苏教版数学六年级上册教学设计(附目录)适用于新课标
- 新版西师版五年级上册数学全册教案(完整版)教学设计含教学反思
- 教科版2026年小学四年级科学上册全册教案
- 2026宁夏医科大学总医院自主招聘事业单位工作人员87人考试备考题库及答案详解
评论
0/150
提交评论