本帖最后由 风过无痕1989 于 2020-9-29 01:27 编辑
这个程序是统计你输入了多少个大写字母 (你发的没有行号,看着不方便,那就看我复制下来的你的程序吧)
14行,我换个方向,你应该能看明白了,它就像我们所见的 2 <= ch <= 8 是一样的,只是在C语言程序中,不允许连着写,必须要分成两个表达式,中间用 “和 ”来连接,“和” 这个连接用两个 & 来表示;计数器,在程序里我已经用注释说明了,就不多说了。
count 与 ch 没有直接的关系,ch 是用来接收从键盘输入的字母的(无论大小写都接收),有了它,然后就到程序的第14行去比较,如果接收到的字母是介于大写字母 A 与大写字母 Z 之间的( 具体的判断参看字符表的 ASCII 码,大写字母 A 的 ASCII 码是 65,大写字母 Z 的 ASCII 码是 90 ),所以,第14 行又可以改写成:if (65 <= ch && ch <= 90)。
- #include<stdio.h>
- int main()
- {
- int ch, count = 0; // 定义一个用来充作计数器的整型变量 count,并初始化为0;
-
- printf("请输入一行英文句子:");
-
- while ( (ch = getchar() ) != '\n')
- {
- if ('A' <= ch && ch <= 'Z') // 我将 ch >= 'A' 换成 'A' <= ch 这样,就比较符合我们平常的习惯了
- {
- count = count + 1; // 这里就是对大写字母进行统计,符合上一条的条件就说明有一个大写字母,计数器就加1
- }
-
-
- }
-
- printf("你总共输入了%d个大写字母!\n", count);
-
- return 0;
- }
复制代码