C语言for循环判定回车的问题
答案:2 悬赏:70 手机版
解决时间 2021-03-27 03:25
- 提问者网友:兔牙战士
- 2021-03-26 03:04
C语言for循环判定回车的问题
最佳答案
- 五星知识达人网友:舊物识亽
- 2021-03-26 04:35
#include
#include
int main()
{
char *key[10]={"Apple","Icecream","Pear","Banana","Keyword"},c[10];
int i,a;
printf("请输入学生座位号:");
scanf("%d",&a);
//吃掉输入座位号后的回车
getchar();
printf("请输入用户口令:");
//for循环应先进行!=的判断,再进行i++
for(i=0;(c[i]=getchar())!='\n';i++)
{
printf("*");
}
printf("\n");
c[i]='\0';
if(strcmp(key[a-1],c)!=0)
printf("口令错误!");
else
printf("口令正确,欢迎使用!");
return 0;
}追问你好,运行是没有问题的,可是换成了getchar()函数,这样子我输入密码的时候,不能实现密码用星号(*)掩盖,比如我输入Apple的时候,屏幕上会出现Apple和5个星号,有什么改进的办法吗?如果我还是用getch()函数,依旧无法跳出循环。
#include
int main()
{
char *key[10]={"Apple","Icecream","Pear","Banana","Keyword"},c[10];
int i,a;
printf("请输入学生座位号:");
scanf("%d",&a);
//吃掉输入座位号后的回车
getchar();
printf("请输入用户口令:");
//for循环应先进行!=的判断,再进行i++
for(i=0;(c[i]=getchar())!='\n';i++)
{
printf("*");
}
printf("\n");
c[i]='\0';
if(strcmp(key[a-1],c)!=0)
printf("口令错误!");
else
printf("口令正确,欢迎使用!");
return 0;
}追问你好,运行是没有问题的,可是换成了getchar()函数,这样子我输入密码的时候,不能实现密码用星号(*)掩盖,比如我输入Apple的时候,屏幕上会出现Apple和5个星号,有什么改进的办法吗?如果我还是用getch()函数,依旧无法跳出循环。
全部回答
- 1楼网友:逐風
- 2021-03-26 05:43
把getch改成getchar
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