C2-1简单题目
(100/100 分数)
题目描述
任意给定 n 个整数,求这 n 个整数序列的和、最小值、最大值
输入描述
输入一个整数n,代表接下来输入整数个数,0 < n <= 100,接着输入n个整数,整数用int表示即可。
输出描述
输出整数序列的和、最小值、最大值。用空格隔开,占一行
样例输入
2
1 2
样例输出
3 1 2
#include <iostream>
using namespace std;
int main() {
int n, max, min, sum, number;
cin >> n;
cin >> number;
sum = number; max = number; min = number;
for (int i = 1; i < n; i++) {
cin >> number;
sum += number;
if (max < number)
max = number;
if (min > number)
min = number;
}
cout << sum << " " << min << " " << max << endl;
return 0;
}
C2-2 进制转换
(100/100 分数)
题目描述
已知一个只包含 0 和 1 的二进制数,长度不大于 10 ,将其转换为十进制并输出。
输入描述
输入一个二进制整数n,其长度大于0且不大于10
输出描述
输出转换后的十进制数, 占一行
样例输入
110
样例输出
6
#include<iostream>
using namespace std;
int Len(int n) {
int b = n;
int i = 0;
while (b != 0) {
b = b / 10;
i++;
}
return i;
}
int main() {
int n;
int b = 1;
int a = 0,c=0;
cin >> n;
int tmp = n;
int t = Len(n);
for (int i = 0; i < t; i++) {
a = tmp % 10;
c=c + a*b;
b *= 2;
tmp /= 10;
}
cout << c << endl;
}
C2-3实心菱形
(100 满分)
题目描述
打印 n 阶实心菱形
输入描述
输入一个整数n,0 < n <= 10
输出描述
输出 n 阶实心菱形 , 占 2*n-1 行
样例输入
3
样例输出
*
***
*****
***
*
#include <iostream>
using namespace std;
int main() {
int n, m, i, j;
cin >> n;
int max = 2 * n - 1;
for (i = 1; i <= n; i++) {
for (j = 1; j <= (max - 2 * i + 1) / 2; j++)
cout << " ";
for (j = 1; j < 2 * i; j++)
cout << "*";
for (j = 1; j <= (max - 2 * i + 1) / 2; j++)
cout << " ";
cout << endl;
}
for (i = n - 1; i > 0; i--) {
for (j = 1; j <= (max - 2 * i + 1) / 2; j++)
cout << " ";
for (j = 1; j < 2 * i; j++)
cout << "*";
for (j = 1; j <= (max - 2 * i + 1) / 2; j++)
cout << " ";
cout << endl;
}
return 0;
}