www.fltk.net > #inCluDE"stDio.h" mAin() { int x=3,y=6,z...

#inCluDE"stDio.h" mAin() { int x=3,y=6,z...

你把z=x++; 改成x++;z=x;就可以了z=x++应该是先把x的原始值1赋予z,再让x=2

自增与自减运算符可在变量的左边(前缀)与右边(后缀),运算规则教材上有的,手机打字很麻烦

x=3,y=3,(x++,y++)即为y++表达式的值,即先应用y再加1,表达式的值为3.满意就给分哦,亲.

#include <stdio.h> main() { int x=3,y; do { y=x--; if (!y) { printf("*"); continue; } printf("#"); } while (1<=x<=2);//关键在于while的参数, 1<=x<=2,x为任何值都符合要求 //1<=x&&x<=2 ,这个才表示x在1和2范围内 //这跟小学所学的数学是有点差别的 }

)+3x -- 漏一个乘号 3 * x#include<stdio.h> #include<math.h> main() { int x,y; for(x=3;x<=6;++x) { y=10*pow(x,2)+3*x-2; printf("%d\n",y); } } 输出:97170263376 一般 pow 运算,最好用 double,float, 不要用 int.你这里只用了2次方,所以没出问题.

我整理了一下,你就清楚了,你的程序就相当于: #includemain(){ int x=1,y=0; if(!x)y++; else { if(x==0) { if(x) y+=2; else y+=3; } } printf("%d\n",y);} 因为else总是与尽可能近的if配对.

我来给你详细说说:(++x,y++),这是逗号表达式,先执行++x,然后执行y++;结果取逗号后面表达式的值,也就是y++的值.y++的值为3,因为这是后加表达式,如果是前加++y的话,值就是4;z+2的值是1+2=3;所以结果输出是3 3

根据c语言的规范,x=(y=y+6,y/z);是这样算的:(1)计算y+6并将结果赋给y (2)计算y/z(3)将(2)的值赋给x 详细分析:(1)y为7,y+6为13,y为13.(2)y为13,z为float型4.0,y/z时z自动变成整形4,13/4按整形算是3(余1)(3)x为3

相关搜索:

网站地图

All rights reserved Powered by www.fltk.net

copyright ©right 2010-2021。
www.fltk.net内容来自网络,如有侵犯请联系客服。zhit325@qq.com