题目描述
第一次提交❌
根据现有知识点解题:
#include<iostream>
using namespace std;
int main(){
int n;
while (cin >> n){
if (n==0)break;
}
}
不会写连加的输入输出 不过和课程文件里老师写的初步代码一样也算有进步 马上开始这道题的学习
题目分析+第二次提交❌
可以事先定义一个变量sum,用于计算最后的结果,将 每次输入的数用变量a来指代,在循环中完成累加
#include<iostream>
using namespace std;
int main(){
int n,a;
int sum = 0;
while (cin >> n){
for(a,sum,n; sum=a+sum ; n==0){
cin >> a;
n--;
}
cout << sum;
}
}
不知道哪儿错了于是用豆包跑出来了一个for循环版题解,自主优化冗余部分后为:
#include<iostream>
using namespace std;
int main(){
int n;
while(cin >> n) {
if (n == 0) break;
int sum = 0;
int a;
// 内层for循环替换原while(n>0),循环n次,无需手动n--
for (int i = 0; i < n; i++) {
cin >> a;
sum += a; // 等价于sum = sum + a,简化写法
}
cout << sum << endl;
}
return 0;
}
用while循环完成题解
#include<iostream>
using namespace std;
int main(){
int n;
while (cin >> n){
int a;
int sum = 0;
if(n==0)break;
while(n>0){
cin >> a;
sum = sum + a;
n--;
}
cout << sum << endl;
}
}
运算符
算术运算符
常用的算术运算符有+、-、*、/、%,含义分别是加法、减法、乘法、除法和取余(只有整数可以进行取余运算)。
int a = 1 + 2; //运算结果为3
int b = 1 - 2; //运算结果为-1
int b = 1 * 2; //运算结果为2
int b = 5 / 2; //运算结果为2,小数部分被舍弃
int b = 21 % 6; //运算结果为3,意思是计算两个整数相除所得的余数,
赋值运算符
切记一定要分清相等运算符
==与赋值运算符=
如果要对某个值进行运算,再把计算的结果赋给这个值,此时可以使用复合运算符:
sum += a //等价于sum = sum + a,其余同理
sum -= a
sum *= a
sum /= a
sum %= a