C语言怎么保存输出数据

来源:百度知道 编辑:UC知道 时间:2024/06/14 21:27:09
因为程序输入1~50,求6个数的和为120时输出的数据过多,不能全部显示出来,想把结果保存到txt中,要求是用C语言编写,还望能标清注释,谢谢

#include <stdio.h>
#include <stdlib.h>
void main(){
int a,b,c,d,e,f,s,z,x,y;
printf("into frist number x \n");
scanf("%d",&x);
printf("into last number y \n");
scanf("%d",&y);
printf("into sum number z \n");
scanf("%d",&z);
if(x>y||x<0||z<x+15) return;
for(a=x;a<=y;a++)
for(b=a+1;b<=y;b++)
for(c=b+1;c<=y;c++)
for(d=c+1;d<=y;d++)
for(e=d+1;e<=y;e++)
for(f=e+1;f<=y;f++){
s=a+b+c+d+e+f;
if(s==z){
printf("%d,%d,%d,%d,%d,%d \n",a,b,c,d,e,f);
}
}
system("PAUSE");
}

执行的时候在后面加上重定向就行了
比如您的程序的名字是test.exe
运行test.ext > test.log
所有的程序执行结果就都被重定向到test.log里了

freopen("output.txt","w",stdout);//就是把控制台输出映射到output.txt里
在程序最开始加这句就可以了。

#include <stdio.h>
#include <stdlib.h>
#define PATH "./aa.txt"
void main(){
int a,b,c,d,e,f,s,z,x,y;
FILE *fp;
fp = fopen(PATH,"w+");
printf("into frist number x \n");
scanf("%d",&x);
printf("into last number y \n");
scanf("%d",&y);
printf("into sum number z \n");
scanf("%d",&z);
if(x>y||x<0||z<x+15) return;
for(a=x;a<=y;a++)
for(b=a+1;b<=y;b++)
for(c=b+1;c<=y;c++)
for(d=c+1;d<=y;d++)