bild 发表于 2021-10-14 10:50:07

请教下getchar的用法

#include<stdio.h>
int main()
{
        int count;
        printf("请输入英文句子;");
        while(getchar()>=65&&getchar()<=90)
        count=count+1;
        printf("有%d个大写字母",count);
        return 0;
}
这是个求输入字符中有多少个大写字母的代码,但是一直没法算出正确的数

村里小黑 发表于 2021-10-14 11:33:27

本帖最后由 村里小黑 于 2021-10-14 12:16 编辑

#include<stdio.h>
int main()
{
        int count,i=0;
        Bool flage =1;
        char a[];
        printf("请输入英文句子;");
        while(flage)
        {
                a = getchar();
                if(a == 10)//换行的ascii码表值
                {
                        flage=0
                }
                else{
                        i++;
                        if(a>=65&&a<=90)
                        {
                        count++;
                        }
                }
        }
        printf("有%d个大写字母",count);
      return 0;
}
可能存在不严谨,供参考。代码输入任意长度字符,当检测到换行结束输入输出结果

傻眼貓咪 发表于 2021-10-14 11:55:35

#include <stdio.h>
int main(){
    int alphabet = 0;
    char a;
    printf("请输入英文句子:");
    while(1){
      scanf("%c", &a);
      if(a == '\n') break;
      else if(a>=65 && a<=90) alphabet += 1;
    }
    printf("英文句子有 %d 个大写字母", alphabet);
    return 0;
}请输入英文句子:BananaApple
英文句子有 2 个大写字母

bszs 发表于 2021-10-14 16:32:37

https://blog.csdn.net/weixin_44551646/article/details/98076863?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522163049156016780366543090%2522%252C%2522scm%2522%253A%252220140713.130102334..%2522%257D&request_id=163049156016780366543090&biz_id=0&utm_medium=distribute.pc_search_result.none-task-blog-2~all~top_positive~default-1-98076863.first_rank_v2_pc_rank_v29&utm_term=getchar&spm=1018.2226.3001.4187

bild 发表于 2021-10-14 18:33:01

本帖最后由 bild 于 2021-10-14 18:56 编辑

傻眼貓咪 发表于 2021-10-14 11:55


可以问下while(1)是指在什么条件下while正确呢
我解决了

bild 发表于 2021-10-14 18:59:14

傻眼貓咪 发表于 2021-10-14 11:55


感谢感谢

傻眼貓咪 发表于 2021-10-14 19:08:21

bild 发表于 2021-10-14 18:33
可以问下while(1)是指在什么条件下while正确呢
我解决了

C 语言的 while(1) 如同 C++语言里的 while(True)

bild 发表于 2021-10-14 19:43:00

傻眼貓咪 发表于 2021-10-14 19:08
C 语言的 while(1) 如同 C++语言里的 while(True)

好的,谢谢!!
页: [1]
查看完整版本: 请教下getchar的用法