新手,发贴不很会;编程,函数不很懂
#include<stdio.h>main()
{int a,b,c,d,i;
FILE *dfp;
if((dfp=fopen("f:d.txt","a"))==NULL)
{printf("no\n");
exit(1);
}
fprintf(dfp,"\n");
for(c=1;c<=9;c++)
{for(d=1;d<=c;d++)
{ i=c*d;
fprintf(dfp,"%d*%d=%d\t",d,c,i);
}
fprintf(dfp,"\n");
}
fclose(dfp);
}
----------------解决方案--------------------------------------------------------
#include<stdio.h>
main()
{
int a,b,c,d,i;
FILE *dfp;
if((dfp=fopen("f:\\d.txt","a"))==NULL)/* f:\\ */
{
printf("open error\n");
exit(0);
}
fprintf(dfp,"\n");
for(c=1;c<=9;c++)
{
for(d=1;d<=c;d++)
{
i=c*d;
fprintf(dfp,"%d*%d=%d\t",d,c,i);
}
fprintf(dfp,"\n");
}
fclose(dfp);
}
----------------解决方案--------------------------------------------------------
好像改过之后结果还是一样的吧,不过我不很理解printf("open error\n");
exit(0); 我刚学,所以不很懂,什么情况下会打开出错?好象永远不会出错啊
----------------解决方案--------------------------------------------------------
想请问2楼个问题,如果我想把f:\\d.txt中的文件名d变成一个变量i,并且i>'a'&&i<'z',这样能输出26个依次为a.txt,b.txt.............z.txt的文件吗?
----------------解决方案--------------------------------------------------------
可以的
char str[500];
sprintf(str, "f:\\%d.txt", i);
这个str里就是文件名d变成一个变量i的结果
----------------解决方案--------------------------------------------------------
楼主先学习一下,怎么操作字符串
----------------解决方案--------------------------------------------------------
是,看书至关重要
----------------解决方案--------------------------------------------------------
不好意思,麻烦各位了,我上星期才看书的!我争取自己把这个加上去!
[[it] 本帖最后由 yaozidm124 于 2008-4-20 17:40 编辑 [/it]]
----------------解决方案--------------------------------------------------------
回复 5# 的帖子
有点还没弄懂,就是f:\\%d.txt
这么多文件,怎么打开和关闭?
----------------解决方案--------------------------------------------------------
根据flyue的提示,我理解成为以下的程序,但是不知道f:\\%d.txt怎么进行多文件的打开
#include<stdio.h>
main()
{int a,b,c,d,i,j,k;
FILE *dfp,*ffp;
char str[500];
// if((ffp=fopen("f:\\%*.txt","a"))==NULL)
// {printf("no\n");
// exit(1);
// }
if((dfp=fopen("f:\\d.txt","a"))==NULL)
{printf("no\n");
exit(1);
}
fprintf(dfp,"\n");
for(c=1;c<=9;c++)
{ for(d=1;d<=c;d++)
{ i=c*d;
fprintf(dfp,"%d*%d=%d\t",d,c,i);
}
fprintf(dfp,"\n");
}
//************************************************
i=0;
while(!feof(dfp))
{fscanf(dfp,"%s",str);
if(i>=500)
printf("str not enough!");
exit(1);
}
i='a';
while(i<'z')
{fprintf(str,"f:\\%d.txt",i);
i++;
}
// fclose(ffp);
fclose(dfp);
}
/*可以的
char str[500];
sprintf(str, "f:\\%d.txt", i);
这个str里就是文件名d变成一个变量i的结果*/
----------------解决方案--------------------------------------------------------