2012年自考“高级语言程序设计”经典习题及答案(30)_工学-查字典自考网
 
请输入您要查询的关键词
  查字典自考网 >> 工学 >> 2012年自考“高级语言程序设计”经典习题及答案(30)

2012年自考“高级语言程序设计”经典习题及答案(30)

发布时间: 2016-06-29 来源:查字典自考网

8.4 程序设计题

1.编一个程序,从键盘输入200个字符,存入名为“f1.txt”的磁盘文件中。

“解”要将从键盘输入的字符写到指定的文件,程序要定义一个文件指针变量,并以写方式打开指定的文件,然后是一个循环,反复从键盘读人字符,将读人字符复制到文件。程序如下:

# include

# include

FILE * fp;

void main()

{ int i, ch;

if(( fp =fopen(“f1.txt”,“w”))== NULL) {

prinit(“Can‘t open file %s.n”,“f1.txt”); exit(0);

}

printf(“Enter 200 characters. n”);

for( i = 1;i<=200;i++) {

ch= getchar();

if( ch== EOF) break;

fputc( ch,fp);

}

fclose(fp);

}

2.从上一题中建立的名为“f1.txt”的磁盘文件中读取120个字符,并显示在屏幕上。

“解”要从指定文件读入字符显示,要以读方式打开,并用循环控制从文件读人字符。程序如下:

# include

# include

FILE * fp;

void main()

{ int i;

if(( fp =fopen(“f1.txt”,“r” ))== NULL) {

printf(“Can‘t open file %s.n”,“f1.txt” ); exit(0);

}

for(i=l; i<=120; i++ ) {

if(feof(fp)) break;

putchar( fgetc(fp));

}

fclose(fp);

printf(“n”);

}

3.编一个程序,将磁盘中的当前目录下名为“ccw1.txt” 的文本文件复制在同一目录下,文件名改为“ccw2.txt”。

“解”程序需要两个文件指针变量,一个对应读文件,另一个对应写文件。并分别用读和写方式打开两个文件。

接着是以读文件状态作为循环控制条件,在读文件还未结束下循环,反复读人字符,并将读人字符复写到写文件中。程序如下:

# include

# include

FILE * rp, * wp;

void main()

{ int c;

if((rp= fopen(“ccw1.txt”,“r”))== NULL) {

printf(“Can‘t open file %s.n”,“ccwl.txt”); exit(0);

}

if((wp= fopen(“ccw2.txt”,“w”))== NULL) {

printf(“Can‘t open file %s.n”,“ccw2.txt”); exit(0);

}

while((c= fgetc(rp))!= EOF)

fputc( c,wp);

fclose(wp);

fclose(rp);

}

4.编程序,对名为“CCW.TXT”的磁盘文件中“@”之前的所有字符加密,加密方法是每个字节的内容减10.

“解”程序从文件读出字符,在字符“@”未出现之前,将读出字符作加密处理后回写。加密循环受文件结束或当前字符是“@”字符控制。程序如下:

# include

# include

# define DALTA 10

FILE * rp;

void main()

{ int c;

if(( rp = fopen(“ccw.txt”,“r+”)) ==NULL ) {

printf(“Can‘t open file %s.n”,“ccw.txt”); exit(0);

}

while(( c= fgetc(rp))!= EOF) {

if( c ==‘@’) break;

c+= DALTA;

fseek( rp,-1L,1 );

fputc( c, rp);

fseek( rp,OL,l);

}

fclose(rp);

}

点击显示
推荐文章
猜你喜欢
附近的人在看
推荐阅读
拓展阅读

当前热点关注

  • 大家都在看
  • 小编推荐
  • 猜你喜欢
  • [相关地区]