| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 432 人关注过本帖
标题:请看看这是为啥
只看楼主 加入收藏
lenovo405
Rank: 1
等 级:新手上路
帖 子:1
专家分:0
注 册:2010-7-16
收藏
 问题点数:0 回复次数:4 
请看看这是为啥
#include<stdio.h>
main()
{char a,b;
a=getchar();
scanf("%d",&b);
a=a-'A'+'0';b=b*2;
printf("%c%c\n",a,b);
}


从键盘输入B33<回车>

为啥得 “1B” ?
而不是“B”,因为1的ASCII码是“”。
搜索更多相关主题的帖子: 键盘 
2010-07-16 22:24
幕雨云天
Rank: 1
等 级:新手上路
帖 子:4
专家分:6
注 册:2010-7-5
收藏
得分:0 
你要想得到1的ASCII码必须把printf("%c%c\n",a,b);改成printf("%d%c\n",a,b);
2010-07-17 11:12
sunyh1999
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:14
帖 子:1178
专家分:3032
注 册:2009-5-17
收藏
得分:0 
是你的输出有问题,正如二楼所讲

欢迎来到我的博客:http://blog..cn/noisunyuhong
2010-07-17 11:16
ccmike98
Rank: 2
来 自:苏州
等 级:论坛游民
帖 子:76
专家分:56
注 册:2010-7-13
收藏
得分:0 
你输入B33后a=a-'A'+'0'=49了
ASCII为49输出的字符就是1

[ 本帖最后由 ccmike98 于 2010-7-17 13:21 编辑 ]
2010-07-17 13:20
pykuyuan
Rank: 2
等 级:论坛游民
帖 子:46
专家分:34
注 册:2009-6-26
收藏
得分:0 
以下是引用ccmike98在2010-7-17 13:20:02的发言:

你输入B33后a=a-'A'+'0'=49了
ASCII为49输出的字符就是1
正解,无论怎么改变输出都不会输出笑脸

逐渐变黑
2010-07-17 16:26
快速回复:请看看这是为啥
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.042373 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved