c语言程序,判断数据
怎么加一段代码,让用户输入的数据,然后进行判断。判断改数据是数字就执行下一步,不是数字(即为字符或者字母)就进行循环,要求用户重新输入printf("请输入操作代码");...
怎么加一段代码,让用户输入的数据,然后进行判断。
判断改数据是数字就执行下一步,不是数字(即为字符或者字母)就进行循环,要求用户重新输入
printf("请输入操作代码 ");
scanf("%d",&a[0]);
while (a[0]>=1||a[0]<= 4)
{
{
while (a[0]<1||a[0]> 4)
{
printf("输入的是错误操作代码\n");
printf("请重新输入操作代码 ");
加在这里面
scanf("%d",&a[0]);
} 展开
判断改数据是数字就执行下一步,不是数字(即为字符或者字母)就进行循环,要求用户重新输入
printf("请输入操作代码 ");
scanf("%d",&a[0]);
while (a[0]>=1||a[0]<= 4)
{
{
while (a[0]<1||a[0]> 4)
{
printf("输入的是错误操作代码\n");
printf("请重新输入操作代码 ");
加在这里面
scanf("%d",&a[0]);
} 展开
6个回答
展开全部
这个很简单,楼主可以用ctype.h里面的isnumeric(ch)函数来判定,ctype.h里面还有很多函数,比如说isalpha是判定一个字符是否是字母,isspace判定一个字符是否空格等,楼主也可以用ASCii码来判定,比如说0的ASCii码是48,就可以判断一个字符的ASCii码是否在0<=ch-48<=9之间,是的话就是数字了。。。
更多追问追答
追问
你写出来
追答
下面不是有人写出来了吗?这个很简单的,他们写的都没问题,我说的两种方法,他们都写出来了。。。
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
我做成函数吧。。。 别忘加头文件#include<iostream> 和 using namespace std;
void panduan(int a)
{
while(!((a>=0)&&(a<=9)))
{
printf("请输入数据:\n");
cin>>a;
}
printf("校验通过");
}
直接在你要加的地方 加入panduan(a[0])
void panduan(int a)
{
while(!((a>=0)&&(a<=9)))
{
printf("请输入数据:\n");
cin>>a;
}
printf("校验通过");
}
直接在你要加的地方 加入panduan(a[0])
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
OK,您要实现的就是怎么判断输入是不是数字是吧。有一个函数可以实现:
isdigit(const char i) 判断参数 i 是否为0~9之间的数字字符,
不知道是不是您要功能。
isdigit(const char i) 判断参数 i 是否为0~9之间的数字字符,
不知道是不是您要功能。
更多追问追答
追问
怎么加在写的补充的问题里面
追答
要求输入类型是字符型。头文件要加#include 哦
printf("请输入操作代码 ");
scanf("%c",&a[0]); //a[0]是字符类型
while ( isdigit(a[0]) == 0)
{
printf("输入的是错误操作代码\n");
printf("请重新输入操作代码 ");
scanf("%c",&a[0]);
}
这样可以吧。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
用一个for循环,for(i=0;isdigit(ch=getchar())!=0;i++) 头文件加#include<ctype.h>
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
#include <stdio.h>
#include <stdlib.h>
int main(void)
{
int c;
do
{
printf("please input a digital:\n");
c=getch();
}while(!(c>='0'&&c<='9'));
printf("correct");
system("pause");
return 0;
}
#include <stdlib.h>
int main(void)
{
int c;
do
{
printf("please input a digital:\n");
c=getch();
}while(!(c>='0'&&c<='9'));
printf("correct");
system("pause");
return 0;
}
追问
怎么加在我补充的问题里面
追答
按照你需要的,你的程序基本可以了啊
#include
#include
int main(void) {
int a[10];
printf("请输入操作代码 ");
scanf("%d", &a[0]);
while (a[0] 4) {
printf("输入的是错误操作代码\n");
printf("请重新输入操作代码 ");
scanf("%d", &a[0]);
}
printf("Ok,a[0]=%d\n",a[0]);
system("pause");
return 0;
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询