鱼C论坛

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

新手求助!!!!

[复制链接]
发表于 2014-8-13 16:29:52 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
请问在任意输入半径时,比如一连串的字母,怎么会得到如下的结果?不是只能输数字才有结果吗??
QQ截图20140813162648.png
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2014-8-13 17:24:31 | 显示全部楼层
字符也是数字转换显示出来的呀。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2014-8-13 17:26:00 | 显示全部楼层
字母是用数字来储存的,见ASC码
所以,输入字母会被理解成数字,进行运行
——这是个人理解,有错误的地方,请大牛指正
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2014-8-13 17:58:09 | 显示全部楼层
出现你这个问题的原因其实是变量r没有进行初始化导致的。在执行scanf函数的时候,当你进行非法输入时,scanf并没有将你输入的字母赋值给变量r。而是让变量r保持了原来的值。因为变量r没有初始化,所以变量r的原值为乱码(极大的数或极小负数)。所以,当你下面将乱码的变量r代入表达式时,就会出现更乱的现象。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2014-8-13 18:58:46 | 显示全部楼层
musilintan 发表于 2014-8-13 17:58
出现你这个问题的原因其实是变量r没有进行初始化导致的。在执行scanf函数的时候,当你进行非法输入时,scan ...

非常的感谢!你的回答让我茅塞顿开!我会继续努力的!
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2014-8-13 19:02:32 | 显示全部楼层
{:1_1:}{:1_1:}
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-12-30 03:23

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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