6 有以下程序,程序输入运行时输入:12<回车>,执行后输出结果是____

#include(stdio.h)main(){charch1,ch2;intn1,n2;ch1=getchar();ch2=getchar();printf("%d\n... #include(stdio.h)
main()
{char ch1,ch2; int n1,n2;
ch1=getchar(); ch2=getchar();
printf("%d\n",n2);
}
#include(stdio.h)
main()
{char ch1,ch2; int n1,n2;
ch1=getchar(); ch2=getchar();
n1=ch1-"0";n2=n1*10+(ch2-"0");
printf("%d\n",n2);
}
少了一个函数 没仔细看
展开
 我来答
_whales
推荐于2017-11-25 · TA获得超过2279个赞
知道大有可为答主
回答量:1814
采纳率:85%
帮助的人:480万
展开全部
"0" 是个字符串,出现在表达式里是个指针

n1=ch1-"0";n2=n1*10+(ch2-"0");编译会出错的
改成 n1=ch1-‘0’;n2=n1*10+(ch2-‘0’);
结果是输入的数据(如果输入两个数字的话) 否则是 (ch1 -48) *10 + ch2-48
举例 如果 ch1='a',ch2='b' 因为 ’a‘==97,’b‘==98
结果是 490+50=540
如果 ch1='8',ch2='5' 结果是 85
雀修洁武妍
2019-10-12 · TA获得超过3万个赞
知道大有可为答主
回答量:1.1万
采纳率:25%
帮助的人:895万
展开全部
.输出结果为:10
30
0
*表示输入项在读入后不赋给相应的变量,所以虽然20被读入了,但是被忽略了,没有赋给j,而后面的30赋给j了,k没有被赋值,即k=0。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
high歌
2013-03-19 · TA获得超过361个赞
知道小有建树答主
回答量:120
采纳率:0%
帮助的人:157万
展开全部
n1=ch1-'0'='1'-'0'(ascII码1的值为49,0的值为48,当然不知道也无所谓,因为他们是连续存储,结果值为1)=1
n2=n1*10+(ch2-"0")=1*10+('2'-'0')=10+2=12

结果为12
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
mjtc901109
2013-03-19 · 超过22用户采纳过TA的回答
知道答主
回答量:112
采纳率:0%
帮助的人:80.4万
展开全部
你确定程序是对的?如果是的话,结果应该是一个随机的值,因为n2没有被初始化。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
gudao20080
2013-03-19 · 超过17用户采纳过TA的回答
知道答主
回答量:69
采纳率:0%
帮助的人:52.7万
展开全部
垃圾值, n2只是定义变量类型,并没有赋值
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(4)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式