问题遇到的现象和发生背景
**#include <stdio.h>
void main( )
{ int a,b;
scanf("%d",&a);
b=a>15?a+10:a-10;
printf("%d\n",b) ;
}
**
输出为什么是5,
(b=a>15?a+10:a-10;)这一步不是只给b赋了一个开始的a值吗?还是说逻辑应该是从右往左的?
想知道这一步“b”到底发生了什么
**#include <stdio.h>
void main( )
{ int a,b;
scanf("%d",&a);
b=a>15?a+10:a-10;
printf("%d\n",b) ;
}
**
输出为什么是5,
(b=a>15?a+10:a-10;)这一步不是只给b赋了一个开始的a值吗?还是说逻辑应该是从右往左的?
想知道这一步“b”到底发生了什么
你也没说你输入多少啊,兄弟
先执行的是a>15?a+10:a-10,这个三目运算符的结果赋值给b,不是b=a啊