a++,++a,a--,--a
时间: 2023-05-11 21:06:56 浏览: 75
这是一个关于自增和自减操作符的问题。a--表示先使用a的值,再将a减1;--a表示先将a减1,再使用a的值。如果a的初始值为5,那么a--的结果为5,a的值变为4;--a的结果为4,a的值也为4。a的值在这个过程中被修改了两次。
相关问题
int a = 10; int b = a++; int c = a++ + a++; int d = a++ + a++ + a++; int e = a++ + a++ + a++ + a++; int f = a++ + a++ + a++ + a++ + a++; System.out.println(b);//=10 System.out.println(c);//=23 System.out.println(d);//=42? System.out.println(e);//=70? System.out.println(f);//=110?
在这段代码中,变量a的初始值为10。我们逐行分析代码:
- `int b = a++;`:首先将变量a的值赋给变量b,然后再将a的值加1,此时a的值为11,b的值为10。
- `int c = a++ + a++;`:先计算表达式右边的值,a++的值为11,然后a再自增1变为12,a++的值为12,然后a再自增1变为13,将这两个值相加得到23,赋给变量c。
- `int d = a++ + a++ + a++;`:同样先计算表达式右边的值,a++的值为13,然后a再自增1变为14,a++的值为14,然后a再自增1变为15,a++的值为15,然后a再自增1变为16,将这三个值相加得到42,赋给变量d。
- `int e = a++ + a++ + a++ + a++;`:同上,a++的值为16,然后a自增1变为17,a++的值为17,然后a自增1变为18,a++的值为18,然后a自增1变为19,a++的值为19,将这四个值相加得到70,赋给变量e。
- `int f = a++ + a++ + a++ + a++ + a++;`:同上,a++的值为19,然后a自增1变为20,a++的值为20,然后a自增1变为21,a++的值为21,然后a自增1变为22,a++的值为22,然后a自增1变为23,a++的值为23,将这五个值相加得到110,赋给变量f。
因此,最终输出的结果为:
```
10
23
42
70
110
```
c语言、编写一个程序,可以将百分制转为对应等级, 90~100----A+++++80~89----B++++70~79----C++60~69----D
以下是将百分制成绩转换为五分制成绩的C语言程序:
```c
#include <stdio.h>
int main() {
int i, n, score;
int a = 0, b = 0, c = 0, d = 0, e = 0;
scanf("%d", &n);
for(i = 0; i < n; i++) {
scanf("%d", &score);
if(score >= 90) {
a++;
} else if(score < 90 && score >= 80) {
b++;
} else if(score < 80 && score >= 70) {
c++;
} else if(score < 70 && score >= 60) {
d++;
} else {
e++;
}
}
printf("%d %d %d %d %d\n", a, b, c, d, e);
return 0;
}
```
阅读全文