当前位置: 代码迷 >> C语言 >> 新手,发贴不很会;编程,函数不很懂
  详细解决方案

新手,发贴不很会;编程,函数不很懂

热度:324   发布时间:2008-04-20 03:55:46.0
新手,发贴不很会;编程,函数不很懂
#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);

}
搜索更多相关的解决方案: 函数  dfp  exit  int  

----------------解决方案--------------------------------------------------------
#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的结果*/
----------------解决方案--------------------------------------------------------
  相关解决方案