C语言数据写入txt

怎样把三个double型变量的值写入txt文件,写在一行,再循环,得到三个新的值写在第二行,知道程序结束,谢谢
把创建的txt文件放在当前目录下是什么意思呢,当前目录指的是哪里?是正在编辑的c文件所在的地方吗?

double x ,y ,z;x=y=z=0.0;
FILE *fp;
fp=fopen("C:\\test.txt","w");
while(//循环条件//)
{
fprintf(fp,"%lf %lf %lf\n",x,y,z);
//给x,y,z赋新值//
}
fclose(fp);
温馨提示:答案为网友推荐,仅供参考
第1个回答  2012-05-31
#include<stdio.h>
#include<stdlib.h>
#include<conio.h>
void main()
{double a,b,c;
FILE *fp;
if((fp=fopen("my.txt","wb+"))==NULL)
{printf("Create File failure");
getch();
exit(1);
}
while(___) /*你的条件*/
{
/*scanf("%lf%lf%lf",&a,&b,&c); 这是自己输入数据*/
fprintf(("%lf%lf%lf",&a,&b,&c);
}
fclose(fp);
}
========================
把创建的txt文件放在当前目录下是什么意思呢,当前目录指的是哪里?是正在编辑的c文件所在的地方吗?
就是你的C文件将来要生成exe文件,这个exe文件所在的目录。调试时,就是编辑的c文件所在的地方追问

怎样才能让第二次循环的输入数据转行呢,现在是接在上次的数据后面。还有,如果是#define 一个常数能不能输出到文件里?谢谢

追答

fprintf(("%lf%lf%lf",&a,&b,&c);
变成fprintf(("%lf%lf%lf\r\n",&a,&b,&c);

本回答被提问者采纳
第2个回答  2017-06-22
可以使用C语言库函数中的文件操作函数,来写入txt。
1、在写入文件前,必须要先打开文件。
使用函数fopen,声明为:
FILE *fopen(const char *filename, const char *mode);
参数filename为要打开文件的文件名,可以包含文件路径。 mode为打开模式,对于txt文件,写入时可以使用"w"或者"a"。
"w"为写模式,如果文件不存在会被创建,已存在会被覆盖。
"a"为追加模式,新内容会追加在文件尾。
2、字符串数据的写入。
字符串写入文本文件,可以用fputs函数。声明为:
int fputs(const char * string, FILE * fp);
功能为向打开的文件指针fp指向的文件写入字符串string。当成功时返回非负整数,失败返回-1.
3、单个字符写入。
写入单个字符,可以使用fputc函数。声明为:
int fputc (int c, File *fp);
功能为向打开的文件指针fp指向的文件写入字符c。当成功时返回c的ascii码值,失败返回-1.
4、其它类型变量或复杂格式写入文件。
当需要写入其它类型,或者需要按格式写入时,可以使用fprintf函数。
int fprintf(FILE *fp, const char *fmt, ...);
该函数可以将fmt后续的参数,按照fmt指定的格式,写入到fp指向文件中。
fprintf可以完成fputs和fputc的完整功能,但效率略低,同时可以写入任何数据类型。
5、写入完成后,需要调用fclose关闭文件。
int fclose(FILE *fp);
函数功能为关闭fp指向的文件。