CPP1 定义变量
描述
按顺序分别定义char、int、long、double类型的变量,并用sizeof()依次输出这几个变量在内存中所占用的字节数。
输入
#include <iostream>
using namespace std;
int main() {
// write your code here......
char c;int i;long l;double d;
cout<<sizeof(c)<<endl<<sizeof(i)<<endl<<sizeof(l)<<endl<<sizeof(d)<<endl;
return 0;
}
输出
CPP2 实现四舍五入
描述
将浮点数转换为整数类型,要求四舍五入。
输入
#include <iostream>
using namespace std;
int main() {
double d;
cin >> d;
if (d > 0) {
cout << (int)(d+0.5);
}
else {
cout << (int)(d-0.5);
}
}
输出
CPP3 两数求和
描述
键盘录入两个整数 a 和 b,并对 a 和 b 求和,输出结果。
输入
#include <iostream>
using namespace std;
int main()
{
int a,b;
cin >> a >> b;
if (-1000 <= a <= 1000 && -1000 <= b <= 1000) {
cout << a + b << endl;
}
return 0;
}
输出
CPP4 获取两数中的较大值
描述
键盘录入两个整数 a 和 b,获取这两个整数中的较大值,并输出。
输入
#include <iostream>
using namespace std;
int main()
{
int a,b;
cin >> a >> b;
int max = a > b ? a : b;
cout << max << endl;
return 0;
}
输出
CPP5 简单运算
描述
键盘输入两个 int 范围的正整数 a 和 b,范围为[1, 9999],输出这两个 int 范围的正整数的和,差,积,商,模(若 a > b 则输出 a - b,a / b,a % b 的值反之输出 b - a,b / a,b % a 的值,不考虑小数)
输入
#include <iostream>
using namespace std;
int main()
{
int a,b;
cin >> a >> b;
if (1 <= a <= 9999 && 1 <= b <= 9999) {
if (a < b) {
swap(a, b);
}
}
cout << a + b << ' ' << a - b << ' ' << a * b << ' ' << a / b << ' ' << a % b << endl;
return 0;
}
输出
CPP6 交换两个变量的值
描述
实现交换两个int类型变量的值
输入1(不用交换变量)
#include <iostream>
using namespace std;
int main()
{
int a,b;
cin >> a >> b;
a = a + b;
b = a - b;
a = a - b;
cout << a << " " << b << endl;
return 0;
}
输入2(直接用自带交换函数)
#include <iostream>
using namespace std;
int main()
{
int a,b;
cin >> a >> b;
swap(a,b);
cout << a << " " << b << endl;
return 0;
}
输入3(一种很新的交换输入方式)
#include <iostream>
using namespace std;
int main()
{
int a,b;
cin >> a >> b;
cout << b << " " << a << endl;
return 0;
}
输出
CPP7 获取三个数中的最大值(三元表达式实现)
描述
键盘录入三个整数 a、b、c,获取这三个整数中的最大值,并输出。(要求使用三元表达式实现)
输入
#include <iostream>
using namespace std;
int main()
{
int a, b, c, max;
cin >> a;
cin >> b;
cin >> c;
max = a > b ? (a > c ? a : c) : (b > c ? b : c);
cout << max <<endl;
return 0;
}
输出
CPP8 计算商品打折结算金额
描述
牛牛商场促销活动:
满100打9折;
满500打8折;
满2000打7折;
满5000打6折
牛阿姨算不清楚自己应该付多少钱,请你帮忙算一下
输入
#include <iostream>
#include <iomanip>
using namespace std;
int main() {
double price;
cin >> price;
double cost = 0.0;
// write your code here.......
if (price >= 0 && price < 100) {
cost = price;
}
else if (price >= 100 && price < 500) {
cost = price * 0.9;
}
else if (price >= 500 && price < 2000) {
cost = price * 0.8;
}
else if (price >= 2000 && price < 5000) {
cost = price * 0.7;
}
else if (price >= 5000) {
cost = price * 0.6;
}
cout << cost << endl;
return 0;
}
输出
CPP9 判断身体状态
描述
体重指数(BMI)是世界卫生组织(WHO)推荐国际统一使用的肥胖分型标准,即BMI=体重/身高2(kg/m2)。小于 18.5 属于"偏瘦",大于等于 18.5 小于 20.9 属于"苗条",大于等于 20.9 小于等于 24.9 属于"适中",超过 24.9 属于"偏胖"。下面由你来编写一段逻辑,输入用户的身高和体重,计算出对应的体重指数,并返回他们的身材状态。
输入
#include <iostream>
#include <iomanip>
using namespace std;
int main() {
double weight;
double height;
double BMI;
cin >> weight;
cin >> height;
BMI = weight / (height * height);
// write your code here......
if (BMI < 18.5) {
cout << "偏瘦" << endl;
}
else if (BMI >= 18.5 && BMI < 20.9) {
cout << "苗条" << endl;
}
else if (BMI >= 20.9 && BMI <= 24.9) {
cout << "适中" << endl;
}
else if (BMI >= 24.9) {
cout << "偏胖" << endl;
}
return 0;
}
输出
CPP10 判断成绩等级
描述
键盘录入一个成绩(整数),判断并输出成绩的等级,如果用户输入成绩不合法(小于0或者大于100)则输出成绩不合法。
90-100 优秀
80-89 良
70-79 中
60-69 及格
0-59 差
输入
#include <iostream>
#include <iomanip>
using namespace std;
int main() {
int score;
cin >> score;
if (score >= 0 && score <= 59) {
cout << "差" << endl;
}
else if (score >= 60 && score <= 69) {
cout << "及格" << endl;
}
else if (score >= 70 && score <= 79) {
cout << "中" << endl;
}
else if (score >= 80 && score <= 89) {
cout << "良" << endl;
}
else if (score >= 90 && score <= 100) {
cout << "优秀" << endl;
}
else {
cout << "成绩不合法" << endl;
}
return 0;
}
输出
CPP11 判断季节
描述
键盘录入一个月份 month,判断属于哪个季节。(3 - 5 月为春季、6 - 8 月为夏季、9 - 11 月为秋季、12,1,2 月为冬季)
输入1
#include <iostream>
#include <iomanip>
using namespace std;
int main() {
int month;
cin >> month;
if (month < 1 || month > 12) //优先判断是否合法月份
cout << "不合法" << endl;
else {
switch (month) { //根据月份判断
case 3:
case 4:
case 5:
cout << "春季" << endl; break;
case 6:
case 7:
case 8:
cout << "夏季" << endl; break;
case 9:
case 10:
case 11:
cout << "秋季" << endl; break;
default:
cout << "冬季" << endl;
}
}
return 0;
}
输入2(三元表达式)
#include <iostream>
#include <iomanip>
using namespace std;
int main() {
int month;
cin >> month;
if (month < 1 || month > 12) //优先判断是否合法月份
cout << "不合法" << endl;
else if (month == 12 || month == 1 || month == 2) {
cout << "冬季" << endl;
}
else {
month > 8 ? cout << "秋季" : (month > 5 ? cout << "夏季" : cout << "春季");
}
return 0;
}
输出
CPP12 求 1 - n 之间偶数的和
描述
键盘输入一个 int 类型的正整数 n,n 的范围为[1, 1000],求 1 - n 之间偶数的和,并输出。
输入
#include <iostream>
using namespace std;
int main() {
int n;
cin >> n;
int sum = 0;
if (n % 2 == 1) //奇数等于比它小的那个偶数
n--;
sum = (n / 2) * (n / 2 + 1); //公式计算
cout << sum << endl;
return 0;
}
输出
CPP13 计算一个数的阶乘
描述
键盘录入一个整数 n,求 n 的阶乘。
n 的阶乘为 n * (n - 1) * (n - 2) * … * 1
例:5 的阶乘为 5 * 4 * 3 * 2 * 1
输入1(循环遍历)
#include <iostream>
using namespace std;
int main() {
int n;
cin >> n;
long long factorial = 1;
// write your code here......
if (n >= 1 && n <= 20) {
while (n != 0) {
factorial = factorial * n;
n--;
}
}
cout << factorial << endl;
return 0;
}
输入2(递归函数)
#include <iostream>
using namespace std;
long long recursion(int n){
if(n == 1)
return 1;
return recursion(n - 1) * n; //递归计算n*f(n-1)
}
int main() {
int n;
cin >> n;
long long factorial = recursion(n); //递归
cout << factorial << endl;
return 0;
}
输出
CPP14 输出水仙花数
描述
在控制台输出所有的“水仙花数”。
水仙花数是指一个三位数,其各位数字的立方和等于该数本身。
举例:153就是一个水仙花数。
153 = 111 + 555 + 333 = 1 + 125 + 27 = 153
输入
#include <iostream>
using namespace std;
int main() {
// write your code here......
for (int i = 1; i < 10; i++) {
for (int j = 0; j < 10; j++) {
for (int k = 0; k < 10; k++) {
if (i * 100 + j * 10 + k == i * i * i + j * j * j + k * k * k) {
cout<< i << j << k <<endl;
}
}
}
}
return 0;
}
输出
CPP15 打印乘法表
描述
键盘输入一个正整数 n,打印对应的乘法表。
例如键盘输入 3,则打印 3 × 3 乘法表
1 * 1 = 1
1 * 2 = 2 2 * 2 = 4
1 * 3 = 3 2 * 3 = 6 3 * 3 = 9
输入
#include <iostream>
using namespace std;
int main() {
int n;
cin >> n;
// write your code here......
for (int i = 1; i <= n; i++) {
for (int j = 1; j <= i; j++) {
cout << j << " * " << i << " = " << i*j << " ";
}
cout << endl;
}
return 0;
}
输出
CPP16 规律数列求和
描述
有数列为:9,99,999,…,9999999999(10个9)。要求使用循环结构编写程序计算此数列的和,并在控制台输出结果。
输入
#include <iostream>
using namespace std;
int main() {
long long sum = 0, temp = 1, n = 10;
for (int i = 1; i <= n; i++) {
temp = temp * 10;
sum += temp;
}
cout << sum - n << endl;
return 0;
}
输出
CPP17 计算小球走过的路程和反弹高度
描述
一球从 h 米高度自由落下,每次落地后反跳回原高度的一半再落下,求它在第 n 次落地时共经过了多少米?第 n 次返弹多高?
输入
#include <iostream>
using namespace std;
int main() {
// 下落的高度和落地的次数
double h,sum = 0;
int n;
cin >> h;
cin >> n;
// write your code here......
for (int i = 0; i < n; i++) {
if (i == 0) {
sum = h;
}
else {
sum += (h * 2);
}
h /= 2;
}
printf("%.1f %.1f", sum, h);
return 0;
}
输出
CPP18 判断一个数是不是质数
描述
输入一个大于 1 的整数,判断其是不是质数。
输入
#include <iostream>
using namespace std;
int main() {
// write your code here......
int n;
cin >> n;
for (int i = 2; i <= n; i++) {
if (i == n) {
cout << "是质数" << endl; break;
}
if (n % i == 0) {
cout << "不是质数" << endl; break;
}
}
return 0;
}
输出
CPP19 获取数组最值
描述
键盘随机输入 6 个整数,将这些数据保存到数组中,获取数组中的最小值和最大值并输出。
输入
#include <iostream>
using namespace std;
int main() {
int arr[6] = { 0 };
int len = sizeof(arr) / sizeof(int);
for (int i = 0; i < len; i++) {
cin >> arr[i];
}
int max = arr[0]; //最大最小分别都记录第一个数
int min = arr[0];
for(int i = 1; i < 6; i++){ //遍历后面5个
max = arr[i] > max ? arr[i] : max; //依次比较,取较大值
min = arr[i] < min ? arr[i] : min; //依次比较,取较小值
}
cout << min << " " << max << endl;
return 0;
}
输出
CPP20 数组元素反转
描述
键盘随机输入 6 个整数,将这些数据保存到数组中,先将数组中元素按照格式输出,然后再将数组元素反转,最后按照格式再次输出数组元素。
输入
#include <iostream>
using namespace std;
int main() {
int arr[6] = { 0 };
int len = sizeof(arr) / sizeof(int);
for (int i = 0; i < len; i++) {
cin >> arr[i];
}
cout << "[";
for (int i = 0; i < len; i++) {
if (i == len - 1) {
cout << arr[i] << "]" << endl;
break;
}
cout << arr[i] << ", ";
}
// write your code here......
int temp;
for (int i = 0; i < len/2; i++) {
temp = arr[i];
arr[i] = arr[len - i - 1];
arr[len - i - 1] = temp;
}
cout << "[";
for (int i = 0; i < len; i++) {
if (i == len - 1) {
cout << arr[i] << "]" << endl;
break;
}
cout << arr[i] << ", ";
}
return 0;
}
输出
CPP21 C++冒泡排序
描述
键盘随机输入 6 个整数,将这些数据保存到数组中,使用冒泡排序对数组中的元素进行从小到大顺序排序,输出排序后数组中的元素(元素之间使用空格隔开)。
输入
#include <iostream>
using namespace std;
int main() {
int arr[6] = { 0 };
int len = sizeof(arr) / sizeof(int);
for (int i = 0; i < len; i++) {
cin >> arr[i];
}
for (int i = 0; i < len - 1; i++) {
//第i趟比较
for (int j = 0; j < len - i - 1; j++) {
//开始进行比较,如果arr[j]比arr[j+1]的值大,那就交换位置
if (arr[j] > arr[j + 1]) {
swap(arr[j], arr[j + 1]);
}
}
}
for (int i = 0; i < len; i++) //输出
cout << arr[i] << " ";
return 0;
}
输出
CPP22 C++选择排序
描述
键盘随机输入 6 个整数,将这些数据保存到数组中,使用选择排序对数组中的元素进行从小到大顺序排序,输出排序后数组中的元素(元素之间使用空格隔开)。
输入
#include <iostream>
using namespace std;
int main() {
int arr[6] = { 0 };
int len = sizeof(arr) / sizeof(int);
for (int i = 0; i < len; i++) {
cin >> arr[i];
}
// write your code here......
for (int i = 0; i < len - 1; i++) {
int min = i;
for (int j = i + 1; j < len; j++) {
if (arr[j] < arr[min])
min = j;
}
swap(arr[i], arr[min]);
}
for (int i = 0; i < len; i++) {
cout << arr[i] << ' ';
}
return 0;
}
输出