CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
不看会后悔的Windows XP之经验谈 简单快捷DIY实用家庭影院
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  C/C++ >  C语言

将文件中一串小写字母变大写字母

楼主QQ_Paladin()2006-12-01 22:53:26 在 C/C++ / C语言 提问

#include   "stdio.h"  
  #include   "conio.h"  
   
  main()  
  {       int   i;  
          char   c;  
   
          FILE   *fp;  
        fp=   fopen("example.c","r+");  
          for(i=0;i<4;i++)  
  {         c=fgetc(fp);  
          c=c-32;  
          fseek(fp,-1,1);  
          fputc(c,fp);  
          fflush(fp);  
      }      
  fclose(fp);  
   
  }  
  这个程序中在win-tc中运行时,只能将"example.c"文件中的第一个小写字母变成大写,而后面的字母却没有变化.请高手指点迷津. 问题点数:10、回复次数:5Top

1 楼alan001(星岛孤裔林郎君)回复于 2006-12-02 07:47:37 得分 0

for(i=0;i<4;i++)  
  {         c=fgetc(fp);  
          c=c-32;  
          fseek(fp,-1,1);  
          fputc(c,fp);  
          //fflush(fp);  
      }      
  Top

2 楼jixingzhong(瞌睡虫·星辰)回复于 2006-12-02 09:49:55 得分 0

程序没有问题   ...  
   
  fflush(fp);   可有可无,只是写文件的具体时间不同而已,   写的动作是一样的Top

3 楼jixingzhong(瞌睡虫·星辰)回复于 2006-12-02 09:50:40 得分 0

恩,   请确认在   文件中,  
  头四个字符都是   小写字母Top

4 楼flyseahappy(花花世界)回复于 2006-12-02 14:11:36 得分 0

jixingzhong(瞌睡虫·星辰)说fflush可有可无?  
  这我完全不同意,因为缓冲机制导致在某些编译环境下结果让你意外,  
  不信的话可以试试VC6Top

5 楼scmyzkr()回复于 2006-12-03 00:30:12 得分 0

fseek(fp,-1,1);  
  每次循环都将指针定位到了上一次的位置,当然就在原地不动了Top

相关问题

关键词

得分解答快速导航

  • 帖主:QQ_Paladin

相关链接

  • C/C++ Blog
  • C/C++类图书
  • C/C++类源码下载

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
北京创新乐知广告有限公司 版权所有, 京 ICP 证 070598 号
世纪乐知(北京)网络技术有限公司 提供技术支持
Copyright © 2000-2008, CSDN.NET, All Rights Reserved
GongshangLogo