WuHuDaSiMa 发表于 2020-11-12 10:54:34

jpan1221 发表于 2020-11-15 22:40:02

1809228982 发表于 2019-4-19 11:47
getchar 是不是也把换行符给输入进去了?虽然并没有进入while循环。

是的

任阿狗 发表于 2021-1-31 22:43:30

我一脸懵逼啊
{:10_266:}

zx孑 发表于 2021-2-8 14:37:36

不大懂啊

1140913594 发表于 2021-2-18 15:36:16

讲得好

爱学习变更强 发表于 2021-2-20 12:26:57

11

张软软 发表于 2021-2-26 11:29:30

好难哟{:5_100:}

张软软 发表于 2021-2-27 12:13:52

一头雾水

Bastien 发表于 2021-3-7 10:26:42

俺也想问,getchar在上节课不是用来过滤回车键吗?

影影影影影少丶 发表于 2021-4-16 11:45:01

个人对于getchar函数的部分理解:
getchar函数在键盘缓冲区无内容时等待用户输入
有内容的时候读取缓冲区的第一个字符
等待输入的时候可以输入多个字符,但是读取只会读取一个

zdyx 发表于 2021-5-17 21:30:03

LICHT 发表于 2018-1-13 15:44
没看懂+1,之前的课里不是有用getchar()来过滤空白字符吗,在这里没看出来是怎么做到的

getchar()的作用应该是接收一个字符,回车也算一个字符,而且它每次只能接收一个,在程序里面只要它接收的不是回车它就会一直循环,一直接收字符,直到你按下回车键循环才会停止

奶茶newfish 发表于 2021-6-5 13:30:30

six_mao 发表于 2016-10-26 10:28
stdin是啥,不该是stdio吗?

stdin应该是系统标准输入

每天2000m 发表于 2021-6-6 19:35:22

是个空程序
!condition不等于0
先执行循环体 后判断条件语句
先从0开始然后一直到-128范围是-128~0
判断字符串有多少字节



每天2000m 发表于 2021-6-17 20:30:31

#include <stdio.h>
main()
{
        int i, year;
        printf("请输入一个年份:");
        getchar(year);
       
        for(i = 1; i <= 12; i++)
        {
                if(i == 2 && year % 4== 0)
                {
                        printf(" %d月份 : 29天\n", i);
                        continue;
                }
                else if(i == 2)
                {
                        printf(" %d月份 : 28天\n", i);
                        continue;
                }
                else if(i <= 7)
                {
                        if(i % 2 == 0 )
                        {
                                printf(" %d月份 : 30天\n", i);
                        }
                        else
                        {
                                printf(" %d月份 : 31天\n", i);
                        }
                }
                else if(i == 8)
                {
                        printf(" %d月份 : 31天\n", i);
                }
                else if(i == 9)
                {
                        printf(" %d月份 : 30天\n", i);
                }
                else if(i >= 10)
                {
                        if(i % 2 == 0)
                        {
                                printf("%d月份 : 31天\n", i);
                        }
                        else
                        {
                                printf("%d月份 : 30天\n", i);
                        }
                }
        }
}

我是小白别骗我 发表于 2021-6-28 13:28:06

涨芝士了

StartAgain 发表于 2021-7-29 13:35:17

不错

wrx在奔跑 发表于 2021-8-6 17:17:51

不懂

说与山鬼听os 发表于 2021-8-13 09:42:14

学废了!

AaronWeiy 发表于 2021-8-21 11:55:14

LICHT 发表于 2018-1-13 15:44
没看懂+1,之前的课里不是有用getchar()来过滤空白字符吗,在这里没看出来是怎么做到的

回车按下时,既是确认,也同时带出来了\n字符,所谓的过滤掉空白字符是有点歧义的,其实应该是浪费掉这个\n字符,用getchar()把这个字符从缓存流中取出,以便再次获取时,取到想要的字符

---来自一个萌新三年后的回复

很酷1212 发表于 2021-9-21 16:44:30

1
页: 1 2 3 [4] 5 6
查看完整版本: getchar -- 从标准输入流中获取字符