问题
填空题
已知字符A的ASCII码值为65,以下程序运行时,若从键盘输入:B33<回车>,则输出结果是______。
#include
main()
char a,b;
a=getchar();scanf("%d",&b);
a=a-’A’+’0’;b=b*2;
printf("%c %c\\n",a,b);
答案
参考答案:1 B
解析: 本题考查字符变量的运算。在C语言中,字符型变量可以当做整型变量来对待。字符型变量中所存的数值就是它所表示字符的ASCII码值。ASCII码中一些相关字符是顺序排列的,如“0”的ASCII码值为48,“1”为49……“A”的ASCII码值为65,“B”为66……本题使用getchar()和scanf()函数读取输入的字符“B”和十进制整数33到a和b中。a-’A’+’0’=’B’-’A’+’0’=’1’,而b*2=33*2=66=’B’。所以最终输出:1 B。