77范文网 - 专业文章范例文档资料分享平台

C语言程序设计(第3版)何钦铭 颜 晖 第12章 文件

来源:网络收集 时间:2019-06-05 下载这篇文档 手机版
说明:文章内容仅供预览,部分内容可能不全,需要完整文档或者需要复制内容,请下载word后使用。下载word有问题请添加微信号:或QQ: 处理(尽可能给您提供完整文档),感谢您的支持与谅解。点击这里给我发消息

第12章 文件

【练习12-1】读出例12-1学生成绩文件f12-1.txt内容,输出最高分和最低分及相应的学号和姓名。 解答:

#include #include struct student{ long num;

char stname[20]; int score; };

int main(void) {

FILE *fp;

int i,max,min,j=0,k=0;

struct student students[5];

if((fp=fopen(\ printf(\ exit(0); }

fscanf(fp,\.score);

max=min=students[0].score; for(i=1;i<=4;i++){

fscanf(fp,\score);

if(max

if(min>students[i].score){ min=students[i].score; k=i; } }

printf(\

score: %d,num:%d,name:%s\\n\ts[j].stname); printf(\

score: %d,num:%d,name:%s\\n\ts[k].stname);

if(fclose(fp)){

printf(\ exit(0); }

return 0; }

【练习12-2】请使用例8-9答电码加密函数对民吗字符串进行加密,改写例12-2。 解答:

#include #include #include struct sysuser{

char username[20]; char password[8]; };

void encrypt(char *pwd); int main(void) {

FILE *fp; int i;

struct sysuser su;

if((fp=fopen(\ printf(\ exit(0); }

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

printf(\ scanf(\ encrypt(su.password);

fprintf(fp,\ }

if(fclose(fp)){

printf(\ exit(0); }

return 0; }

void encrypt(char *pwd) {

int i;

for(i=0;i

pwd[i]+=1; }

【练习12-3】例12-3中为什么在执行fputc(ch,fp2)前要判断ch的值是否等于EOF?改写例12-3的程序,在复制用户信息文件后,再统计被复制文件中字符的数量。 解答:

文件结束符EOF是一个值为-1的常量,读文件时可用来判断从文件中读入的字符是否为EOF来决定循环是否继续。 #include #include int main(void) {

FILE *fp1,*fp2; char ch;

int count=0;

if((fp1=fopen(\ printf(\ exit(0); }

if((fp2=fopen(\ printf(\ exit(0); }

while(!feof(fp1)){ ch=fgetc(fp1); if(ch!=EOF) { fputc(ch,fp2); count++; } }

if(fclose(fp1)){

printf(\ exit(0); }

if(fclose(fp2)){

printf(\ exit(0); }

printf(\中字符数量为:%d\

return 0; }

【练习12-4】字母转换并统计行数: 读取一个指定的文本文件,显示在屏幕上,如果有大写字母,则改成小写字母再输出,并根据回车符统计行数。试编写相应程序。 解答:

#include #include int main(void) {

char ch;

int countline=0; FILE *fp;

if((fp=fopen(\练习12-4.txt\ printf(\ exit(0); }

while(!feof(fp)){ ch=fgetc(fp); if(ch!=EOF)

if(ch>='A'&&ch<='Z')

printf(\ else

printf(\ if(ch=='\\n')

countline++; }

printf(\

printf(\ if(fclose(fp)){

printf(\ exit(0); }

return 0; }

【练习12-5】写字符并验证: 从键盘输入一行字符,写入到文件f3.txt中,并重新读出,最终在屏幕上显示验证。程序输入以读到回车符“\\n”为结束,读文件时要用EOF来控制循环。试编写相应程序。 解答:

#include #include

int main(void) {

FILE *fp; char ch;

if((fp=fopen(\ printf(\ exit(0); }

printf(\ ch=getchar(); while(ch!='\\n'){ fputc(ch,fp); ch=getchar(); }

rewind(fp); while(!feof(fp)){ ch=fgetc(fp); if(ch!=EOF)

putchar(ch); }

printf(\ if(fclose(fp)){ printf(\ exit(0); }

return 0; }

【练习12-6】实数取整写入文件: 文件f1.txt中有若干个实数,请分别读出,将每个实数按四舍五入取整后存入文件f2.txt中。试编写相应程序。 解答:

#include #include int main(void) {

FILE *fp1,*fp2; double a;

if((fp1=fopen(\ printf(\ exit(0); }

if((fp2=fopen(\ printf(\ exit(0);

百度搜索“77cn”或“免费范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,免费范文网,提供经典小说综合文库C语言程序设计(第3版)何钦铭 颜 晖 第12章 文件在线全文阅读。

C语言程序设计(第3版)何钦铭 颜 晖 第12章 文件.doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印 下载失败或者文档不完整,请联系客服人员解决!
本文链接:https://www.77cn.com.cn/wenku/zonghe/649834.html(转载请注明文章来源)
Copyright © 2008-2022 免费范文网 版权所有
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ: 邮箱:tiandhx2@hotmail.com
苏ICP备16052595号-18
× 注册会员免费下载(下载后可以自由复制和排版)
注册会员下载
全站内容免费自由复制
注册会员下载
全站内容免费自由复制
注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: