一、编程入门
(略)
二、顺序结构程序设计
(略)
三、分支结构程序设计
(略)
四、循环结构程序设计
1、for 语句
//求闰年
int end;
bool is_leap_year, flag = false;
cin >> end;
if (end <= 2000 || end > 2100) {
cout << "Invalid year!" << endl;
return 0;
}
for (int year=2001; year<=end; year++) {
is_leap_year = !(year % 400) || (!(year % 4) && (year % 100));
if (is_leap_year) {
cout << year << endl;
flag = true;
}
}
if (!flag)
cout << "None" << endl;
//给定大于1的整数n,求[1,n]区间上的数字之和
int n, sum = 0;
cin >> n;
for(int i = 1; i <= n; i++)
sum += i;
cout << sum << endl;
return 0;
2、while 语句
//判断质数
#include <iostream>
using namespace std;
int main() {
int n, i = 2;
cin >> n;
if (n == 1) {
cout << "no" << endl;
return 0;
}
while (i < n) {
if (n % i == 0) {
cout << "no" << endl;
return 0;
}
i++;
}
cout << "yes" << endl;
return 0;
}
3、多重循环
//当一个n位数k的每一位都是同样的数字a时,我们把k称作a的n重数,例如666被称为6的三重数。现在给定t(1≤ t ≤ 20)对a和n,求a的n重数k。
#include <iostream>
using namespace std;
int main() {
int t, a, n;
long long num;
cin >> t;
for (int i = 0; i < t; i++) {
cin >> a >> n;
num = a;
for (int j=2; j<=n; j++)
num = num * 10 + a;
cout << num << endl;
}
return 0;
}
//给定n个整数,分别求出它们的阶乘。
#include <iostream>
using namespace std;
int main() {
int n, num;
long long fac;
cin >> n;
for (int i=0; i<n; i++) {
cin >> num;
fac = 1;
for (int j=2; j<=num; j++)
fac *= j;
cout << fac << endl;
}
return 0;
}
//小明钱包里装着各种纸币。纸币有4种(纸币的类型有1元、3元、5元和10元),每一种分别有a、b、c、d张。现在小明要出门买东西,他需要支付N元,在不找零的情况下,请问能支付成功吗?如果能成功支付,那么请计算出有多少种支付方式;如果不能成功支付,就输出no。
输入描