永远把艰辛的付出看作是生命的必要; 即使没有收获的指望,也心平气静地继续耕种!

99/100 C Programs(合并文件)

上一篇 / 下一篇  2008-03-31 23:34:24 / 个人分类:C  

/*【程序99】
J{(Qw"n^ J0题目:有两个磁盘文件A和B,
y @a0zA~8J0各存放一行字母,要求把这两个文件中的信息合并(按字母顺序排列),
s.I[H;`T/N0   输出到一个新文件C中。
8yh$AU$iTs4\o01.程序分析:
Y ~h4b*[tq02.程序源代码:*/
$S/^GlO!S,f.p0
nJ$s r wf)e!D0#include "stdio.h"LUPA开源社区B\/B+fI%F+R%t
#define MAXFILE 160LUPA开源社区.@F t"DA h9I{ U$O
int main(void)
@x"`;wm,sT)B jT0{ LUPA开源社区r4m8\,AB1n5@ S!{c
    FILE *fp;LUPA开源社区;p!J7b:C1Uw:uK
    int i, j, n;LUPA开源社区5C9ET#i7G
    char c[MAXFILE], t, ch;
4~Uox^4J0    if((fp = fopen("A.txt", "r")) == NULL)
pO%pk(c2xp#Cz0    {LUPA开源社区q:Bcg5Zi:p
        printf("file A cannot be opened\n");
u/uu&J5C4A6e0        exit(0);LUPA开源社区Ec4Y z2|(?+o{
    }
cjHt\0Yw\%^3Fx0    printf("\n A contents are :\n");LUPA开源社区5L$xHI+St h\
    for(i = 0; (ch = fgetc(fp)) != EOF; i++)LUPA开源社区f4IbF#Z~n6q
    {
}d{\#k(\p:t0        c[i] = ch;
a tgHJ+F)gJ0        putchar(c[i]);
,w:Amdd!R0j(@H&L0    }
~yr:x*}a&wa/K0    fclose(fp);LUPA开源社区[ G%@r-W'C$q
LUPA开源社区sOd,qx*y
    if((fp = fopen("B.txt", "r")) == NULL)LUPA开源社区B4G^d)jh:L
    {LUPA开源社区 d1Dp}]#[Q _|#a
        printf("file B cannot be opened\n");LUPA开源社区i \4`9F'k
        exit(0);LUPA开源社区q }(XkzV)Q I0yq`)B
    }
qNw;NQP0    printf("\n B contents are :\n");LUPA开源社区,IO i-E(GM2a
    for(;( ch = fgetc(fp)) != EOF; i++)LUPA开源社区#\"Ki9^Ye(qe)R {
    {LUPA开源社区A{NU1^
        c[i] = ch;LUPA开源社区6[7e(y(h1mQ5s Q {
        putchar(c[i]);LUPA开源社区]-ymws1~*fv
    }LUPA开源社区Y^%{ LWP&ye ^I
    fclose(fp);
8b7Kpz{p8V"S7{0    n=i;LUPA开源社区YU%hy#N0m{`W+q
    for(i = 0; i < n; i++)LUPA开源社区j qx9`:D
        for(j = i + 1; j < n; j++)LUPA开源社区.V^5e {3u/T(S6M V \
            if(c[i] > c[j])
$hn(a/}9H`z3cG*|p0            {LUPA开源社区!`/D AWYDy;sq_@
                t = c[i];LUPA开源社区9Q%v;a-s5s,y&d'P;Ya
                c[i] = c[j];
+SVl1v`W0Qn-T#O \0                c[j] = t;LUPA开源社区Z!X'G3|k?m"O}
            }
Lb`L ZM#u0    printf("\n C file is:\n");LUPA开源社区s#w5xwBL MGg
    fp = fopen("C.txt","w");LUPA开源社区o9c7?cd;n;gC3H
    for(i=0;i<n;i++)LUPA开源社区abf`Qk4AT
    {LUPA开源社区n9byH#X0} {8oS
        putc(c[i],fp);LUPA开源社区E|)o:}']ECc
        putchar(c[i]);
)G Zs_o(A0    }
#o M5ri_0    fclose(fp);
KI$~![a0}

TAG:

 

评分:0

我来说两句

显示全部

:loveliness: :handshake :victory: :funk: :time: :kiss: :call: :hug: :lol :'( :Q :L ;P :$ :P :o :@ :D :( :)

日历

« 2008-10-12  
   1234
567891011
12131415161718
19202122232425
262728293031 

数据统计

  • 访问量: 2238
  • 日志数: 43
  • 图片数: 1
  • 文件数: 4
  • 建立时间: 2007-11-07
  • 更新时间: 2008-08-11

RSS订阅

Open Toolbar