三级信息管理技术机试-235_第1页
三级信息管理技术机试-235_第2页
三级信息管理技术机试-235_第3页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、三级信息管理技术机试 -235( 总分: 100.00 ,做题时间: 90 分钟 )一、上机题( 总题数: 1,分数: 100.00)1.函数ReadDat()的功能是实现从文件ENG97.IN中读取一篇英文文章,存入到字符串数组xx中。请编制函数 encryChar() ,按给定的替代关系对数组 xx 中所有字符进行替代,仍存入数组 xx 的对应的位置上, 最后调用函数 WriteDat() 把结果 xx 输出到文件 ps97.dat 中。替代关系: f(p)=p*11 mod256(p 是数组 xx 中某一个字符的 ASCII 值, f(p) 是计算后新字符的 ASCII 值), 如果原字

2、符是数字字符 0 至 19 或计算后 f(p) 的值小于等于 32,则该字符不变,否则将 f(p) 所对应的字符 进行替代。注意:部分源程序已给出,原始数据文件的存放格式是每行的宽度均小于80 个字符。请勿改动主函数 main() 、读函数 ReadDat() 和写函数 WriteDat() 的内容。试题程序:#include < conio.h >#include < stdio.h >#include < string.h >#include < ctype.h >unsigned char xx5080;int maxline=0;int

3、ReadDat(void);void WriteDat(void);void encryChar() void main()clrscr();if(ReadDat()printf(" 数据文件 ENG97.IN 不能打开 !/n/007");return;encryChar();WriteDat();int ReadDat(void)FILE *fp;int i=0;unsigned char *p;if(fp=fopen("ENG97.IN","r")=NULL) return 1;while(fgets(xxi,80,fp)!=N

4、ULL) p=strchr(xxi,'/n');if(p) 正确答案: (void encryChar()int i;char *pf;for(i=0;i < maxline;i+)pf=xxi; /* 指针 pf 指向该行第一个字符 */ while(*pf!=0 ) /* 如果原字符是数学字符 0 至 9 或计算后的值小于等于if(*pf > =0 && *pf < =9) | *pf*11%256< =32pf+; /* 则不做改变,指向下一个字符 */ continue; /* 退出本次循环 */ pf=*pf*11%256; /

5、* 否则用新字符取代原有字符 */ pf+; /* 指向下一个字符 */)解析: 解析 本题考查的知识点如下:(1) 字符对应的 ASCII 码。(2) 判断结构中多个条件的“或”运算。p=0;i+;maxline=i;fclose(fp);return 0;void WriteDat()FILE *fp;int i;fp= fopen("ps97.dat","w");for(i=0;i < maxline;i+)printf("%s/n",xxi);fprintf(fp,"%s/n",xxi);fclose(fp);32*/分数: 100.00 )(3) 退出一次循环。(4) 二维数组的访问。在 C 语言中,字符可参与任何整数运算。实际上,是字符的 ASCII 码参与了运算。所以可以直接用字符代 入 f(p) 的关系式中求出替换字符。当字符大于等于 0 小于等于 9 时,字符为数字字符。所以这两个条件之 间用“与”运算。若原字符是数字字符0至9或f(p) <32,则该字符不变。两条件之间满足一个即可,所以这两个条件之间用“或”运算。若字符不变,则可不必计算替换字符,使用continue 跳出本次循环,进入下一次循环的条件判断中。因为这里不是直

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论