C语言 main() { char a=✀1✀,b=✀2✀; printf("%c",b++);printf("%d尀n",b-a)} 结果是什么?说明一下。

2024-12-29 05:40:14
推荐回答(4个)
回答1:

答案是:22
分析:

char a='1'b='2'; //赋值,注意a b的类型为char
printf("%c",b++); //以字符型打印打印b后b才自加,所以是现打
//印出“2”后
//b的ASCII码值是50,自加后是51
printf("%d\n",b-a) //这句是b的ASCII码值减去a的ASCII码值后
//以整型输出,即51-49=2,所以输出“2”

回答2:

输出结果
2
2
main()
{ char a='1',b='2';
printf("%c\n",b++);
//按字符输出b,此时b为"2"(b的asc码是50),b再自加1(即50加1为51,是'3'),其实是ASC码自加:b=b+1=“3”;
printf("%d\n",b-a);
//这时候执行b-a也就等与字符:'3'-'1'=2(即:52-50= 2)。(ASC2码值相减)
}

回答3:

输出结果 22
main()
{ char a='1',b='2';
printf("%c",b++);
//按字符输出b后(即"2"),b再自加1:b=b+1=“3”;
printf("%d\n",b-a);
//这时候执行b-a也就等与字符:'3'-'1'=2。(ASC2码值相减)
}

回答4:

22 第一个2是字符第二个2是数字
printf("%c",b++);先输出b,再b++,b变成'3'了
printf("%d\n",b-a);b-a也就是'3'-'1'=2