社区
C语言
帖子详情
什么方法可以定义整型变量,只能输入整数?
asyn_FL
2002-08-03 07:56:31
昨天写一个程序,定义了一个整型变量,要求输入的取值范围为0-6,可是当我输入-0.99~6.99中任何数字都行。
有没有什么方法避免以上现象?要求:只能输入整数,否则出现错误提示,更不能出现连负数都可以输入!
...全文
451
20
打赏
收藏
什么方法可以定义整型变量,只能输入整数?
昨天写一个程序,定义了一个整型变量,要求输入的取值范围为0-6,可是当我输入-0.99~6.99中任何数字都行。 有没有什么方法避免以上现象?要求:只能输入整数,否则出现错误提示,更不能出现连负数都可以输入!
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
20 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
asyn_FL
2002-08-04
打赏
举报
回复
谢谢各位,问题基本解决!
不解
2002-08-03
打赏
举报
回复
只能通过自己编程,好象没有现成的函数之类的。
kwok_1980
2002-08-03
打赏
举报
回复
double b;
cin>>b;
if(b<0||b>6)//再加一个条件
cerr<<"Error! Input number is a negative one!"<<endl;
else
{
if((int)b!=b)
cerr<<"Error input!"<<endl;
else
cout<<"Correct input! Continue!"<<endl;
}
winco
2002-08-03
打赏
举报
回复
应该是这样:
double b;
cin>>b;
if(b<0)
cerr<<"Error! Input number is a negative one!"<<endl;
else
{
if((int)b!=b)
cerr<<"Error input!"<<endl;
else
cout<<"Correct input! Continue!"<<endl;
}
kwok_1980
2002-08-03
打赏
举报
回复
winco(老狼) 的方法不错呀!
winco
2002-08-03
打赏
举报
回复
double b;
cin>>b;
if((int)b!=b)
cerr<<"Error input!"<<endl;
else
cout<<"Correct input! Continue!"<<endl;
kwok_1980
2002-08-03
打赏
举报
回复
to: jiangpeng(jacky) 你看清题目了吗?
《《有没有什么方法避免以上现象?要求:只能输入整数,否则出现错误提示,更不能出现连负数都可以输入!》》
jp311
2002-08-03
打赏
举报
回复
可以先用atoi然后在判断取值范围吗,没什么必要在定义一个数组
kwok_1980
2002-08-03
打赏
举报
回复
没错,的确是麻烦了点,这是折中的方法!希望有更简便的方法!gz
to:jamesfangjing(Bayes) 你有没有看清题目的:??????
《《昨天写一个程序,定义了一个整型变量,要求输入的取值范围为0-6,可是当我输入-0.99~6.99中任何数字都行。》》
”强制转换“?????????????
kwok_1980
2002-08-03
打赏
举报
回复
没错,的确是麻烦了点,这是折中的方法!希望有更简便的方法!gz
to:jamesfangjing(Bayes) 你有没有看清题目的:??????
《《昨天写一个程序,定义了一个整型变量,要求输入的取值范围为0-6,可是当我输入-0.99~6.99中任何数字都行。》》
”强制转换“?????????????
jamesfangjing
2002-08-03
打赏
举报
回复
强制转换吧!
用kwok_1980(Mars)的方法,是不是太麻烦了!特别是数据很多的时候!
kwok_1980
2002-08-03
打赏
举报
回复
int a[6]={0,1,2,3,4,5,6};
int i;
int flag=0;
cin>>i;
for(int i=0;i<7;i++)
{
if(i==a[i]);
flag=1;
}
if(flag==0)
exit(-1)
else
//.................
kwok_1980
2002-08-03
打赏
举报
回复
同上
在想......................
SlaSk
2002-08-03
打赏
举报
回复
getchar()
atoi()
asyn_FL
2002-08-03
打赏
举报
回复
以上代码虽然不能区分象4和4.0这样的差别,但对于我的程序要求来讲已经够了。
只是不知象while (b<0 || b>6 || (int)b!=b)这样的表达式执行效率如何?如果效率低下,有没有更好的表达式?
qibiluo
2002-08-03
打赏
举报
回复
使用getchar()后,在内部转换成int
asyn_FL
2002-08-03
打赏
举报
回复
根据winco(老狼)、kwok_1980(Mars) 两位的方法,
写了如下代码,还请各位指教!
double b;
cout<<"Enter a integer number(0-6):";
cin>>b;
while (b<0||b>6||(int)b!=b)
//判断输入的数字是否在0-6,且是否为整数!
{
cout<<"Error!Please input again!"<<endl;
cout<<"Enter a integer number(0-6):";
cin>>b;
};
cout<<"The number is:"<<b<<endl;//将正确输入的数字显示出来!
hslinux
2002-08-03
打赏
举报
回复
自己进行类型检查,不是整型的要求重新输入,或显示出错。
treamboy
2002-08-03
打赏
举报
回复
哦,,,看错了,,,
treamboy
2002-08-03
打赏
举报
回复
笨!!!!!!!来个强制转换,,,,,呵,,,再来个取余运算不就得啦。
尹成Python27天入门到项目实战
常量变量数据类型 常量与变量区别标识符关键字
输入
输出id求地址type求类型python变量是地址赋值可以改变类型python主要数据类型复数数据类型自适应变长
整数
intdel作用连续赋值交互对称赋值字符串转化与
输入
输出编程...
java
整型变量
,Java
整型变量
Java
整型变量
在接下来的时间里面,我们准备为大家介绍“
整型变量
”。在前面的学习中,我们已经认识了整型常量,而常量在程序运行的过程中是不可以改变的。所以,在程序开发的过程中,如果我们希望可以产生变化,...
定义
整型变量
a,并
输入
一个
整数
到a,请编写程序分别按十进制,八进制和十六进制输出a的值。
1-2
整数
数制格式化输出
定义
整型变量
a,并
输入
一个
整数
到a,请编写程序分别按十进制,八进制和十六进制输出a的值。
python
定义
一个变量为整型怎么写_python里怎么
定义
一个变量
Python 中的变量不需要声明。每个变量在使用前都必须赋值,变量赋值以后该变量才会被创建。在 Python 中,变量就是变量,它没有类型,我们所说的"类型"是变量所指...例如:counter = 100 #
整型变量
miles = 1000.0 #...
C 如何
定义
变量(3)
//
定义
整型变量
a,并为变量 a 赋值 3 1.
整数
类型 int 可以
定义
整数
类型。int 类型数据在 printf 中一般采用 %d 格式进行输出,%d 表示“十进制
整数
” 形成。 #include <stdio.h> int main() { int a ...
C语言
69,371
社区成员
243,080
社区内容
发帖
与我相关
我的任务
C语言
C语言相关问题讨论
复制链接
扫一扫
分享
社区描述
C语言相关问题讨论
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章