南开上机--2013年3月版

上传人:j****9 文档编号:45994145 上传时间:2018-06-20 格式:DOC 页数:25 大小:346.50KB
返回 下载 相关 举报
南开上机--2013年3月版_第1页
第1页 / 共25页
南开上机--2013年3月版_第2页
第2页 / 共25页
南开上机--2013年3月版_第3页
第3页 / 共25页
南开上机--2013年3月版_第4页
第4页 / 共25页
南开上机--2013年3月版_第5页
第5页 / 共25页
点击查看更多>>
资源描述

《南开上机--2013年3月版》由会员分享,可在线阅读,更多相关《南开上机--2013年3月版(25页珍藏版)》请在金锄头文库上搜索。

1、一、替换字符一、替换字符。 1、 函数函数 ReadDat()实现从文件实现从文件 ENG.IN 中读取一篇英文文章,存中读取一篇英文文章,存 入到字符串数组入到字符串数组 xx 中;请编制函数中;请编制函数 encryptChar(),按给定的替代,按给定的替代 关系对数组关系对数组 xx 中的所有字符进行替代,仍存入数组中的所有字符进行替代,仍存入数组 xx 的对应的位的对应的位 置上,最后调用函数置上,最后调用函数 WriteDat()把结果把结果 xx 输出到文件输出到文件 PS10.DAT 中。替代关系:中。替代关系:f(p)=p*11 mod 256 (p 是数组中某一个字符的是数

2、组中某一个字符的 ASCII 值,值,f(p)是计算后新字符的是计算后新字符的 ASCII 值值),如果原字符的,如果原字符的 ASCII 值是偶数或计算后值是偶数或计算后 f(p)值小于等于值小于等于 32,则该字符不变,否则,则该字符不变,否则 将将 f(p)所对应的字符进行替代。部分源程序已给出,原始数据文件所对应的字符进行替代。部分源程序已给出,原始数据文件 存放的格式是:每行的宽度均小于存放的格式是:每行的宽度均小于 80 个字符。个字符。 请勿改动主函数请勿改动主函数 main()、读数据函数、读数据函数 ReadDat()和输出数据函数和输出数据函数 WriteDat()的内容。

3、的内容。 #include#include#include#include unsigned char xx5080; int maxline=0;/*文章的总行数*/ int ReadDat(void) void WriteDat(void) void encryptChar() void main() clrscr(); if(ReadDat() printf(“数据文件 ENG.IN 不能打开!n007“); return; encryptChar(); WriteDat(); int ReadDat(void) FILE *fp; int i=0; unsigned char *p;

