计算机三级网络机试考试试题及答案2.docVIP

  • 1
  • 0
  • 约4.03万字
  • 约 50页
  • 2022-03-27 发布于广东
  • 举报

计算机三级网络机试考试试题及答案2.doc

三级网络机试考题及答案下 第五十一道 函数 ReadDat()的功能是实现从文件  ENG51.IN 中读取一篇英文文章,存入到字符串数组  xx 中;请编制 函数 encryptChar() ,按给定的替代关系对数组 xx中的所有字符进行替代, 结果仍存入数组 xx的对应的位置上,最后调用函数 WriteDat() 把结果 xx 输出到文件 PS51.DAT 中。 替代关系: f(p)=p*11 mod 256 (p是数组 xx 中某一个字符的 ASCII 值,f(p) 是计算后新字符的 ASCII 值), 如果计算后 f(p) 的值小于等于 32或f(p) 对应的字符是数字 0至 9,则该字符不变, 否则将 f(p) 所对应的字符进行 替代。 注意:部分源程序已给出。 原始数据文件存放的格式是:每行的宽度均小于 80个字符。 请勿改动主函数 main()、读函数 ReadDat()和写函数 WriteDat() 的内容。 #include stdio.h #include string.h #include ctype.h #include stdlib.h unsigned char xx[50][80] ; int maxline = 0 ; /* 文章的总行数 */ int ReadDat(void) ; void WriteDat(void) ; void encryptChar() { int i,j; int str; char ch;  /* 定义循环控制变量 */ /* 存储字符串的长度 */ /* 存储当前取得的字符  */ for(i=0;imaxline;i++)  /* 以行为单位获取字符  */ { str=strlen(xx[i]);  /* 求得当前行的字符串长度  */ for(j=0;jstr-1;j++)  /* 依次取每行的所有字符  */ { ch=xx[i][j]*11%256; if(ch=32 || (ch=0 ch=9) ) continue; /* 如果计算后的值小于等于  32 或  f(p) 对应的字符是数字  0 至  9,则该字符不变 */ else xx[i][j]=ch;  /* 否则按给定的替代关系进行替代  */ } } } void main() { system(CLS); if(ReadDat()) { printf( 数据文件 ENG51.IN 不能打开! \n\007) ; return ; } encryptChar() ; WriteDat() ; } int ReadDat(void) { FILE *fp; int i=0 ; unsigned char *p ; if((fp = fopen(ENG51.IN, r)) ==NULL) return 1 ; while(fgets(xx[i], 80, fp) !=NULL) { p = strchr(xx[i], \n) ; if(p) *p = 0; i++ ; } maxline = i ; fclose(fp) ; return 0 ; } void WriteDat(void) { FILE *fp ; int i ; fp = fopen(PS51.DAT, w) ; for(i = 0 ; i maxline ; i++) { printf(%s\n, xx[i]) ; fprintf(fp, %s\n, xx[i]) ; } fclose(fp) ; } 第五十二道 读函数 ReadDat()实现从文件 ENG52.IN 中读取一篇英文文章,存入到字符串数组 xx 中。请编制函数 encryptChar() ,按给定的替代关系对数组 xx 中的所有字符进行替代, 仍存入数组 xx的对应的位置上, 最后调用写函数 WriteDat() 把结果 xx 输出到文件 PS52.DAT 中。 替代关系: f(p)=p*11 mod 256 (p是数组 xx 中某一个字符的 ASCII 值,f(p) 是计算后新字符的 ASCII 值), 如果计算后 f(p) 的值小于等于 32或f(p) 对应的字符是小写字母, 则该字符不变, 否则将 f(p) 所对应的字符进行 替代。 注意:部分源程序已给出。 原始数据文件存放的格式是:每行的宽度均小于 80个字符。 请勿改动主函数 main()、读函数 ReadDat()和写函数 WriteDat() 的内容。 #include stdio.h #include string.h #include ctype.h #include stdlib.h unsigned char xx[50][80] ; in

文档评论(0)

1亿VIP精品文档

相关文档