C语言里如何建立一个循环,当输入数字在0~9之间的时候继续输入,当输入不在0~9之间的时候结束?

 我来答
发赞洛阳诗2
2015-02-17 · TA获得超过380个赞
知道答主
回答量:246
采纳率:0%
帮助的人:103万
展开全部
用自符串: 先定义一个字符串,如:char hanzi[20]; 然后: scanf("%s",hanzi); 或者gets(hanzi); 不过定义的时候控制了字节为20,不能输太多,(一个汉字两 个字节)
追问
亲,是输入数字后可以执行一个语句!你这样只能输入,不能循环
#include "stdio.h"
int fun(char p[])
{
if(p[0]>='0'&&p[0]<='9'&&p[1]=='\0')
return 1;
else return 0;
}
void main()
{
char s[2];
gets(s);
while(fun(s)==1)
{
printf("aa\n");
gets(s);
}
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
saxziljj
推荐于2016-11-03 · TA获得超过106个赞
知道小有建树答主
回答量:190
采纳率:0%
帮助的人:121万
展开全部
scanf("%d",&x);
while ((x<=9)&&(x>=0)) scanf("%d",&x);
更多追问追答
追问
用{scanf,printf(" ")}可是当输入为a时会出现无限循环输出_(为空格)
追答
输入为a是什么意思?不太明白
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友a47418c
2015-02-17 · 超过10用户采纳过TA的回答
知道答主
回答量:28
采纳率:0%
帮助的人:17.9万
展开全部
#include <stdio.h>
int main(void)
{
    int c=0;
    while(c<10&&c>=0)scanf("%d",&c);
    return 0;
}
更多追问追答
追问
用{},在循环语句里加一句输出空格,再输入1,再输入a时会出现无限循环
追答
#include <stdio.h>
int main(void)
{
    char c=‘0’;
    while(c<='9'&&c>='0')
    {
        scanf("%d",&c);//此为循环体。
    }
    return 0;
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式