4、if(fp=fopen(“eng.in“,“r“)=NULL) return 1; while(fgets(xxi,80,fp)!=NULL) p=strchr(xxi,n); if(p)*p=0; i+; maxline=i; fclose(fp); return 0; void WriteDat(void) FILE *fp; int i; fp=fopen(“ps10.dat“,“w“); for(i=0;i#include#include#include unsigned char xx5080; int maxline=0;/*文章的总行数*/ int ReadDat(void) v

5、oid WriteDat(void) void encryptChar() void main() clrscr(); if(ReadDat() printf(“数据文件 ENG.IN 不能打开!n007“); return; encryptChar(); WriteDat(); int ReadDat(void) FILE *fp; int i=0; unsigned char *p; if(fp=fopen(“eng.in“,“r“)=NULL) return 1; while(fgets(xxi,80,fp)!=NULL) p=strchr(xxi,n); if(p)*p=0; i+;

6、maxline=i; fclose(fp); return 0; void WriteDat(void) FILE *fp; int i; fp=fopen(“ps8.dat“,“w“); for(i=0;i=a int maxline=0;/*文章的总行数*/ int ReadDat(void) void WriteDat(void) void encryptChar() void main() clrscr(); if(ReadDat() printf(“数据文件 ENG.IN 不能打开!n007“); return; encryptChar(); WriteDat(); int Read

7、Dat(void) FILE *fp; int i=0; unsigned char *p; if(fp=fopen(“eng.in“,“r“)=NULL) return 1; while(fgets(xxi,80,fp)!=NULL) p=strchr(xxi,n); if(p)*p=0; i+; maxline=i; fclose(fp); return 0; void WriteDat(void) FILE *fp; int i; fp=fopen(“ps2.dat“,“w“); for(i=0;i#include#include char xx5080; int maxline=0;/

8、*文章的总行数*/ int ReadDat(void) void WriteDat(void) void ConverCharD(void) void main() clrscr(); if(ReadDat() printf( 数据文件 ENG.IN 不能打开!n007 ); return; ConverCharD(); WriteDat(); int ReadDat(void) FILE *fp; int i=0; char *p; if(fp=fopen( IN.DAT , r )=NULL) return 1; while(fgets(xxi,80,fp)!=NULL) p=strchr

9、(xxi,n); if(p)*p=0; i+; maxline=i; fclose(fp); return 0; void WriteDat(void) FILE *fp; int i; fp=fopen( OUT4.DAT , w ); for(i=0;i#include #include #include #define N 81 void readwriteDAT(); void chg(char *s) main() char aN; clrscr(); printf( Enter a string: );gets(a); printf( The original string is;

10、 );puts(a); chg(a); printf)( The string after modified: ); puts(a); readwriteDAT(); viod readwriteDAT() int i; char aN; FILE *rf,*wf; rf=fopen( in.dat , r ); wf=fopen( out.dat , w ); for(i=0;i=a void jsSort() void main() readDat(); jsSort(); writeDat(); readDat() FILE *in; int i=0; char *p; in=fopen

11、(“in.dat“,“r“); while(ixxik) ch=xxij;xxij=xxik;xxik=ch; for(j=half-1,k=strl-1;j=0;j-,k-) ch=xxij;xxij=xxik;xxik=ch; 4、函数函数 ReadDat()实现从文件实现从文件 in.dat 中读取中读取 20 行数据存放到字符行数据存放到字符 串数组串数组 xx 中中(每行字符串长度均小于每行字符串长度均小于 80)。请编制函数。请编制函数 jsSort(),其,其 函数的功能是:以行为单位对字符串按给定的条件进行排序,排序函数的功能是:以行为单位对字符串按给定的条件进行排序,排序 后

12、的结果仍按行重新存入字符串数组后的结果仍按行重新存入字符串数组 xx 中,最后调用函数中,最后调用函数 WriteDat()把结果把结果 xx 输出到文件输出到文件 out.dat 中。条件:从字符串中间中。条件:从字符串中间 一分为二,左边部分按字符的一分为二,左边部分按字符的 ASCII 值降序排序,排序后左边部值降序排序,排序后左边部 分与右边部分进行交换。如果原字符串长度为奇数,则最中间的字分与右边部分进行交换。如果原字符串长度为奇数,则最中间的字 符不参加处理,字符仍放在原位置上。例如:位置符不参加处理,字符仍放在原位置上。例如:位置 0 1 2 3 4 5 6 7 8 源字符串源字

13、符串 a b c d h g f e 1 2 3 4 9 8 7 6 5 则处理后字符串则处理后字符串 h g f e d c b a8 7 6 5 9 4 3 2 1 部分源程序已给出。请勿改动主函数部分源程序已给出。请勿改动主函数 main()、读数据函数、读数据函数 ReadDat()和输出数据函数和输出数据函数 WriteDat()的内容。的内容。 #include#include#include char xx2080; void jsSort() void main() readDat(); jsSort(); writeDat(); readDat() FILE *in; int

14、 i=0; char *p; in=fopen(“in.dat“,“r“); while(i=0)k-; xxik+1=ch; for(j=half-1,k=strl-1;j=0;j-,k-) ch=xxij;xxij=xxik;xxik=ch; void jsSort() int i,j,k,strl; char ch;for(i=0;i#include#include char xx2080; void jsSort() void main() readDat(); jsSort(); writeDat(); readDat() FILE *in; int i=0; char *p; in

15、=fopen(“in.dat“,“r“); while(ixxik)ch=xxij;xxij=xxik;xxik=ch; 12、函数函数 ReadDat()实现从文件实现从文件 in.dat 中读取中读取 20 行数据存放到字符行数据存放到字符 串数组串数组 xx 中中(第行字符串长度均小于第行字符串长度均小于 80)。请编制函数。请编制函数 jsSort(),其,其 函数的功能是:以行为单位对字符串变量的下标为奇数的字符按其函数的功能是:以行为单位对字符串变量的下标为奇数的字符按其 ASCII 值从小到大的顺序进行排序,排序后的结果仍按行重新存入值从小到大的顺序进行排序,排序后的结果仍按行重新存入 字符串数组字符串数组 xx 中,最后调用函数中,最后调用函数 WriteDat()把结果把结果 xx 输出到文件输出到文件 out.dat 中。例如:位置中。例如:位置 0 1 2 3 4 5 6 7 源字符源字符 串串 h g f e d c

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 生活休闲 > 社会民生

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号