关于标准输入输出应用

学习C语言标准输入输出时根据教材自己改写的代码,参考书为《C primer plus》,原程序为P226页猜数程序。
原程序功能为:
1.计算机输出打印一个1到100之间的整数,从1开始:"Is the number 1?
2.输入此数与你所准备的数是否一致。输入:y或n
3.若输入y,表示一致,屏幕显示"I guess it"然后退出程序;输入n,表示不一致,屏幕将原数加1后继续询问,直至正确
增加功能(无实用价值,仅为学习):
1.若输入字符串包含’y’,表示一致,与单独输入’y’相同;
2.若输入字符串不包含’y’,但包含’n’,表示不一致,与单独输入’n’相同;
3.若输入字符串两者都不包含,显示输入错误,继续询问同一值,直至输入正确。

#include <stdio.h>

int main(void)
{
    int guess=1;
    char ch;
    int result=-1; //用于判断结果类型
    printf("Pick an integer between 1 and 100. I will try to guess it.\n");
    printf("y or n you should enter after my guess.\n");
    printf("Is your number %d?\n",guess);
    
    while (guess<=100)                          //用于数字循环体
    {
        while ((ch=getchar())!='\n')            //用于遍历输入所有字符
        {
            if (ch=='y')                        //用于判断是否包含'y',若包含,结果类型为1
            {   
                result=1;
                while (getchar()!='\n')         //用于
                {
                    continue;
                }
                break;
            }
            if (ch=='n')
            {
                result=0;
                continue;
            }
        }
        if (result==-1)
        {
            printf("输入错误\n");
        }
        if (result==1)
        {
            printf("I guess it!\n");
            break;
        }
        if (result==0)
        {
            ++guess;
        }
        printf("Is your number %d?\n",guess);
    }   

    getchar();

    return 0;
}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值