关于c语言的一些基础知识
发布网友
发布时间:2022-06-01 02:33
我来回答
共3个回答
热心网友
时间:2023-11-13 12:40
1.注意一下“n=11”后的“;”应该为英文下的输入。
在VS2008下输出“10 11/n”,当然我估计你是想要“\n”来换行。
解释一下,m=011,前面的0指8进制,因此在10进制下,m=1*8+1=9。
在输出语句中,由于++前置,故先把m加1再输出,因此输出10。
而n++,是先将n的值11输出后,再给n加1,因此若在末尾再加一个输出语句,可以输出n的值为12。
2.首先还是注意一下a=(3*5,a+4);应为a=(3*5,a+4);
然后你这是逗号运算符的问题。将若干个表达式用逗号连接成一个表达式,称为逗号表达式。逗号表达式,的求解过程是,从左到右的顺序计算各子表达式的值,其中最后的子表达式的值为逗号表达式的值。你可以试一下,体会一下:
x=(3*4,5+7,10-9);
3.关于++a与a++,不用过分追究,在复杂的情况下,不同编译器可能给出不一样结果。一般认为:++a表示在使用a之前使它的值加1,然后再使用a,即使用的是加1后的值,a++则表示使用a以后再给a加上1,即使用的是加1前的值。--的情况类似。例子你可以体会一下你提出的第一个问题。
热心网友
时间:2023-11-13 12:41
1. ++m是先加再输出,n++是先输出了再加,所以为1211
2.最后的子表达式的值为逗号表达式的值,为14
3.同一
热心网友
时间:2023-11-13 12:41
答案:1.12 11
2.14
3.++a的意思:是在使用a之前,把a的值加1;而a++的意思:是在使用了a之后,在把a的值加1。