北京做试管多少钱啊:求助编程高手

来源:百度文库 编辑:高校问答 时间:2024/04/29 00:20:14
帮我看看这段程序,为什么总是不停循环?就算password和confirm相等,还是循环,为什么?
#include <stdio.h>
#include <conio.h>
#include <string.h>
#define MAXBUFFER 255

void main(void)
{
FILE *fp;
char password[MAXBUFFER],confirm[MAXBUFFER];
int i = -1;
printf("Please Enter the password you want to set\n");

//open the file on disk C:\ for writing
fp = fopen("C:\\Record2","w");

//read input
do {
printf("Password:\n");
do
{
i++;
password[i] = getch();
puts("*");
}
while(i < 254 && password[i] != '\n' && password[i] != '\r');
password[++i] = '\0';

printf(" Confirm:\n");
do
{
i++;
confirm[i] = getch();
puts("*");
}
while(i < 254 && confirm[i] != '\n' && confirm[i] != '\r');
confirm[++i] = '\0';

if(strcmp(password,confirm))
printf("Different input!Please try Again!\n");

}while (strcmp(password,confirm)) ;
/*end do while*/

fprintf(fp,"%s\n",password);
fclose(fp);//close the file

printf("***Data has been written to the file'C:\\Record2.txt'.***\n");

printf("\nYour password is: %s\n", password);
getch();

printf("\n");
printf("Please Remember your password!");
}//end main

我在之前的帖子里已经回过了,楼主去看下吧