#include <iostream> using namespace std; int main() { int a; while (true) { cout << "Please enter a number between 1 and 1000:"; cin >> a ; //读取一个整数 if (!cin) { //清除错误标记 cin.clear(); //清除 cin 的错误标记,1000是最多丢失1000字符,防止一行输入超长,限制清空的字符上限,避免程序卡死。 cin.ignore(1000, '\n'); continue; } //判断两个数字都在 1~100 范围内 if (a >= 1 && a <= 1000 ) { //范围合法,跳出 while 循环 break; } //范围不对,提示重新输入 else { cout << "Input error!" << endl; } } int sum; sum = a * (1 + a) / 2; cout << sum << endl; return 0; }简化代码:
#include <iostream> using namespace std; int main() { int n; cin >> n; int sum = n * (n + 1) / 2; cout << sum << endl; return 0; }