鱼C论坛

 找回密码
 立即注册
查看: 2916|回复: 5

c语言判断越界

[复制链接]
发表于 2013-9-21 10:11:41 | 显示全部楼层 |阅读模式
1鱼币
要求输入一串字符数字,其中字符串数为8进制数,要将其转换为10进制数输出!   其中如何对字符串中的字符数字做保护使其在>=8时候提示“输入有误!”!       8进制在0~7嘛。

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2013-9-21 11:09:16 | 显示全部楼层
用getchar()逐一读取 然后判断ASCII 呗
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2013-9-21 11:12:38 | 显示全部楼层
本帖最后由 565123 于 2013-9-21 11:17 编辑
int isValid(char *str)
{
        if (*str == 0) //如果是空字符串,返回假
                return 0;
        for (; *str != 0; str++)
                if (*str > '7' || *str < '0') //当有0~7以外的字符,返回假
                        return 0;
        return 1;
}
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2013-9-21 19:50:02 | 显示全部楼层
判断ASCII码就行
比如:
char c;
scanf("%c",c);
if(c-48>=8)
printf("输入有误|");
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2013-9-26 09:04:45 | 显示全部楼层

学习,支持一下!加油:lol:
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2013-10-1 12:02:11 | 显示全部楼层
可以用getchar()方法,然后用if进行判断
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

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

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-11-22 04:18

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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