佳礼资讯网

 找回密码
 注册

ADVERTISEMENT

查看: 1436|回复: 17

C++ help帮忙下

[复制链接]
发表于 13-6-2009 06:13 PM | 显示全部楼层 |阅读模式
如何避免user 键入英文字在INT 里面?
这是我的code,我想使它更完美


#include <iostream.h>
void main()
{
    double x,y,z;
    cout<<"Please Enter Your Assignment 1 mark ! (100%)"<<endl;
    cin>>x;

    while(x>100 || x<0)
        {
            cout<<"Please Enter Your x marks (100%)"<<endl;
            cin>>x;
        }
        cout<<"Please Enter Your y mark ! (100%)"<<endl;
    cin>>y;

    while(y>100 || y<0)
        {
            cout<<"Please Enter Your y mark ! (100%)"<<endl;
            cin>>y;
        }

z=x+y
cout<<"z<<endl;
return0
}

[ 本帖最后由 风之女神 于 14-6-2009 12:07 PM 编辑 ]
回复

使用道具 举报


ADVERTISEMENT

发表于 13-6-2009 06:25 PM | 显示全部楼层
erm..应该没有的避免吧。。。据我所知,他们键入英文字就会跳开程式了哦。。
回复

使用道具 举报

发表于 13-6-2009 06:38 PM | 显示全部楼层
忘记了
diploma学过。。
不过几年前的事
回复

使用道具 举报

发表于 13-6-2009 10:31 PM | 显示全部楼层
一个英文字代表一个号码。。。。。就像a是96(如果没记错).......你的int那里方 if else statement if(i<96) then xxxxx 你要求要完美 就代表你很厉害。。。。应该明白我讲什么了吧
回复

使用道具 举报

发表于 14-6-2009 12:24 AM | 显示全部楼层
多放一个 Invalid 的 coding 就可以了!~
列 号码 以外的 都是invalid
回复

使用道具 举报

发表于 14-6-2009 01:02 AM | 显示全部楼层
其中一个方法是用ASCII code 来 filter user's input.
你的program 的function 是什么?
说来听听才能帮你改进你的codes. =)
回复

使用道具 举报

Follow Us
 楼主| 发表于 14-6-2009 01:20 AM | 显示全部楼层
原帖由 浅の影 于 13-6-2009 06:25 PM 发表
erm..应该没有的避免吧。。。据我所知,他们键入英文字就会跳开程式了哦。。


我个人觉得应该会能避免到的,所以就来问你们咯
回复

使用道具 举报

 楼主| 发表于 14-6-2009 01:23 AM | 显示全部楼层
原帖由 kokming89 于 14-6-2009 12:24 AM 发表
多放一个 Invalid 的 coding 就可以了!~
列 号码 以外的 都是invalid


怎样放?能教我嘛?
回复

使用道具 举报


ADVERTISEMENT

 楼主| 发表于 14-6-2009 01:24 AM | 显示全部楼层
原帖由 silencer_sam 于 14-6-2009 01:02 AM 发表
其中一个方法是用ASCII code 来 filter user's input.
你的program 的function 是什么?
说来听听才能帮你改进你的codes. =)

主要是拿来计算学生的分数, 但因为想到可能有人会输入英文数字, 所以只好请问专家咯
回复

使用道具 举报

发表于 14-6-2009 01:27 AM | 显示全部楼层
原帖由 风之女神 于 13-6-2009 06:13 PM 发表
如何避免user 键入英文字在INT 里面?
这是我的code,我想使它更完美


#include
void main()
{
    double x,y,z;
    cout

难道你是penang banch EE yr2 的 ?
C++ 很遥远的事情了 ...
总觉得你的 code有问题 ...
但不知道问题在哪里
善用 if else ...
我很少用 while 的 ...
declare as int 应该不能 key in 字母了吧 ...

[ 本帖最后由 D-Strike 于 14-6-2009 01:29 AM 编辑 ]
回复

使用道具 举报

发表于 14-6-2009 01:32 AM | 显示全部楼层
C++容易多了...用exception应该可以做到...去研究一下吧

原帖由 D-Strike 于 14-6-2009 01:27 AM 发表&#160;

难道你是penang banch EE yr2 的 ?
C++ 很遥远的事情了 ...
总觉得你的 code有问题 ...
但不知道问题在哪里&#160;
善用 if else ...
我很少用 while 的 ...
declare as int 应该不能 key in 字母了吧 ...



还是可以的...

[ 本帖最后由 PeachHuman 于 14-6-2009 01:34 AM 编辑 ]
回复

使用道具 举报

发表于 14-6-2009 01:37 AM | 显示全部楼层
原帖由 PeachHuman 于 14-6-2009 01:32 AM 发表
C++容易多了...用exception应该可以做到...去研究一下吧




还是可以的...

会进 infinity loop 吧 =.=
之前有 solve 过这个问题 ...
但是忘了怎样 solve ...
大多都忘了 ...
回复

使用道具 举报

发表于 15-6-2009 05:52 PM | 显示全部楼层
没错的话你可以用exception的!!
回复

使用道具 举报

发表于 15-6-2009 10:10 PM | 显示全部楼层
原帖由 jjs2 于 15-6-2009 05:52 PM 发表
没错的话你可以用exception的!!

exception不是只有java吗??b不是很清楚
回复

使用道具 举报

发表于 16-6-2009 09:35 AM | 显示全部楼层

回复 14# Eric_Joe 的帖子

C++ 也有的!!
refer: http://www.cplusplus.com
回复

使用道具 举报

发表于 17-6-2009 07:34 PM | 显示全部楼层
还没解决么?
LZ 我无意间看到
你void main 了 应该就没有 return 0 了吧
回复

使用道具 举报


ADVERTISEMENT

发表于 18-6-2009 12:46 AM | 显示全部楼层
google是你最好的朋友,我肯定有,做过,但忘了~
回复

使用道具 举报

发表于 19-6-2009 12:02 AM | 显示全部楼层
用if-else statement 就好了
if 是0-100 就据续
else 就 display error

小小声问下。。为什么你要问x 分两次?
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

 

所属分类: 欢乐校园


ADVERTISEMENT



ADVERTISEMENT



ADVERTISEMENT

ADVERTISEMENT


版权所有 © 1996-2023 Cari Internet Sdn Bhd (483575-W)|IPSERVERONE 提供云主机|广告刊登|关于我们|私隐权|免控|投诉|联络|脸书|佳礼资讯网

GMT+8, 2-1-2026 05:37 PM , Processed in 0.136853 second(s), 24 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表