C语言菜鸟问题如下#include "stdio.h"void main(){ int d=5,p=3;\x05d+=+
来源:学生作业帮 编辑:神马作文网作业帮 分类:综合作业 时间:2024/11/11 10:06:44
C语言菜鸟问题如下
#include "stdio.h"
void main()
{ int d=5,p=3;
\x05d+=++p+(++p);
\x05printf("%d",d);
}
为什么输出15?而不是4+5+5=14
如果改为d+=p+++p++;则等于11(5+3+3)
#include "stdio.h"
void main()
{ int d=5,p=3;
\x05d+=++p+(++p);
\x05printf("%d",d);
}
为什么输出15?而不是4+5+5=14
如果改为d+=p+++p++;则等于11(5+3+3)
++ 这个操作符你没有理解,++如果放在变量的前面就是前加,而前加操作,是在运算式运行之前执行的,也就是说d+=++p+(++p)
两个++p 都在这个运算表达式之前就执行了,那么在执行这个运算式之前
p就已经被++过两次了,所以在运行运算式之前P的值就是5了.所以结果是15
p+++p++ 这个是后加,即表达式结束之后再做++操作,结果自然是11
两个++p 都在这个运算表达式之前就执行了,那么在执行这个运算式之前
p就已经被++过两次了,所以在运行运算式之前P的值就是5了.所以结果是15
p+++p++ 这个是后加,即表达式结束之后再做++操作,结果自然是11
C语言菜鸟问题如下#include "stdio.h"void main(){ int d=5,p=3;\x05d+=+
C语言菜鸟问题:如下#include "stdio.h"void main(){ char a='A'+'8'-'4';
c语言除法运算问题#include "stdio.h"void main(){int a,b;float c,d;a=3
#include"stdio.h" void main() { int n=1; printf("%d,%d,%d\n"
我想问个C语言程序:#include "stdio.h"void main(){int Hang,Lie; Hang=1
#include <stdio.h> void main() { int a=1,b=3,c=5,d=4,x=3; if
c语言ab比较大小#include "stdio.h"void main(){int a,b;scanf("%d",&a
#include "stdio.h"void main(){int x=3,y=5; if (x=y-4) printf
#include "stdio.h" void point(char *p) {p+=3;} main() { char
C语言 按大小排列#include "stdio.h"void main(){int a,b,c,d,temp;scan
C语言判断数位数问题#include"stdio.h"int main(){long n,j,m=1,result;sc
#include "stdio.h" void main() { int a=1,b=2,c=2,t; while(a