求助C++几个基础问题。希望回答的详细一些,有详细讲解 int x; x=-3+4%-5*3,则x的值为

写不下了。 还有一题。。
设x和y均为int型变量,则以下for循环中的cin语句最多可执行的次数是
for(x=0,y=0;y!=123&&x<3;x++)
cin>>y;

第一题 运算符优先级的顺序为% 大于 + 大于 ^
所以x=-3+4%-5^3等价于x=(-3+(4%-5))^3=1
第二题
满足y!=123以及x<3的条件下循环继续
y=0!=123,x每次循环依次为0,1,2,3...
所以是3次追问

第一题后面那个3前面的符号是乘号。。还有就是能不能再详细些。。 还有地方不理解。 第二题已经看懂了。麻烦了~

追答

乘号的话,优先级高于%,总的优先级顺序为* 高于 % 高于 ^
优先级高的先运算,同一优先级按从左到右的顺序
所以先计算-3*4=12
然后计算12%5=2
最后计算2^3=8
你可以看看优先级列表
http://blog.csdn.net/nicky_zs/article/details/4053146

温馨提示:内容为网友见解,仅供参考
第1个回答  2011-07-12
FOR循环的表达式:for(<初始化>; <条件表达式>; <增量>)
一般FOR循环是先检查条件表达式,然后再才会增加变量,依照这个思路去想一想就可以明白了。。。。
第2个回答  2011-07-13
C)3234
a[0]=1,在执行fun()函数时,*x=*x+1,这里x形参由实参a替代,a是数组首地址,即&a[0],
这样a[0]=1+2=3,其他元素没有变,顺便说明for(i=1;i<N/2;i++)
应该是for(i=0;i<N/2;i++)
i从0开始输出,相当于输出a[0]a[1]a[2]a[3]

...希望回答的详细一些,有详细讲解 int x; x=-3+4%-5*3,则x的值为...
第一题 运算符优先级的顺序为% 大于 + 大于 ^ 所以x=-3+4%-5^3等价于x=(-3+(4%-5))^3=1 第二题 满足y!=123以及x<3的条件下循环继续 y=0!=123,x每次循环依次为0,1,2,3...所以是3次

int x; x=-3+4%-5*3;则x的值为
首先执行4%-5==4%5,得到的结果是4 其次执行4*3==12 最后 -3+12==9

int x;x=-3+4%5-6,则x值为多少?
主要是4%5是4对5取余,因为4小于5,所以结果就是4本身,如果是一个大于5得数,结果会是它除以5后的余数

对于这个C++程序,我又一些疑问,希望能帮我解读。
1.现在规范代码,都是int main()不再是以前的void main();不管怎样main()也是一个函数,既然不是void类型就要有返回值;如果执行到return语句时,该函数结束。所以你主函数中return0;后面一句输出是无效的。至于它是返回给谁,我不清楚。2.你的说法是可以的 3.在C或者C++ 中都是由主函数开始执行...

几道c++基础练习题,需要详细的分析,谢谢
第三题:只要定义了变量,如果变量没有初始化,那么编译器在编译的时候变量会赋一个不确定的值。不确定值位的长度和变量的类型相同,故执行相加表达式正确。第四题:弄清楚(a,c)的运算规则就ok了,(编译后执行结果一致)。第五题:if ( b = = 0 ) m = 1; n = 2;c\/c++语言规定一个...

int x;x=-3+4%5-6,则x的值为??为什么
public static void main(String[] args) { int x;x = -3+4%5-6;System.out.println(x);\/\/执行的顺序是 这里是逻辑运算优先级问题 x = 4%5; \/\/第一次计算 4 x = -3 +x; \/\/第二次计算 1 x = x - 6; \/\/第三次计算 -5 System.out.println(x);} 以上是示...

c++几个简单的问题,大虾帮帮哦
1.因为char是一个字节表示的,100表示小写字母c,他的整数形式是100,当c1*c2时,经过类型转后为int形,所以就是100*100=10000。2.因为char的取值范围是0-127,所以二进制只有8位,258的2进制值为100000010,c只能取到后8位,后8位是00000010,值是2,c的值又赋给了b,所以b是2.3.不能这样...

c++问题 1.分析思路要有。 2.解题过程的说明(尽量详细些)
int min,max,swap;min=max=swap=0;for(int i=1;i<SIZE;i++){ if(array[min]>array[i]) min=i;\/\/记录最小数所在位置 if(array[max]<array[i]) max=i;\/\/记录最大数所在位置 } swap=array[0];array[0]=array[min];array[min]=swap;\/\/将最小数放在第一个元素的位置 swap=array...

急~C++。这个程序段的输出结果是?int x=3;do {cout<<(x-=2);} while...
1-2,开始先输出3-2也就是1,此时--x是0,而(!(--x))则为非0,也就是真,继续执行输出,x-2就是0-2,就是-2,此时(!(--x))为0就是假,结束

帮忙看几道题C++的简单题目,求答案,多谢了
1.40 连等是按照右向左顺序计算,x +=y和x =x+y没有区别。先算 x -=x-x,即x = x - ( x - x ),结果x = 20.再算x +=20,结果x = 40 2.返回值为指向int的指针 3.不能 4.6 答案为6的原因,这6个有效字符分别为 a b \\01 8 c \\n 如果定义 char str[ ] = ...

相似回答