luckin 发表于 2014-6-9 09:17:21

文件的输入输出

从键盘输入一串字符,以“!”结束,将其中的小写字母全部转换成大写字母,其他字符保持不变,将该字符串输出到文件“upper.txt”中,再将文件中的内容读出显示在屏幕上。

输入样例
10-1, what a wonderful day!
输出样例
10-1, WHAT A WONDERFUL DAY


HHR 发表于 2014-6-9 09:17:22

luckin 发表于 2014-6-9 10:59 static/image/common/back.gif
再将文件中的内容读出显示在屏幕上。一直错误。

#include "stdio.h"
#include "stdlib.h"
#include "string.h"

void convert(char *str)
{
        while (*str!='!')
        {
                if (*str>='a' && *str<='z')
                {
                        *str-=32;
                }
                str++;
        }
        *str='\0';
       
}

int main( void )
{
        FILE *fp;
        char str, ch;
//        int x,ch;
       
        gets(str);
        convert(str);
        puts( str );

        if( ( fp = fopen("c:\\test.txt", "w+") ) == NULL )
        {
                puts("What ?\n");
                system("pause");
                exit(0);
        }

        fputs(str,fp);
        fclose( fp );
        system("pause");
       
        if( ( fp = fopen("c:\\test.txt", "r") ) == NULL )
        {
                puts("What ?\n");
                system("pause");
                exit(0);
        }

        ch=fgetc(fp);
        while( ! feof( fp ) )
        {
                printf("%c",ch);
                ch=fgetc(fp);
        }
        fclose(fp);
        return 0;
}// 照程序来看,就是写入到文件里面后没有及时关闭保存的缘故。。

牡丹花下死做鬼 发表于 2014-6-9 09:52:11

←_← 给个思路用 getchar()逐个读取判断ASCII 即可

牡丹花下死做鬼 发表于 2014-6-9 10:25:21

文件的操作如果不会可以先去看看甲鱼的相关视频 这题目没多少难度的
要自己多动手才能有提高

luckin 发表于 2014-6-9 10:59:55

本帖最后由 luckin 于 2014-6-9 11:01 编辑

牡丹花下死做鬼 发表于 2014-6-9 10:25 static/image/common/back.gif
文件的操作如果不会可以先去看看甲鱼的相关视频 这题目没多少难度的
要自己多动手才能有提高
#include <stdio.h>

void convert(char *str)
{
      while (*str!='!')
      {
                if (*str>='a' && *str<='z')
                {
                        *str-=32;
                }
                str++;
      }
      *str='\0';

}

main()
{
      FILE *fp;
      char str;
      int x,ch;
      fp = fopen("c://test.txt","w+");
      gets(str);
      convert(str);
      fputs(str,fp);
      
      //printf("%s\n",str);
      ch=fgetc(fp);
      while(ch!='\0')
      {
                printf("%c",ch);
                ch=fgetc(fp);
      }
      fclose(fp);
}再将文件中的内容读出显示在屏幕上。一直错误。

xuheng 发表于 2014-6-25 14:40:27

支持小甲鱼~~
页: [1]
查看完整版本: 文件的输入输出