鱼C论坛

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

又来寻找大神了、、、、、

[复制链接]
发表于 2014-1-21 10:05:04 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
本帖最后由 Jane爱蓝黑墨水 于 2014-1-21 10:25 编辑

有两个磁盘文件“A"和"B",各存放一行字母,今要求把这两个文件中的信息合并(按字母顺序排列),输出到一个新文件”C"中去。
按照我下面这样打出来又不对啊。。求大神指教。。我还在摸索过程中。。
#include <stdio.h>
#include <stdlib.h>
#include <string.h>

main()
{
    FILE *fp;
    char a[100];
    char ch;
    int i=0,j,n,temp;
    if((fp=fopen("A.txt","r"))==NULL)
    {
        printf("cannot open this file\n");
        exit(0);
    }
    ch=fgetc(fp);
    while(ch!=feof(fp))
    {
        a[i]=ch;
        putchar(a[i]);
        i++;
    }
    fclose(fp);

    if((fp=fopen("B.txt","r"))==NULL)
    {
        printf("cannot open this file\n");
        exit(0);
    }
    ch=fgetc(fp);
    while(ch!=feof(fp))
    {
        a[i]=ch;
        putchar(a[i]);
        i++;
    }
    for(i=0;i<n;i++)
    {
        for(j=i+1;j<n;j++)
        {
            if(a[i]>a[j])
            {
                temp=a[i];
                a[i]=a[j];
                a[j]=temp;
            }
        }
    }
    if((fp=fopen("C.txt","w"))==NULL)
    {
        printf("cannot open this file\n");
        exit(0);
    }
    printf("C is:\n");
    for(i=0;i<n;i++)
    {
        fputc(a[i],fp);
        putchar(a[i]);
    }
    fclose(fp);
}


想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2014-1-21 12:46:18 | 显示全部楼层
//根据你的要求,写了个简短的,你的代码实在看不懂 什么意思,把简单的问题复杂化了
#include <stdio.h>
#include <stdlib.h>
#include <string.h>

main()
{
    FILE *fp;
    char a[100];
        char b[100];

    if((fp=fopen("d:\\A.txt","r"))==NULL)
    {
        printf("cannot open this file\n");
        exit(0);
    }
    fgets(a,strlen(a),fp);

    fclose(fp);

    if((fp=fopen("d:\\B.txt","r"))==NULL)
    {
        printf("cannot open this file\n");
        exit(0);
    }
    fgets(b,strlen(b),fp);
    fclose(fp);
       
        strcat(a,b);
    if((fp=fopen("d:\\C.txt","w"))==NULL)
    {
        printf("cannot open this file\n");
        exit(0);
    }
    printf("C is:%s\n",a);
    fputs(a,fp);
    fclose(fp);

        return 0;
}
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2014-1-21 13:28:30 | 显示全部楼层

能够合并了!!但是还要按字母排列。。。所以我觉得我脑壳转不过来啊。。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2014-1-21 15:47:22 | 显示全部楼层
Jane爱蓝黑墨水 发表于 2014-1-21 13:28
能够合并了!!但是还要按字母排列。。。所以我觉得我脑壳转不过来啊。。

都合并了还不会排列?多动手吧
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2014-1-21 16:08:37 | 显示全部楼层
牛头的主人 发表于 2014-1-21 15:47
都合并了还不会排列?多动手吧

恩恩,谢啦!!
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2014-1-21 16:48:50 | 显示全部楼层
Jane爱蓝黑墨水 发表于 2014-1-21 16:08
恩恩,谢啦!!

实在不会我给你程序
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2014-1-21 17:27:08 | 显示全部楼层
过来凑个热闹。。。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2014-1-21 17:50:59 | 显示全部楼层
牛头的主人 发表于 2014-1-21 16:48
实在不会我给你程序

#include <stdio.h>
#include <stdlib.h>
#include <string.h>

main()
{
    FILE *fp;
    char a[100];
    char b[100];
    char c[100];
    char ch;
    int i=0,n;

    if((fp=fopen("d:\\A.txt","r"))==NULL)
    {
        printf("cannot open this file\n");
        exit(0);
    }
    fgets(a,strlen(a),fp);

    fclose(fp);

    if((fp=fopen("d:\\B.txt","r"))==NULL)
    {
        printf("cannot open this file\n");
        exit(0);
    }
    fgets(b,strlen(b),fp);
    fclose(fp);



    if((fp=fopen("d:\\C.txt","w"))==NULL)
    {
        printf("cannot open this file\n");
        exit(0);
    }
    printf("C is:%s\n",c);
    fputs(c,fp);
    fclose(fp);

    return 0;

    for(;ch=fgetc(fp)!=EOF;i++)
    {
        a[i]=ch;
        putchar(a[i]);
    }
    for(;ch=fgetc(fp)!=EOF;i++)
    {
        b[i]=ch;
        putchar(b[i]);
    }
    int j;
    char temp;
    for(i=0;i<n-1;i++)
    {
        for(j=i+1;j<n;j++)
        {
            if(c[i]<c[j])
            {
                temp=c[i];
                c[i]=c[j];
                c[j]=temp;
            }

        }
    }
}

这是我试了N次没报错但是运行起来不对的代码。。。我感觉莫得问题了。。最后运行出来是一个问号。。。



想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2014-1-21 19:24:30 | 显示全部楼层
Jane爱蓝黑墨水 发表于 2014-1-21 17:50
#include
#include
#include

还有什么问题加我QQ吧,免得一直上论坛,1047564769
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2014-1-21 20:36:59 | 显示全部楼层
牛头的主人 发表于 2014-1-21 19:24
还有什么问题加我QQ吧,免得一直上论坛,1047564769

{:2_31:}谢谢啊!!
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-11-23 11:29

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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