A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

题目:有两个磁盘文件AB,各存放一行字母,要求把这两个文件中的信息合并(按字母顺序排列),输出到一个新文件C中。
1.程序分析:
2.程序源代码:
i nclude "stdio.h"
main()
{ FILE *fp;
int i,j,n,ni;
char c[160],t,ch;
if((fp=fopen("A","r"))==NULL)
{printf("file A cannot be opened\n");
exit(0);}
printf("\n A contents are :\n");
for(i=0;(ch=fgetc(fp))!=EOF;i++)
{c=ch;
putchar(c);
}
fclose(fp);
ni=i;
if((fp=fopen("B","r"))==NULL)
{printf("file B cannot be opened\n");
exit(0);}
printf("\n B contents are :\n");
for(i=0;(ch=fgetc(fp))!=EOF;i++)
{c=ch;
putchar(c);
}
fclose(fp);
n=i;
for(i=0;i<n;i++)
for(j=i+1;j<n;j++)
if(c>c[j])
{t=c;c=c[j];c[j]=t;}
printf("\n C file is:\n");
fp=fopen("C","w");

for(i=0;i<n;i++)
{ putc(c,fp);
putchar(c);
}
fclose(fp);
}


2 个回复

倒序浏览
c=ch这里 ,c=ch 等价 c[i]=ch吗?
回复 使用道具 举报
写的不错喔
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马