[编程入门]Sn的公式求和
时间限制: 2s 内存限制: 192MB
题目描述
求Sn=a+aa+aaa+…+aa…aaa(有n个a)之值,其中a是一个数字,为2。 例如,n=5时=2+22+222+2222+22222,n由键盘输入。
输入格式
n
输出格式
Sn的值
样例输入
5
样例输出
24690
参考代码
#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
int main() {
int n;//定义输入的变量n
int a=2;
long long sum=0; //用于储存结果
scanf("%d", &n);
long long b = 0; //用于储存当前项的值用于累加
for (int i=1; i <= n; i++) {
b = b * 10 + a; // 生成当前项
sum += b;
}
printf("%d\n", sum);
return 0;
}
[编程入门]最大公约数与最小公倍数
时间限制: 2s 内存限制: 192MB
题目描述
输入两个正整数m和n,求其最大公约数和最小公倍数。
输入格式
两个整数
输出格式
最大公约数,最小公倍数
样例输入
5 7
样例输出
1 35
参考代码
#include <stdio.h>
// 函数声明
int max(int a, int b);// 求最大公约数的函数实现(使用欧几里得算法)
int min(int m, int n, int max_value);// 求最小公倍数的函数实现
int main() {
int m, n;
scanf("%d %d", &m,&n); // 输入两个正整数
int max_value = max(m, n); // 计算最大公约数
int min_value = min(m, n, max_value); // 计算最小公倍数
printf("%d %d\n", max_value, min_value);
return 0;
}
int max(int a, int b) {
while (b != 0) { // 求最大公约数的函数实现(使用欧几里得算法)
int temp = b;
b = a % b;
a = temp;
}
return a;
}
int min(int m, int n, int max_value) {
return (m * n) / max_value; // 求最小公倍数的函数实现
}
[编程入门]数字的处理与判断
题目描述
给出一个不多于5位的整数,要求 1、求出它是几位数 2、分别输出每一位数字 3、按逆序输出各位数字,例如原数为321,应输出123
输入格式
一个不大于5位的数字
输出格式
三行 第一行 位数 第二行 用空格分开的每个数字,注意最后一个数字后没有空格 第三行 按逆序输出这个数
样例输入
12345
样例输出
5
1 2 3 4 5
54321
参考代码
#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
int arr[6];
int num(int x)// 求出几位数
{
int sum, count = 0;
if (x == 0) {
return 1;
}
sum = x;
while (sum != 0)
{
sum = sum / 10;
count++;
}
return count;
}
void num1(int y) // 顺序输出
{
int count = num(y);
int sum, b;
sum = y;
while (sum) {
b = sum % 10;
arr[count - 1] = b;
count--;
sum /= 10;
}
for (int i = 0; i < num(y); i++) {
printf("%d ", arr[i]);
}
}
void num2(int y) // 逆序输出
{
int sum, b;
sum=y;
while (sum) {
b = sum % 10;
printf("%d", b);
sum /= 10;
}
}
int main() {
int a;
scanf_s("%d", &a);
int count = num(a);// 求出几位数(值)
printf("%d\n", count);
num1(a);// 逆序输出
printf("\n");
num2(a);// 逆序输出
return 0;
}
[编程入门]温度转换
时间限制: 2s 内存限制: 192MB
题目描述
输入一个华氏温度,要求输出摄氏温度。公式为 c=5(F-32)/9,取位2小数。
输入格式
一个华氏温度,浮点数
输出格式
摄氏温度,浮点两位小数
样例输入
-40
样例输出
c=-40.00
参考代码
#include <stdio.h>
int main(){
float F, c;
scanf("%f", &F);
c = 5*(F - 32) / 9;
printf("c=%.2f", c);
return 0;
}
[竞赛入门]简单的a+b
时间限制: 2s 内存限制: 192MB
题目描述
输入两个整数a和b,计算a+b的和
本题很简单,但是注意此题是多组测试数据,即需要不停的接收系统的测试输入,你都可以计算结果并输出
输入格式
输入两个整数A和B
范围不超过2^10
输出格式
求A+B
样例输入
1 1
10 20
样例输出
2
30
参考代码
#include <stdio.h>
int main() {
int a, b;
// 使用循环来处理多组测试数据
while (scanf("%d %d", &a, &b) != EOF) {
printf("%d\n", a + b);
}
return 0;
}
#include<iostream>
using namespace std;
int main(){
int a, b;
while (cin >> a >> b)
cout << (a + b) << endl;
return 0;
}