c语言基础,搞不懂x的值怎么来的

Python014

c语言基础,搞不懂x的值怎么来的,第1张

程序中的--和++运算是对x变量的自加和自减运算:--x等效于x=x-1,x++等效于x=x+1,但是因为它们和x的位置关系不同,所以有不同的运算效果。当自增运算符或自减运算符放在变量前面的时候,表示“立即自增或立即自减”,在这个程序中表现为先将x进行自减操作(x从1变为0)后再将结果赋值给y即y=0(y=--x等效于:x--;y=x;)。当自增或自减操作符在x后面的时候表示“先运算后再进行自增或自减操作”,所以这里的z=x++等效于:z=x;x++;也就是z=0(在上一个语句中x已经变为0了),x=1。所以最后结果为x=1,y=0,z=0。不懂可以追问~

C语言编程: 输入x的值,按下面公式计算并输出y的值(保留两位小数) 123456789101112#include<stdio.h>#include<math.h>int main(){double x, y scanf ( %lf , &x) if (x >0)y = sqrt(2*x) else if (x <0)y = 1.0/(3*exp(x)) else y = 0 printf ( %.2f\n , y) return 0}

C语言的赋值语句是从右到左执行的,

比如 x = y + 1 意思就是 把Y 加1后赋值给X

但C语言的语序是从上到下执行的

本题中,当执行int x,y之后,x , y都没有初始变量,他两应该是个随机数.

所以你的x = y + 1这句话执行的没有意义,x还是随机数

而后面的y = 3 + 25可以给Y 赋值为28

printf()是输出语句格式为,printf("x=%d , y =%d",x,y) // 引号里是输出的格式,%d是后面的x,y的代变量,意思是以整形输出.