c语言中创建并修改文件时,请两个文件都没问题为什么第三个文件总是不行
#include<stdio.h>
#include<string.h>
#define Q 100
FILE *pa,*pb,*pc;
int T,m,i=0;
char a[Q],b[Q],c[Q];
/*创建文件1*/
void Creat1_Z()
{
if((pa=fopen("C: est1.txt","w+"))==NULL)
printf(" Cannot open this file! ");
else
{ printf(" Enter a string to File1: ");
getchar();
gets(a);
fputs(a,pa);
printf(" Success! ");
}
fclose(pa);
}
/*创建文件2*/
void Creat2_Z()
{
if((pb=fopen("C: est2.txt","w+"))==NULL)
printf(" Cannot open this file! ");
else
{ printf(" Enter a string to File2: ");
getchar();
gets(b);
fputs(b,pb);
printf(" Success! ");
}
fclose(pb);
}
/*创建文件3*/
void Creat3_Z()
{
if((pc=fopen("C: est3.txt","w+"))==NULL)
printf(" Cannot open this file! ");
else
{
printf(" Enter a string to File3: ");
getchar();
gets(c);
fputs(c,pc);
printf(" Success! ");
}
fclose(pc);
}
void menu()
{
printf("*****************判断两个文件是否相同***************** ");
printf(" 1:创建文件1 ");
printf(" 2:创建文件2 ");
printf(" 3:创建文件3 ");
printf(" 4:判断相似性 ");
printf(" 5:退出 ");
printf("####################请选择########################### ");
printf("**************************************************** ");
}
/**/
void main()
{
while(T!=5)
{
menu();
scanf("%d",&T);
switch(T)
{
case 1: Creat1_Z();break;
case 2: Creat2_Z(); break;
case 3: Creat3_Z(); break;
/*case 4: contrast();break;*/
case 5:break;
default: printf("输入错误!请重新输入! ");
}
}
}
我的测试没有问题啊(当然,若是最新的win10,你不能在C:创建文件的,我改了D:)
三个文件的代码完全相同,应该没有问题的
你的错误具体是什么?
下一篇:c++没有封装int吗
上一篇:php搜索为什么要用汉字转拼音