你好呀,我是目录
1001. 温度转换
题目:将输入的华氏温度转换为摄氏温度。由华氏温度F与摄氏温度C的转换公式为:F=C×9/5+32。
输入
输入一个实数,表示华氏温度
输出
输出对应的摄氏温度,答案保留4位小数。
样例输入
50
样例输出
10.0000
C语言
#include <stdio.h>
int main()
{
double F, C;
scanf("%lf", &F);
C = (F - 32) * 5 / 9;
printf("%.4lf", C); // 保留n位小数 %.nlf
return 0;
}
C++
#include <iostream>
#include <iomanip> // 保留小数位的头文件
using namespace std;
int main()
{
double F, C; // 华氏温度:Fahrenheit 摄氏温度:Celsius
cin >> F;
C = (F - 32) * 5 / 9; // 转换公式
cout << fixed << setprecision(4) << C; // 保留4位小数
return 0;
}
🍅 Try it 🗝 1001. 温度转换 (Standard IO)
1002. 三角形
题目:输入三角形三边长a,b,c(保证能构成三角形),输出三角形面积。
输入
一行三个用一个空格隔开的实数a,b,c,表示三角形的三条边长。
输出
输出三角形的面积,答案保留四位小数。
样例输入
3 4 5
样例输出
6.0000
海伦公式求三角形面积 |
---|
area = sqrt(p*(p - a)(p - b)(p - c)) |
半周长:p = (a + b + c) / 2 |
C语言
#include <stdio.h>
#include <math.h>
int main()
{
double a, b, c;
double p, area;
scanf("%lf %lf %lf", &a, &b, &c);
p = (a + b + c) / 2;
area = sqrt(p*(p - a)*(p - b)*(p - c));
printf("%.4lf", area);
return 0;
}
C++
#include <iostream>
#include <iomanip> // 保留小数点所需头文件
#include <cmath> // 使用数学函数库所需头文件
using namespace std;
int main()
{
double a, b, c, p, area; // p:半周长
cin >> a >> b >> c;
p = (a + b + c) / 2; // 求半周长p
area = sqrt(p*(p - a)*(p - b)*(p - c)); // 海伦公式求三角形面积
cout << fixed << setprecision(4) << area << endl; // 保留四位小数
return 0;
}
🍅 Try it 🗝 1002. 三角形 (Standard IO)
1003. 猜数游戏
题目:有一个“就是它”的猜数游戏,步骤如下:请你对任意输入的一个三位数x,在这三位数后重复一遍,得到一个六位数,467–>467467.把这个数连续除以7、11、13,输出最后的商。
输入
输入一个三位数x。
输出
输出最后的商。
样例输入
100
样例输出
100
C语言
#include <stdio.h>
int main()
{
int n1, n2, a, b, c;
scanf("%d", &n1);
a = n1 % 10;
b = n1 / 10 % 10;
c = n1 / 100;
n2 = n1*1000 + (c*100 + b*10 + a);
double result = n2 / 7 / 11 / 13;
printf("%.0lf", result); // 注意:输出结果斩掉小数位
return 0;
}
C++
#include <iostream>
using namespace std;
int main()
{
int n1, n2, a, b, c;
cin >> n1;
a = n1 % 10; // 个位
b = n1 /10 % 10; // 十位
c = n1 / 100; // 百位
n2 = n1 * 1000 + c * 100 + b * 10 + a; // 得到新的六位数
double result = n2 / 7 / 11 / 13; // 连续除以7、11、13
cout << result << endl;
return 0;
}
🍅 Try it 🗝 1003. 猜数游戏 (Standard IO)
1004. 填充矩形
题目:已知矩形的大小为n×m,现用a×a的正方形填充该矩形。输入三个正整数n,m,a(n,m,a≤10^9),计算至多能填入多少正方形?(正方形可以正好碰到矩形边界,但不能超出矩形外)
数据范围限制
1<=n,m,a≤10^9
输入
一行三个用一个空格隔开的正整数n,m,a。
输出
输出能填入正方形的数量。
样例输入
3 4 1
样例输出
12
C语言
本题注意点:根据数据范围限制,选用变量类型 long
#include <stdio.h>
int main()
{
long n, m, a, cnt;
scanf("%ld %ld %ld", &n, &m, &a); // long类型的输入输出表示 %ld
cnt = (n / a) * (m / a);
printf("%ld", cnt);
return 0;
}
C++
#include <iostream>
using namespace std;
int main()
{
long n, m, a, cnt; // 注意数据范围
cin >> n >> m >> a;
cnt = (n / a) * (m / a);
cout << cnt << endl;
return 0;
}
🍅 Try it 🗝 1004. 填充矩形 (Standard IO)
1005. 存款收益
题目:按年利率R%存入本钱X,存入P年后的本利合计为Y=X*((100+R)/100)^P,求Y的值。
输入
输入一行三个空格隔开的实数R,X,P
输出
输出收益Y,答案保留两位小数。
样例输入
1 100 5
样例输出
105.10
C语言
#include <stdio.h>
#include <math.h>
int main()
{
double R, X, P, Y;
scanf("%lf %lf %lf", &R, &X, &P);
Y = X * pow((100+R)/100, P);
printf("%.2lf", Y);
return 0;
}
C++
#include <iostream>
#include <iomanip> // 保留小数位所需头文件
#include <cmath> // 使用数学函数库所需头文件
using namespace std;
int main()
{
double R, X, P, Y;
cin >> R >> X >> P;
Y = X * pow((100 + R) / 100, P);
cout << fixed << setprecision(2) << Y << endl; // 保留两位小数
return 0;
}
🍅 Try it 🗝 1005. 存款收益 (Standard IO)
1007. 计算余数
题目:计算两个双精度浮点数a和b相除的余数,a和b都是正数。这里余数(r)的定义是:a = k * b + r,其中 k是整数, 0 <= r < b。
输入
一行两个空格隔开的数a和b。
输出
输出a除以b的余数(答案保留两位小数)。
样例输入
3 2
样例输出
1.00
C语言
#include <stdio.h>
int main()
{
double a, b, k, r;
scanf("%lf %lf", &a, &b);
k = (int)(a / b); // 强制类型转换
r = a - k * b;
printf("%.2lf", r);
return 0;
}
C++
#include <iostream>
#include<iomanip> // 保留小数位所需头文件
using namespace std;
int main()
{
double a, b, k, r;
cin >> a >> b;
// a = k * b + r
k = (int)(a / b);
r = a - k * b;
cout << fixed << setprecision(2) << r << endl; // 保留两位小数
return 0;
}
🍅 Try it 🗝 1007. 计算余数 (Standard IO)
1008. 水仙花数
题目:输入一个三位数n,判断是否为水仙花数,如果是则输出“YES”,不是则输出“NO”。水仙花数:是指一个3位数,它的每个位上的数字的3次幂之和等于它本身。(例如:1^3 + 5^3+ 3^3 = 153)
数据范围限制
100<=n<=999
输入
输入一个三位数n。
输出
按照题目描述输出对应结果。
样例输入
153
样例输出
YES
C语言
#include <stdio.h>
#include <math.h>
int main()
{
int n1, n2, a, b, c;
scanf("%d", &n1);
a = n1 % 10;
b = n1 / 10 % 10;
c = n1 / 100;
n2 = pow(a, 3) + pow(b, 3) + pow(c, 3);
if (n1 == n2)
printf("YES");
else
printf("NO");
return 0;
}
C++
#include <iostream>
#include <cmath> // 使用数学函数库所需头文件
using namespace std;
int main()
{
int n1, n2, a, b, c;
cin >> n1;
a = n1 % 10; // 个位
b = n1 / 10 % 10; // 十位
c = n1 / 100; // 百位
n2 = pow(a, 3) + pow(b, 3) + pow(c, 3);
if (n1 == n2)
cout << "YES" << endl;
else
cout << "NO" << endl;
return 0;
}
🍅 Try it 🗝 1008. 水仙花数 (Standard IO)
1009. 分配任务
题目:在社会实践活动中有三项任务分别是:种树、采茶、送水。依据小组人数及男生、女生人数决定小组的接受任务,人数小于10人的小组负责送水(输出water),人数大于等于10人且男生多于女生的小组负责种树(输出tree),人数大于等于10人且男生不多于女生的小组负责采茶(输出tea)。输入小组男生人数、女生人数,输出小组接受的任务。
输入
一行两个空格隔开的数,表示小组中男生和女生的人数。
输出
输出对应的任务。
样例输入
5 3
样例输出
water
C语言
#include <stdio.h>
int main()
{
int boys, girls, total;
scanf("%d %d", &boys, &girls);
total = boys + girls;
if (total >= 10)
{
if (boys > girls)
printf("tree");
else
printf("tea");
}
else
printf("water");
return 0;
}
C++
#include <iostream>
using namespace std;
int main()
{
int boys, girls, total;
cin >> boys >> girls;
total = boys + girls; // 总人数
if (total >= 10)
{
if (boys > girls)
cout << "tree" << endl;
else
cout << "tea" << endl;
}
else
cout << "water" << endl;
return 0;
}
🍅 Try it 🗝 1009. 分配任务 (Standard IO)
1010. 邮寄包裹
题目:某邮局对邮寄包裹有如下规定:若包裹的重量超过30千克,不予邮寄,对可以邮寄的包裹每件收手续费0.2元,再加上根据下表按重量wei计算的结果:
重量(千克) 收费标准(元/公斤)
wei<=10 0.80
10<wei<=20 0.75
20<wei<=30 0.70
请你编写一个程序,输入包裹重量,输出所需费用或”Fail”表示无法邮寄。
输入
输入一个正整数,表示邮寄包裹的重量。
输出
输出对应的费用(答案保留2位小数)或“Fail”表示无法邮寄。
样例输入
7
样例输出
5.80
C语言
#include <stdio.h>
int main()
{
int wei;
scanf("%d", &wei);
double f1, f2, fee; // 费用
f1 = 0.8 * 10;
f2 = f1 + 10 * 0.75;
if (wei <= 30)
{
if (wei <= 10)
fee = wei * 0.8;
else if (wei <= 20)
fee = f1 + (wei - 10) * 0.75;
else
fee = f2 + (wei - 20) * 0.7;
fee+=0.2;
printf("%.2lf", fee);
}
else
printf("Fail");
return 0;
}
C++
#include <iostream>
#include <iomanip> // 保留小数所需头文件
using namespace std;
int main()
{
int wei; // 重量
cin >> wei;
double f1, f2, fee; // 费用
f1 = 0.8 * 10;
f2 = f1 + 10 * 0.75;
if (wei <= 30)
{
if (wei <= 10)
fee = 0.8 * wei;
else if (wei <= 20)
fee = f1 + (wei - 10) * 0.75;
else
fee = f2 + (wei - 20) * 0.70;
fee += 0.2; // 收手续费0.2元
cout << fixed << setprecision(2) << fee << endl; // 保留2位小数
}
else
cout << "Fail" << endl; // 超过30千克,无法邮寄
return 0;
}
🍅 Try it 🗝 1010. 邮寄包裹 (Standard IO)
1012. 变换密码
题目:一密码变换规则如下:一个正整数对应一个字符;如果该数模123的值在97-122范围,变换为ASCII为该余数对应的小写字符;如果变换不了小写字符,将该数模91,若余数在65-90范围,变换为ASCII为该余数对应的大写字符;如果变换不了大小写字符,变换为“*”。输入一个正整数,输出变换后的字符。
输入
输入一个正整数n(1<=n<=1000)表示原始密码。
输出
输出变换后的密码。
样例输入
42
样例输出
C语言
#include <stdio.h>
int main()
{
int n;
scanf("%d", &n);
char c;
if (n % 123 >= 97 && n % 123 <= 122)
c = n % 123;
else if (n % 91 >= 65 && n % 91 <= 90)
c = n % 91;
else
c = '*';
printf("%c", c);
return 0;
}
C++
#include <iostream>
using namespace std;
int main()
{
int n;
cin >> n;
char c;
if (n % 123 >= 97 && n % 123 <= 122)
c = n % 123;
else if (n % 91 >= 65 && n % 91 <= 90)
c = n % 91;
else
c = '*';
cout << c << endl;
return 0;
}
🍅 Try it 🗝 1012. 变换密码 (Standard IO)
🍅 🍅 🍅 撸起袖子加油干 🔊