| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 407 人关注过本帖
标题:帮忙看看文件里字符排序的问题
只看楼主 加入收藏
liyangy
Rank: 2
等 级:论坛游民
帖 子:6
专家分:10
注 册:2010-1-29
结帖率:50%
收藏
 问题点数:0 回复次数:7 
帮忙看看文件里字符排序的问题
#include "stdio.h"
#include "stdlib.h"
void main()
{
  FILE *fp1,*fp2,*fp3;
  char ch;
  char c[100];
  char temp;
  int l1,n;
  fp1=fopen("13_5_A.txt","r");
  if (fp1==NULL)
  {
      printf("can't open the file 13_5_a_A");
      exit(0);
  }

  fp2=fopen("13_5_B.txt","r");
  if (fp2==NULL)
  {
      printf("can't open the file 13_5_a_A");
      exit(0);
  }
  printf("file:A\n");
  for (int i=0;(ch=fgetc(fp1))!=EOF;i++)
  {
    c[i]=ch;
    putchar(c[i]);
  }
  l1=i;
  fclose(fp1);
  
  printf("\nfile:B\n");
  for (i=l1;(ch=fgetc(fp2))!=EOF;i++)
  {
      c[i]=ch;
      putchar(c[i]);
  }
  printf("\n");
  fclose(fp2);
  n=i;

  for (i=0;i<n;i++)
  {  
      for (int j=i+1;j<n;j++)
      {
        if(c[i]>c[j])
        {
            temp=c[i];
            c[i]=c[j];
            c[i]=temp;
        }
      }
  }
 fp3=fopen("13_5_C.txt","w");
  if (fp3==NULL)
  {
    printf("can't open the file 13_5_a_A");
    exit(0);
  }
  printf("file:C\n");
for (i=0;i<n;i++)
{
    //    fprintf(fp3,"%c",c[i]);
    putc(c[i],fp3);
    putchar(c[i]);
}
printf("\n");
fclose(fp3);
}

我将两个文件里的字符读取存在C数组中 对C数组排序后读到13_5_C文件中,但实现不了排序功能
搜索更多相关主题的帖子: void include file 
2011-05-01 11:34
hellovfp
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:禁止访问
威 望:30
帖 子:2976
专家分:7697
注 册:2009-7-21
收藏
得分:0 
说明你的排序有问题啊。

我们都在路上。。。。。
2011-05-01 11:57
liyangy
Rank: 2
等 级:论坛游民
帖 子:6
专家分:10
注 册:2010-1-29
收藏
得分:0 
郁闷 把一个字符j写成i 是说那是有问题
2011-05-01 12:09
laoyang103
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
来 自:内蒙古包头
等 级:贵宾
威 望:19
帖 子:3082
专家分:11056
注 册:2010-5-22
收藏
得分:0 
把文件里面的字符串用一个字符数组拿到内存里面去

然后排序输出到文件  至于怎么排序不用我说了吧

怎么感觉自己说的都是废话

                                         
===========深入<----------------->浅出============
2011-05-01 12:15
hellovfp
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:禁止访问
威 望:30
帖 子:2976
专家分:7697
注 册:2009-7-21
收藏
得分:0 
楼上废话?不可能吧?
唉,某些事儿其实说了也是白说,还是。。。。。

我们都在路上。。。。。
2011-05-01 12:17
laoyang103
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
来 自:内蒙古包头
等 级:贵宾
威 望:19
帖 子:3082
专家分:11056
注 册:2010-5-22
收藏
得分:0 
还是去写代码吧  呵呵

                                         
===========深入<----------------->浅出============
2011-05-01 12:30
xiaodin1
Rank: 1
等 级:新手上路
帖 子:9
专家分:0
注 册:2011-4-27
收藏
得分:0 
请问FILEB 是做什么用的??
2011-05-01 13:37
xiaodin1
Rank: 1
等 级:新手上路
帖 子:9
专家分:0
注 册:2011-4-27
收藏
得分:0 
代码的意思是:将A和B文件中的字符读到缓冲区然后进行排序,再写入文件C。。。在交换的时候写错了,是
for (i=0;i<n;i++)
  {  
      for (int j=i+1;j<n;j++)
      {
        if(c[i]>c[j])
        {
            temp=c[i];
            c[i]=c[j];
            c[j]=temp;
        }
      }
  }
才对!
2011-05-02 09:03
快速回复:帮忙看看文件里字符排序的问题
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.014866 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved