【小知识】他们不都长一个样吗,到底有什么区别呢?——i++和++i的区别以及其它的自赋值语句
1.i++和++i的区别
1.1.程序示例
题目描述
计算 1 + 2 + 3 + ⋯ + ( n − 1 ) + n 1+2+3+\cdots+(n-1)+n 1+2+3+⋯+(n−1)+n 的值,其中正整数 n n n 不大于 100。由于你没有高斯聪明,所以你不被允许使用等差数列求和公式直接求出答案。
输入格式
输入一个正整数 n n n。
输出格式
输出一个正整数,表示最后求和的答案。
输入输出样例
样例输入 #1
100
样例输出 #1
5050
提示
数据保证, 1 ≤ n ≤ 100 1 \leq n \leq 100 1≤n≤100。
程序示例:
#include<iostream>
using namespace std;
int main(){
int s=0,i=0,n;
cin>>n;
while(n--)s += ++i;
cout<<s<<endl;
return 0;
}
1.2.知识讲解
在上面的程序中,我们使用了++i,那么它和i++到底有什么区别呢?
i++ 表示先使用i的值运算,然后使i增大1。即先自增再运算。
++i 表示先使i增大1,然后使用增大后的i值运算。即先运算再自增。
例如:
• i=1; j=i++; 等同于 j=i; i+=1; 此时 i=2 j=1。
• i=1; j=++i; 等同于 i+=1; j=i; 此时 i=2 j=2。
判断练习
请指出下列语句执行后,i 和 j 的值分别是多少?
① i=3; i++; j=i;
② i=3; j=i++;
③ i=3; j=3+i++;
④ i=3; j=++i;
判断练习 – 答案
① i=3; i++; j=i; i 为 4,j 为 4
② i=3; j=i++; i 为 4,j 为 3
③ i=3; j=3+i++; i 为 4,j 为 6
④ i=3; j=++i; i 为 4,j 为 4
2.常见的自赋值运算符
符号 | 效果 |
---|---|
i++ | 等同于i=i+1; |
++i | 等同于i=i-+; |
i– | 等同于i=i-1; |
–i | 等同于i=i-1; |
喜欢就订阅此专辑吧!
【蓝胖子编程教育简介】
蓝胖子编程教育,是一家面向青少年的编程教育平台。平台为全国青少年提供最专业的编程教育服务,包括提供最新最详细的编程相关资讯、最专业的竞赛指导、最合理的课程规划等。本平台利用趣味性和互动性强的教学方式,旨在激发孩子们对编程的兴趣,培养他们的逻辑思维能力和创造力,让孩子们在轻松愉快的氛围中掌握编程知识,为未来科技人才的培养奠定坚实基础。
欢迎扫码关注蓝胖子编程教育