0
点赞
收藏
分享

微信扫一扫

C语言循环的重要性

在C语言里面,循环总是扮演着重要的角色。下面根据一个例子感受一下C语言循环的重要性。

第一,代码如下:

C语言循环的重要性_输入缓冲区

C语言循环的重要性_输入缓冲区_02

根据代码和结果可知,当把密码输入完毕时,不能继续输入Y或则N。查阅资料可知,代码里面含有输入函数,当程序运行时,计算机会出现一个输入缓冲区。输入123456,点击回车,此时缓冲区内有"123456"和"\n",123456存入到password数组里"\n"被getchar()函数获取。

C语言循环的重要性_程序运行_03

为了解决如上问题,在代码里面又添加一个getchar()函数便得以解决。

代码结果如下:

C语言循环的重要性_程序运行_04

C语言循环的重要性_c语言_05

但是,新的问题来了,当输入密码当中出现空格时,如"123456 abcd",又会出现以下问题。

C语言循环的重要性_程序运行_06

因为此时在输入缓冲区里面分别为"123456"、" "、"abcd"、"\n"。而程序里面只包含了三个输入函数,最后一个输入函数所得的是"a",所以直接输出是放弃确认。那要怎么才能解决此问题呢??

这是只需要在代码里面加入一个循环即可解决。代码结果如下:

int main()

{

char ret;

char ch;

char password[20] = { 0 };

printf("请输入密码:>");

scanf("%s", password);

while ((ch = getchar()) != '\n')

{

 ;

}

printf("请确认(Y/N):>");

ret = getchar();

if (ret == 'Y')

{

 printf("确认成功\n");

}

else

{

 printf("放弃确认\n");

}

return 0;

}C语言循环的重要性_输入缓冲区_07

综上所诉,可见循环在C语言中的重要性!!!

举报

相关推荐

0 条评论