应该是d。 c语言中字符在内存中的存储方式,与int一致的.提取时按ascii码 a ch=10+28; //38对应的ascii码是& b ch='\n'; //'\n'是回车的转义字符 c ch='7'+'9'; //'7'在内存中是55,'9'在内存中是57.而112对应的ascii码是p。 d ch='b'-'a' //'a'在内存中是97,'a'在内存中是98.而1对应的ascii码是什么,特殊符号看不懂... 其实都能赋值,看看格式。你输入的和原题是否一样。比如d没有分号,不是一个语句,仅是一个表达式。