当前位置:编程学习 > C/C++ >>

我的这个c语言小程序有什么问题?

//程序: #include<stdio.h> main() { FILE *fp,*fp1; char ch; double dou; fp=fopen("mubiao.txt","r"); fp1=fopen("jieguo.txt","w+"); ch=getc(fp); while(!feof(fp)) { if('X'==ch) { fscanf(fp,"%f",&dou); fprintf(fp1,"x%f ",dou); printf("x%f ",dou); } if('Y'==ch) { fscanf(fp,"%f",&dou); fprintf(fp1,"y%f\n",dou); printf("y%f\n",dou); } fscanf(fp,"%c",&ch); } fclose(fp); fclose(fp1); } //程序结束 在程序的可执行文件所在的文件夹中有一个文本文件名为:mubiao.txt,这个文本文件的内容为: G00X1.5Y2.3 G01X10.5Y17.6 这个程序的目的是把mubiao.txt中的X与Y后面的浮点数输出到另一个名为jieguo.txt的文件中。
追问:给了路径还是不行呀,我的输出文本“jieguo.txt”中X和Y后面都是0.000000结果不应该是:
X0.000000 Y0.000000
......
应该是:
X1.5Y2.3
......不明白你的意思,可以给出更改后的可执行代码吗?结果不应该是:
X0.000000 Y0.000000
......
应该是:
X1.5Y2.3
......
答案:fp=fopen("C:\\mubiao.txt","r");
	fp1=fopen("C:\\jieguo.txt","w+");
给个路径
x-92559604329505835000000000000000000000000000000000000000000000.000000 y-925596
04391763464000000000000000000000000000000000000000000000.000000
x-92559604598889817000000000000000000000000000000000000000000000.000000 y-925596
04674317334000000000000000000000000000000000000000000000.000000
Press any key to continue
其他:目前看来没什么不对的地方啊 %f的问题 写入mubiao.txt 中的2.3 应该不是double 类型,是字符串类型。需要用字符串得到后
再转换成double 型, 你可以用文件操作把mubiao.txt的内容格式输入,再测试一下。 什么问题啊?结果不对吗?

上一个:谁能帮我看出错误~难道没人能看出来吗~c语言问题
下一个:怎么用C语言控制16*16的LED显示汉字数字,汉字比如“欢迎光临”,数字比如“520”; 谢谢高手指点迷津!

CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,