#include<stdio.h>
#include<stdlib.h>
#include<string.h>
//交换字母的代码 
void swap(char *s,int i,int j)
{
	char t = s[i];
	s[i] = s[j];
	s[j] = t; 
} 
//选择排序函数 
void select_sort(char *str)
{
	int i,j;
	int len = strlen(str);
	//选择排序 
	for(i = 0;i<len;i++)
	{
		int min = i;
		for(j = i + 1;j<len;j++)
		{
			if(str[j]<str[min])
				min = j;
		} 
		swap(str,min,i);
	}
}

int main(void)
{
	FILE *fa,*fb,*fc;
	char buf[1024] = {0};//初始化
	
	//打开文件的方式 
	fa = fopen("E:\\A.txt","r");
	fb = fopen("E:\\B.txt","r");
	fc = fopen("E:\\C.txt","w");
	
	/*fgets函数用来从文件中读入字符串。
	fgets函数的调用形式如下:fgets(str,n,fp);
	此处,fp是文件指针;
	str是存放在字符串的起始地址;
	n是一个int类型变量
	
	注意: 
	fget () 函数中的 size 如果小于字符串的长度,
	那么字符串将会被截取;
	如果 size 大于字符串的长度则多余的部分系统会自动用 '\0' 填充
	*/
	fgets(buf,1024,fa); //在fa指向的文件里的字符串读入到buf中,buf为字符数组的开始地址 
	int len = strlen(buf);
	
	fgets(buf+len,1024-len,fb);
	
	select_sort(buf);//调用排序函数对buf里面的的内容排序,从小到大 
	/*
	C 库函数 int fputs(const char *str, FILE *stream) 
	把字符串写入到指定的流 stream 中,但不包括空字符
	
	str -- 这是一个数组,包含了要写入的以空字符终止的字符序列
	stream -- 这是指向 FILE 对象的指针,该 FILE 对象标识了要被写入字符串的流
	
	*/ 
	fputs(buf,fc);//把buf里面的内容,存入到fc所指向的文件指针 
	
	fclose(fa);
	fclose(fb);
	fclose(fc);
	return 0;
	 
	 
}


点赞(0)
 

0.0分

0 人评分

C语言网提供由在职研发工程师或ACM蓝桥杯竞赛优秀选手录制的视频教程,并配有习题和答疑,点击了解:

一点编程也不会写的:零基础C语言学练课程

解决困扰你多年的C语言疑难杂症特性的C语言进阶课程

从零到写出一个爬虫的Python编程课程

只会语法写不出代码?手把手带你写100个编程真题的编程百练课程

信息学奥赛或C++选手的 必学C++课程

蓝桥杯ACM、信息学奥赛的必学课程:算法竞赛课入门课程

手把手讲解近五年真题的蓝桥杯辅导课程

评论列表 共有 0 条评论

暂无评论