- 曾雪琳 的博客
1.顺序结构答案.md
- 2023-10-16 10:42:06 @
[toc]
p11时间转换
输入一个秒数 n(从0秒开始),且这个秒数 0<n<84600。
输出这个秒数对应的 时:分:秒
(00:00:00)。
#include <stdio.h>
int main() {
int n, a, b, c;
scanf("%d", &n); // 记得不要忘记&
a = n / 3600;
b = n / 60 % 60;
c = n % 60;
printf("%02d:%02d:%02d", a, b, c); // 记得不要少了02,题目要求00:00:00
return 0;
}
p12字母转换
输入一个小写字母。
输出其对应的大写字母。
#include <stdio.h>
int main() {
char c1, c2; // 这里输入的是字符声明应用char
scanf("%c", &c1); // 字符占位符%c
c2 = c1 - 32; // 小写字母的ASCII比对应大写字母的大32
printf("%c\n", c2);
return 0;
}
p13加密姓氏
输入 一个姓氏拼音(长度为 4),取姓氏的每一个字母的 ASCII 再加 7,作为密码。
输出 按顺序输出密码(一行数字)
#include <stdio.h>
int main() {
char a;
a = getchar(); printf("%d", a + 7); // 用了a=getchar()直接相当于输入a的ASCII
a = getchar(); printf("%d", a + 7); // getchar返回的是ASCII码
a = getchar(); printf("%d", a + 7);
a = getchar(); printf("%d", a + 7);
return 0;
}
p14斤两单位转换
输入 十两一斤的重量数,输入第一行是斤数, 第二行是两数。
输出 对应十六两一斤秤的重量数,输出第一行是斤数, 第二行是两数。
#include <stdio.h>
int main() {
int a, b, c, d;
scanf("%d\n%d\n", &a, &b); // 记得要加/n换行
c = (a * 10 + b) / 16; // 记得打括号
d = (a * 10 + b) % 16;
printf("%d\n%d\n", c, d); // 记得要加/n换行
return 0;
}
p19分解实数
输入 一个含有两位小数的实数
输出 实数的整数部分和小数部分(一行)
#include <stdio.h>
int main() {
int a, x;
double n, b;
scanf("%lf", &n); // 不用加.2
x = n * 100;
a = x / 100;
b = n - a;
printf("%.2lf=%d+%.2lf", n, a, b); // 保留两位小数
return 0;
}
p20最多能倒多少杯水
已知电水箱的容量为 n(n≤10L) 升,同学们带的杯子平均容量为 x 毫升(x在100~300之间),请问烧一箱开水,最多能倒多少杯?
**输入 **2个整数n和 x。
输出 代表最多能够倒多少杯水(不足1杯算1杯)。
#include <math.h> //ceil是数学函数
#include <stdio.h>
int main() {
float n, x, a;
scanf("%f%f", &n, &x);
a = n * 1000 / x; // 记得*1000
printf("%.0f", ceil(a)); // ceil()向上取整,.0是取零位小数即保留整数部分
return 0;
}
p21求商数和余数
输入a,b 两个整数,编程求出 a 除以 b 得到的商和余数。
输入 一行,只有两个整数 a,b (中间有空格)。
输出 只有一行,两个整数(中间有空格)。
#include <stdio.h>
int main() {
int a, b, c, d;
scanf("%d %d", &a, &b); // 中间有空格
c = a / b;
d = a % b;
printf("%d %d", c, d); // 中间有空格
return 0;
}
p15温度转换
编一程序,将摄氏温度换为华氏温度。公式为:f(华氏温度)=9/5*c(摄氏温度)+32。
输入 整数c
输出 实数f(保留两位小数)
#include <stdio.h>
int main() {
int c;
scanf("%d", &c);
float a, f;
a = c * 0.01; // 将整数c转化为浮点数a
f = 9 * a * 100 / 5 + 32;
printf("%0.2f", f); // 保留两位小数
return 0;
}
p22求圆环的面积
圆环面积= 外圆的面积-内圆面积()(假设 π=3.14,结果保留 2 位小数)。
输入 两个整数r1(外圆半径)、r2(内圆半径)。
**输出 **圆环铁片的面积。
#include <stdio.h>
int main() {
int r1, r2;
double S1, S2, S; // 注意面积是小数
scanf("%d %d", &r1, &r2); // 不要少了&
S1 = 3.14 * r1 * r1; // 平方可以用两个r1相乘表示
S2 = 3.14 * r2 * r2;
S = S1 - S2;
printf("%.2lf", S); // 保留两位小数
return 0;
}
p23种蔬菜
种四种蔬菜,四种蔬菜共占地 80 平方米,其中番茄、黄瓜、韭菜的分别占总土地的 a%、b%、c%(a,b,c一定是整数)
输入 3个百分数,分别代表番茄、黄瓜、韭菜的占地百分比(空格隔开)
输出 番茄,黄瓜、韭菜、萝卜的占地面积(空格隔开,保留一位小数)
#include <stdio.h>
int main() {
int a, b, c;
scanf("%d%% %d%% %d%%", &a, &b, &c); // 百分号需要%%,%只是求余数
double e = 80.0 * a / 100; // 要用80.0(e是浮点数,a是整数)
double f = 80.0 * b / 100;
double g = 80.0 * c / 100;
double h = 80.0 * (100 - a - b - c) / 100;
printf("%.1lf %.1lf %.1lf %.1lf", e, f, g, h); // 保留一位小数
return 0;
}