何艺铧 发表于 2021-12-13 21:26:42

求大伙!

#include <stdio.h>

int main()
{
    int i,count = 0;
    printf("请输入:");
    while (i=getchar() != '\n')
    {
      if (i >= 'A' && i <= 'Z')
      {
            count = count + 1;

      }

    }
    printf("%d", count);
   

    return 0;
}
while (i=getchar() != '\n')是什么意思啊
#include <stdio.h>

int main()
{
    int count = 0;
    printf("请输入:");
    while (getchar() != '\n')
    {
      count = count + 1;

    }
    printf("共%d个字节\n", count);
   

    return 0;
}
while (getchar() != '\n')是什么意思啊,两个有什么区别啊,不太懂getchar函数!

jackz007 发表于 2021-12-13 22:24:26

本帖最后由 jackz007 于 2021-12-13 22:27 编辑

    while ((i=getchar()) != '\n')
    {
      if (i >= 'A' && i <= 'Z')
      {
            count = count + 1;
      }
    }
      这一句
while ((i=getchar()) != '\n')
      括号中的条件
(i=getchar()) != '\n'
      是一个布尔表达式,首先执行
i = getchar()
      也就是获取从键盘输入的一个字符,然后赋值给变量 i
      然后判断布尔表达式
(i=getchar()) != '\n'
      (i=getchar()) 的值就是 i 的值,如果从键盘获取到的字符不是换行符 '\n',那么,整个布尔表达式的值就是真,就会执行循环体内的代码,否则,就会立即结束 while 循环。

何艺铧 发表于 2021-12-14 15:44:07

jackz007 发表于 2021-12-13 22:24
这一句

      括号中的条件




while (getchar() != '\n')是什么意思啊

jackz007 发表于 2021-12-14 15:55:30

本帖最后由 jackz007 于 2021-12-14 15:57 编辑

何艺铧 发表于 2021-12-14 15:44


while (getchar() != '\n')是什么意思啊

       如果用户按下的不是回车键,逻辑表达式 getchar() != '\n' 的值为真,就开始(或继续)循环,否则,逻辑表达式的值为假,就结束或退出循环。
页: [1]
查看完整版本: 求大伙!