大神们救救。。我真的要吐血了
char mm1[9]={"admin888"};
void xg()//修改
{
int count;
char ys[9], xy[9],xe[9],d,dq[9];
FILE *pp,*pa;
pp = fopen("C:\\Users\\Administrator\\Desktop\\VC\\银行密码.txt","r");
if( fgets(dq,9,pp)!=NULL)
//if( fread(&dq,8,1,pp)==1)//这两个后来都可以了
// fscanf(pp,"%s",dq);
dq[8]='\0';
fclose(pp);
gl:// system("cls");
printf("请输入原密码:");
count=0;
do
{
scanf("%s",ys);
if(ys[0]=='1'&&ys[1]=='2'&&ys[2]=='3')
goto dl;
if(strcmp(ys,dq)!=0 )
printf("密码输入错误,请从新输入(输入123退出):");
}while(strcmp(ys,dq)!=0);
printf("请输入新密码(八位): ");
fflush(stdin);
while((d=getchar())!='\0')
{
xy[count]=d;
count++;
if(count>=8)
{
xy[8]='\0';
break;
}
}
printf("再次输入新密码: ");
count=0;
fflush(stdin);
while((d=getchar())!='\0')
{
xe[count]=d;
count++;
if(count>=8)
{
xe[8]='\0';
break;
}
}
if(strcmp(xy,xe)!=0)
{ printf("密码输入不一致,请从新输入(按任意键)");
getch();
goto gl;
}
else
{
strcpy(mm1,xy);
pa = fopen("C:\\Users\\Administrator\\Desktop\\VC\\银行密码.txt","w");
if(fputs(mm1,pa)!=EOF)
{
printf("%s",mm1);//这里要删除的奥。。。。。。。。。。。。。。
printf("修改成功,请从新登入");
goto cl;
}
else
{ printf("修改出错,请从新修改:");
goto gl;
}
}
fclose(pa);
dl:
system("cls");
printf("请从新登入:\n");
cl:;
}
在这个名为修改的函数中。。一开始最上面那从文本文件中读取8位密码的部分老出错。。用了三种办法。。用注释隐藏了两种。。三种都不行。。弄了2个小时,,没结果,,今早一运行,,,能读取了,,,很无语。。。
今天是下面那部分写入顺序文件的部分。。搞了半天,,,那个要删除的printf能输出正常的mm1,但是就是写不进文本文件。。运行是提示修改成功那段程序。。可文本文件硬是什么都没有。。然后把这部分截出来单独运行。。他又能写进去。。3个半小时了。。。我都快疯了。。。我承认我很水。。。希望大神们救救。。。