鱼C论坛

 找回密码
 立即注册
查看: 1779|回复: 7

AB中我输入的是字符怎么用c语言打开文件后是这样的

[复制链接]
发表于 2014-4-25 16:09:05 | 显示全部楼层 |阅读模式
1鱼币
file:///C:\Users\Administrator\AppData\Roaming\Tencent\Users\1226259926\QQ\WinTemp\RichOle\5%C9U]ZGJ{){LL]RJ%C43YV.jpg
5U]ZGJ{){LL]RJ3YV.jpg

最佳答案

查看完整内容

我将你代码的排序部分注视了。具体修改你还是对照下吧,不清楚的地方回复我
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2014-4-25 16:09:06 | 显示全部楼层
  1. #include<stdio.h>
  2. #include<stdlib.h>
  3. #include<string.h>
  4. void main()
  5. {
  6.         FILE *fp1,*fp2,*fp3 ;
  7.         int i , j , n , k ;
  8.         char c[100] , t , ch ;

  9.         if((fp1 = fopen("G://A.txt" , "r" )) == NULL)//if(fp = fopen("A" , "r" ) == NULL)错!
  10.         {
  11.                 printf("can not open the file\n");
  12.                 exit(0) ;
  13.         }

  14.         printf("\nfile A:\n");

  15.         for(i = 0 ; ch  != EOF ; i ++)
  16.         {
  17.                         ch = fgetc(fp1);
  18.             c[i] = ch ;
  19.             putchar(ch) ;
  20.         }

  21.         fclose(fp1);
  22.         k = i ;

  23.         if((fp2 = fopen("G://B.txt" , "r")) == NULL)
  24.         {
  25.                 printf("can not open the file\n");
  26.                 exit(0);
  27.         }

  28.         printf("\nflie B:\n");
  29.                
  30.                 ch = fgetc(fp2);
  31.         for(i = k-1 ; ch != EOF ; i ++)
  32.         {
  33.             c[i] = ch ;
  34.             putchar(ch);
  35.                         ch = fgetc(fp2);
  36.         }

  37.         fclose(fp2);
  38.         n = i ;
  39.                 /*
  40.         for(i = 0 ; i < n ; i ++)
  41.                         for(j = i + 1 ; j < n ; j ++)
  42.                 if(c > c[j])
  43.                 {
  44.                                         t = c ;
  45.                     c = c[j] ;
  46.                     c[j] = t ;
  47.                 }
  48.                 */

  49.        printf("\nfile C:\n");
  50.        fp3 = fopen("C.txt" , "w");

  51.        for(i = 0 ; i < n ; i ++)
  52.        {
  53.            fputc(c[i] , fp3);
  54.            putchar(c[i]) ;
  55.        }

  56.        fclose(fp3);
  57.        printf("\n");
  58. }
复制代码
我将你代码的排序部分注视了。具体修改你还是对照下吧,不清楚的地方回复我
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2014-4-25 16:23:02 | 显示全部楼层
请把AB文件的原内容贴一下
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2014-4-25 16:40:25 | 显示全部楼层
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2014-4-25 16:41:36 | 显示全部楼层
sidfate 发表于 2014-4-25 16:23
请把AB文件的原内容贴一下

//有两个磁盘文件“A”“B”,各存放一行字母,要求把这两个文件的信息合并(按字母顺序排列),输出到一个新文件“C”中
#include<stdio.h>
#include<stdlib.h>
#include<string.h>
void main()
{
        FILE *fp ;
        int i , j , n , k ;
        char c[100] , t , ch ;
        if((fp = fopen("G://A.txt" , "r" )) == NULL)//if(fp = fopen("A" , "r" ) == NULL)错!
        {
                printf("can not open the file\n");
                exit(0) ;
        }
        printf("\nfile A:\n");
        for(i = 0 ; (ch = fgetc(fp) != EOF) ; i ++)
        {
                c = ch ;
                putchar(ch) ;
        }
        fclose(fp);
        k = i ;
        if((fp = fopen("G://B.txt" , "r")) == NULL)
        {
                printf("can not open the file\n");
                exit(0);
        }
        printf("\nflie B:\n");
        for(i = k ; (ch = fgetc(fp) != EOF) ; i ++)
        {
                c = ch ;
                putchar(ch);
        }
        fclose(fp);
        n = i ;
        for(i = 0 ; i < n ; i ++)
                for(j = i + 1 ; j < n ; j ++)
                        //if(strcmp(c , c[j]) >= 0)
                        if(c > c[j])
                        {
                                t = c ;
                                c = c[j] ;
                                c[j] = t ;
                        }
                        printf("\nfile C:\n");
                        fp = fopen("C.txt" , "w");
                        for(i = 0 ; i < n ; i ++)
                        {
                                fputc(c , fp);
                                putchar(c) ;
                        }
                        fclose(fp);
                        printf("\n");
        }
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2014-4-25 17:18:28 | 显示全部楼层
ScreenClip.png
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2014-4-25 20:10:43 | 显示全部楼层

大神,我爱你!我还有一个问题,你顺带帮我看看吧
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2014-4-26 09:29:23 | 显示全部楼层
学习了!《,,,,,,,,
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-5-7 15:58

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表