| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1479 人关注过本帖
标题:指针、文件计分作业---排序输出文件
只看楼主 加入收藏
D2284581470
Rank: 3Rank: 3
来 自:沈阳
等 级:论坛游侠
威 望:2
帖 子:169
专家分:147
注 册:2019-12-8
结帖率:58.33%
收藏
已结贴  问题点数:20 回复次数:8 
指针、文件计分作业---排序输出文件
【问题描述】读取一个文本文件1.txt,然后将这个文件的内容,排序写到另一个文件2.txt中。

【输入形式】从文件1.txt中读信息。

【输出形式】排序内容写入2.txt文件中。

【样例输入】

is worth doing well

【样例输出】

doing is well worth

【样例说明】

【评分标准】
搜索更多相关主题的帖子: 作业 文件 排序 输出 txt 
2019-12-25 23:05
D2284581470
Rank: 3Rank: 3
来 自:沈阳
等 级:论坛游侠
威 望:2
帖 子:169
专家分:147
注 册:2019-12-8
收藏
得分:0 
这个我实在不会了,没思路
2019-12-25 23:05
D2284581470
Rank: 3Rank: 3
来 自:沈阳
等 级:论坛游侠
威 望:2
帖 子:169
专家分:147
注 册:2019-12-8
收藏
得分:0 
还没有人吗,版主
2019-12-26 08:45
八画小子
Rank: 11Rank: 11Rank: 11Rank: 11
等 级:贵宾
威 望:37
帖 子:709
专家分:2063
注 册:2010-11-11
收藏
得分:2 
一点思路都没有吗?
2019-12-26 10:25
纯蓝之刃
Rank: 12Rank: 12Rank: 12
等 级:贵宾
威 望:76
帖 子:570
专家分:3727
注 册:2019-7-29
收藏
得分:15 
程序代码:
#include <stdio.h>
#include <stdlib.h>
#include <string.h>

int main()
{
    FILE *fin=NULL,*fout=NULL;
    int num=0,i,j,k=0;
    fin=fopen("1.txt","r");

    char **a=NULL,ch[50];

    a=(char**)calloc(num+1,sizeof(char*));
    a[num]=(char*)calloc(50,sizeof(char));

    while(1)
    {
        a=(char**)realloc(a,sizeof(char*)*(num+1));
        a[num]=(char*)calloc(50,sizeof(char));

        for(j=0;a[num][j-1]!=' '&&a[num][j-1]!=EOF;j++)
            a[num][j]=fgetc(fin);

        if(a[num][j-1]==EOF)
        {
            a[num][j-1]=' ';
            break;
        }

        num++;
    }

    fclose(fin);
    for(i=0;i<num;i++)          //冒泡排序
    {
        for(j=0;j<num-i;j++)
        {
            do
            {
                if((a[j][k]>a[j+1][k]))
                {
                    memcpy(ch,a[j],50);
                    memcpy(a[j],a[j+1],50);
                    memcpy(a[j+1],ch,50);
                    break;
                }
                k++;
            }while(a[j][k-1]==a[j+1][k-1]);
            k=0;
        }
    }

    fout=fopen("2.txt","w");

    for(i=0;i<num+1;i++)        //输出
        fprintf(fout,"%s",a[i]);

    fclose(fout);

    free(a);                    //释放动态内存
    for(i=0;i<num;i++)
        free(a[i]);

    return 0;
}

一沙一世界,一花一天堂。无限掌中置,刹那成永恒。
2019-12-26 13:46
吹水佬
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:451
帖 子:10607
专家分:43186
注 册:2014-5-20
收藏
得分:3 
文件处理有针对性,最好能提供样板文件看看。
2019-12-26 15:09
D2284581470
Rank: 3Rank: 3
来 自:沈阳
等 级:论坛游侠
威 望:2
帖 子:169
专家分:147
注 册:2019-12-8
收藏
得分:0 
回复 4楼 八画小子
确实,我现在在看楼下版主的回复
2019-12-26 15:49
D2284581470
Rank: 3Rank: 3
来 自:沈阳
等 级:论坛游侠
威 望:2
帖 子:169
专家分:147
注 册:2019-12-8
收藏
得分:0 
回复 5楼 纯蓝之刃
谢谢版主,我一定弄懂
2019-12-26 15:50
D2284581470
Rank: 3Rank: 3
来 自:沈阳
等 级:论坛游侠
威 望:2
帖 子:169
专家分:147
注 册:2019-12-8
收藏
得分:0 
回复 6楼 吹水佬
好的,谢谢
2019-12-26 15:50
快速回复:指针、文件计分作业---排序输出文件
数据加载中...
 
   



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

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