fprintf 简介 c/c++语言函数: fprintf 功 能 传送格式化输出到一个文件中 用 法 #include stdio.h int fprintf( FILE *stream, const char *format, ... ); fprintf()函数根据指定的format(格式)(格式)发送信息(参数)到由stream(流)指定的文件. fprintf()只能和printf()一样工作. fprintf()的返回值是输出的字符数,发生错误时返回一个负值. 返回值 成功时返回转换的字节数,失败时返回一个负数. 在LINUX/UNIX操系统中成功返回0,失败返回-1。并置errno值. 程序例 /* Program to create backup of the AUTOEXEC.BAT file */ #include stdio.h int main(void) { FILE *in, *out; if ((in = fopen("//AUTOEXEC.BAT", "rt")) == NULL) { fprintf(stderr, "Cannot open input file./n"); return 1; } if ((out = fopen("//AUTOEXEC.BAK", "wt")) == NULL) { fprintf(stderr, "Cannot open output file./n"); return 1; } while (!feof(in)) fputc(fgetc(in), out); fclose(in); fclose(out); return 0; } 举例用法: #include stdio.h #include process.h FILE *stream; void main( void ) { int i = 10; double fp = 1.5; char s[] = "this is a string"; char c = '/n'; stream = fopen( "fprintf.out", "w" ); fprintf( stream, "%s%c", s, c ); fprintf( stream, "%d/n", i ); fprintf( stream, "%f/n", fp ); fclose( stream ); system( "type fprintf.out" ); } 屏幕输出: this is a string 10 1.500000 格式化规定符 %d 十进制有符号整数 %u 十进制无符号整数 %f 浮点数 %s 字符串 %c 单个字符 %p 指针的值 %e 指数形式的浮点数 %x, %X 无符号以十六进制表示的整数 %0 无符号以八进制表示的整数 %g 自动选择合适的表示法
创新互联主要为客户提供服务项目涵盖了网页视觉设计、VI标志设计、营销网站、网站程序开发、HTML5响应式网站建设、成都做手机网站、微商城、网站托管及网站维护、WEB系统开发、域名注册、国内外服务器租用、视频、平面设计、SEO优化排名。设计、前端、后端三个建站步骤的完善服务体系。一人跟踪测试的建站服务标准。已经为成都人造雾行业客户提供了网站营销推广服务。
修改如下:
#include stdio.h
#include math.h
#define PI 3.1415926
main()
{
FILE *fp;
fp=fopen("f:\\1.txt","w"); //根据你的文件位置修改路径。
int i,j;
double w,w1,w2,a,a1,z,z1,h,q,t,m;
double A1,A2,C1,C2,M1,M2,N1,N2;
for(i=0;i95;i++)
{ for(j=0;j10;j++)
{ a=-23.5+0.5*i;
a1=a/180*PI;
h=90-40+a;
m=0.5+0.5*j;
z1=atan(m);
z=z1/PI*180;
q=40.0/180*PI;
M1=1/m*sin(q)+cos(q)*cos(PI);
M2=1/m*sin(q)+cos(q)*cos(0);
N1=1/m*cos(q)-sin(q)*cos(PI);
N2=1/m*cos(q)-sin(q)*cos(0);
A1=-M1*N1*sin(a1);
A2=-M2*N2*sin(a1);
C1=N1*N1*cos(a1);
C2=N2*N2*cos(a1);
w1=acos(A1/C1);
w2=acos(A2/C2);
if(a0)
{ if(h=z) w=2*w1;
else w=2*fabs((w2-w1));
}
else
{ if(h=z) w=0;
else w=2*w2;
}
w=w/PI*180;
t=w/15;
fprintf(fp,"%6.1f",t);
}
fprintf(fp,"\n");
}
fclose(fp);
}
执行结果如下:
0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0
1.6 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0
2.3 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0
2.8 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0
3.3 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0
3.7 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0
4.1 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0
4.4 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0
4.7 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0
5.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0
5.3 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0
5.5 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0
5.8 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0
6.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0
6.3 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0
6.5 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0
6.7 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0
6.9 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0
7.1 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0
7.3 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0
7.5 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0
7.7 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0
7.9 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0
8.1 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0
8.3 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0
8.4 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0
8.6 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0
8.8 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0
9.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0
9.1 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0
9.3 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0
9.5 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0
9.6 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0
9.8 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0
10.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0
10.1 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0
10.3 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0
10.4 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0
10.6 3.5 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0
10.8 4.9 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0
10.9 6.1 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0
11.1 7.1 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0
11.2 8.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0
11.4 8.9 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0
11.5 9.7 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0
11.7 10.5 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0
11.8 11.2 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0
12.0 12.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0
12.0 12.0 0.6 0.3 0.2 0.1 0.1 0.1 0.1 0.1
12.0 12.0 1.2 0.5 0.3 0.3 0.2 0.2 0.2 0.1
12.0 12.0 1.8 0.8 0.5 0.4 0.3 0.3 0.2 0.2
12.1 12.0 2.4 1.0 0.7 0.5 0.4 0.4 0.3 0.3
12.1 12.0 3.0 1.3 0.8 0.6 0.5 0.4 0.4 0.3
12.1 12.0 3.7 1.5 1.0 0.8 0.6 0.5 0.5 0.4
12.1 12.0 4.3 1.8 1.2 0.9 0.7 0.6 0.5 0.5
12.1 12.0 5.1 2.0 1.4 1.0 0.8 0.7 0.6 0.6
12.1 11.9 5.9 2.3 1.5 1.2 0.9 0.8 0.7 0.6
12.2 11.9 6.8 2.6 1.7 1.3 1.1 0.9 0.8 0.7
12.2 11.9 7.9 2.9 1.9 1.4 1.2 1.0 0.9 0.8
12.2 11.9 9.4 3.1 2.1 1.6 1.3 1.1 0.9 0.8
12.2 11.9 11.7 3.4 2.2 1.7 1.4 1.2 1.0 0.9
12.2 11.9 11.7 3.7 2.4 1.8 1.5 1.3 1.1 1.0
12.2 11.9 11.7 4.0 2.6 2.0 1.6 1.4 1.2 1.0
12.3 11.9 11.7 4.3 2.8 2.1 1.7 1.5 1.3 1.1
12.3 11.9 11.7 4.7 3.0 2.3 1.8 1.6 1.4 1.2
12.3 11.9 11.6 5.0 3.2 2.4 2.0 1.7 1.4 1.3
12.3 11.9 11.6 5.4 3.4 2.6 2.1 1.8 1.5 1.3
12.3 11.9 11.6 5.8 3.6 2.7 2.2 1.9 1.6 1.4
12.3 11.9 11.6 6.2 3.8 2.9 2.3 2.0 1.7 1.5
12.4 11.9 11.6 6.6 4.0 3.0 2.4 2.1 1.8 1.6
12.4 11.9 11.5 7.1 4.3 3.2 2.6 2.2 1.9 1.7
12.4 11.9 11.5 7.7 4.5 3.3 2.7 2.3 2.0 1.7
12.4 11.9 11.5 8.3 4.7 3.5 2.8 2.4 2.1 1.8
12.4 11.8 11.5 9.3 5.0 3.7 3.0 2.5 2.2 1.9
12.4 11.8 11.5 11.2 5.3 3.9 3.1 2.6 2.3 2.0
12.5 11.8 11.4 11.2 5.6 4.0 3.2 2.7 2.4 2.1
12.5 11.8 11.4 11.1 5.9 4.2 3.4 2.8 2.5 2.2
12.5 11.8 11.4 11.1 6.2 4.4 3.5 3.0 2.6 2.3
12.5 11.8 11.4 11.1 6.5 4.6 3.7 3.1 2.7 2.3
12.5 11.8 11.4 11.0 6.9 4.8 3.8 3.2 2.8 2.4
12.5 11.8 11.3 11.0 7.4 5.1 4.0 3.3 2.9 2.5
12.6 11.8 11.3 11.0 7.9 5.3 4.2 3.5 3.0 2.6
12.6 11.8 11.3 11.0 8.5 5.6 4.4 3.6 3.1 2.7
12.6 11.8 11.3 10.9 9.5 5.8 4.5 3.8 3.2 2.8
12.6 11.8 11.3 10.9 10.6 6.1 4.7 3.9 3.4 3.0
12.6 11.8 11.2 10.9 10.6 6.5 4.9 4.1 3.5 3.1
12.6 11.8 11.2 10.8 10.5 6.8 5.2 4.2 3.6 3.2
12.7 11.8 11.2 10.8 10.5 7.2 5.4 4.4 3.8 3.3
12.7 11.8 11.2 10.8 10.5 7.7 5.6 4.6 3.9 3.4
12.7 11.7 11.1 10.7 10.4 8.3 5.9 4.8 4.1 3.6
12.7 11.7 11.1 10.7 10.4 9.5 6.2 5.0 4.2 3.7
12.7 11.7 11.1 10.7 10.3 10.1 6.5 5.2 4.4 3.8
12.8 11.7 11.1 10.6 10.3 10.0 6.9 5.4 4.6 4.0
12.8 11.7 11.0 10.6 10.2 10.0 7.4 5.7 4.8 4.1
12.8 11.7 11.0 10.6 10.2 9.9 8.0 6.0 5.0 4.3
可能用到的函数:
函数名:
fscanf
功
能:
从一个流中执行格式化输入,fscanf遇到空格和换行时结束,注意空格时也结束。这与fgets有区别,fgets遇到空格不结束。
用法:
int
fscanf(file
*stream,
char
*format,[argument...]);
file
*stream:文件指针;
char
*format:格式字符串;
[argument...]:输入列表。
例如:
file
*fp;
char
a[10];
int
b;
double
c;
fscanf(fp,"%s%d%lf",a,b,c)
返回值:整型,成功读入的参数的个数
函数名:fprintf
传送格式化输出到一个文件中,
可用于打印机输出。
用
法
#include
int
fprintf(
file
*stream,
const
char
*format,
...
);
fprintf()函数根据指定的format(格式)发送信息(参数)到由stream(流)指定的文件.
fprintf()只能和printf()一样工作.
fprintf()的返回值是输出的字符数,发生错误时返回一个负值.
返回值
若成功则返回输出字符数,若输出出错则返回负值。
示例
#include
int
main(void)
{
file
*in,
*out;
if
((in
=
fopen("\\autoexec.bat",
"rt"))
==
null)
{
fprintf(stderr,
"cannot
open
input
file.\n");
return
1;
}
if
((out
=
fopen("\\autoexec.bat",
"wt"))
==
null)
{
fprintf(stderr,
"cannot
open
output
file.\n");
return
1;
}
while
(!feof(in))
fputc(fgetc(in),
out);
fclose(in);
fclose(out);
return
0;
}
楼主的意思是输出你的结果把?
看我写的
==================================================================
#include
#include
int
main()
{
double
x,
a0,a1,f,fd;
x=1.0;
file
*fp;//建立一个文件操作指针
fp=fopen("1.txt","w+");//以追加的方式建立或打开1.txt,默认位置在你程序的目录下面
do
{a0=x;
f=((a0-18)*a0+95)*a0-150;
fd=(3*a0-36)*a0+95;
x=a0-f/fd;
}
while(x-a0=1.e-5);
printf("\nx=%.6f",x);
fprintf(fp,"\nx=%.6f",x);//同输出printf一样,以格式方式输出到文本中
fclose(fp);//关闭流
}
#include
"stdio.h"
#include
main()
{
FILE
*fp1;//定义文件流指针,用于打开读取的文件
FILE
*fp2;//定义文件流指针,用于打开写操作的文件
char
text[1024];//定义一个字符串数组,用于存储读取的字符
fp1
=
fopen("d:\\a.txt","r");//只读方式打开文件a.txt
fp2
=
fopen("d:\\b.txt","w");//写方式打开文件a.txt
while(fgets(text,1024,fp1)!=NULL)//逐行读取fp1所指向文件中的内容到text中
{
puts(text);//输出到屏幕
fputs(text,fp2);//将内容写到fp2所指向文件中
}
fclose(fp1);//关闭文件a.txt,有打开就要有关闭
fclose(fp2);//关闭文件b.txt