错的地方较多!
1, 首先字符串是不能用字符变量code1来存取的。
2, scanf中的 %s\n \n就是多余!如果带有\n,那么你输入时要按两次回车!!这一般不推荐。
3,getchar位置不对!
参考下面已修改的:
#include "stdio.h"
void main()
{
char code1[128],code2[128],code3[128],c,i;
do
{
printf("please input code\n");
scanf("%s",code1);
getchar();
printf("please input again\n");
scanf("%s",code2);
getchar();
}
while(strcmp(code1, code2) != 0);
for(i=1;i<=3;i++)
{
printf("\nplease input coded\n");
scanf("%s",&code3);
if(strcmp(code1, code3) == 0)
{
printf("you are right\n");
break;
}
else
printf("error\n");
}
}
#include
void main()
{
char code1,code2,code3,c,i;
do {
printf("please input code\n");
scanf("%c",&code1);
while ( (c = getchar()) != '\n' && c != EOF ) ;
printf("please input again\n");
scanf("%c",&code2);
while ( (c = getchar()) != '\n' && c != EOF ) ;
} while((code1)!=(code2));
for(i=1;i<=3;i++)
{
printf("please input coded\n");
scanf("%c",&code3);
while ( (c = getchar()) != '\n' && c != EOF ) ;
if(code1==code3)
{
printf("you are right\n");
break;
}
else
printf("error\n");
}
}
去看看这篇文章