ファイル操作で読み取りアルファベット順に並び替えて書き出したいのですが
下記プログラムで実行すると何も書き出されません。
どのように改善すれば良いのかご教授頂けると助かります。
#include<stdio.h>
#include<stdlib.h>
int main(void)
{
char str[500];
int a,i,j;
FILE *fin, *fout;
if ((fin = fopen("data5", "r")) == NULL)
{
printf("入力ファイルなし\n");
exit(1);
}
if ((fout = fopen("data6", "w")) == NULL)
{
printf("出力ファイルなし\n");
exit(1);
}
for (i = 0; i<200; i++)
{
for (j = 0; i<200-i; j++)
{
fscanf(fin, "%c", &str[i]);
if(str[i]>str[j])
{
a=str[i];
str[i]=str[j];
str[j]=a;
}
fprintf(fout,"%c",&str[i]);
}
fclose(fin);
fclose(fout);
}
return 0;
}