6 有以下程序,程序输入运行时输入:12,执行后输出结果是----

问题描述:

6 有以下程序,程序输入运行时输入:12,执行后输出结果是____
#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);
}
少了一个函数 没仔细看
1个回答 分类:综合 2014-12-14

问题解答:

我来补答
"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
 
 
展开全文阅读
剩余:2000
也许感兴趣的知识