题目 1: 计算平均分并判断等级
问题描述:编写一个程序,读取用户输入的三个数(例如考试成绩),计算平均分,并根据平均分给出等级(90以上为'A',80到89为'B',70到79为'C',60到69为'D',60以下为'F')。
解题思路:
- 读取用户输入的三个分数。
- 计算平均分。
- 使用
if-else
语句判断平均分所属的等级范围,并输出对应的等级。
#include <stdio.h>int main() {float score1, score2, score3, average;printf("输入三个分数: ");scanf("%f %f %f", &score1, &score2, &score3);average = (score1 + score2 + score3) / 3;printf("平均分: %.2f\n", average);if (average >= 90) {printf("等级: A\n");} else if (average >= 80) {printf("等级: B\n");} else if (average >= 70) {printf("等级: C\n");} else if (average >= 60) {printf("等级: D\n");} else {printf("等级: F\n");}return 0;
}
题目 2: 判断一个年份是否为闰年
问题描述:编写一个程序来判断用户输入的年份是否为闰年。规则是:能被4整除但不能被100整除,或者能被400整除的年份是闰年。
解题思路:
- 读取用户输入的年份。
- 使用
if-else
语句判断年份是否符合闰年的条件。 - 输出结果。
#include <stdio.h>int main() {int year;printf("输入一个年份: ");scanf("%d", &year);if ((year % 4 == 0 && year % 100 != 0) || (year % 400 == 0)) {printf("%d 是闰年。\n", year);} else {printf("%d 不是闰年。\n", year);}return 0; }
题目 3: 比较三个数的大小
问题描述:编写一个程序,读取用户输入的三个数,找出并打印这三个数中的最大数。
解题思路:
- 读取用户输入的三个数字。
- 使用嵌套的
if-else
语句比较这三个数。 - 打印最大的数。
#include <stdio.h>int main() {int num1, num2, num3;printf("输入三个数字: ");scanf("%d %d %d", &num1, &num2, &num3);if (num1 >= num2 && num1 >= num3) {printf("最大的数是 %d\n", num1);} else if (num2 >= num1 && num2 >= num3) {printf("最大的数是 %d\n", num2);} else {printf("最大的数是 %d\n", num3);}return 0; }
题目 4: 判断字符类型
问题描述:编写一个程序,读取用户输入的一个字符,判断并打印该字符是大写字母、小写字母还是数字。
解题思路:
- 读取用户输入的字符。
- 使用
if-else
语句判断字符的类型(大写字母、小写字母、数字或其他)。 - 打印结果。
#include <stdio.h>int main() {char ch;printf("输入一个字符: ");scanf("%c", &ch);if (ch >= 'A' && ch <= 'Z') {printf("%c 是大写字母。\n", ch);} else if (ch >= 'a' && ch <= 'z') {printf("%c 是小写字母。\n", ch);} else if (ch >= '0' && ch <= '9') {printf("%c 是数字。\n", ch);} else {printf("%c 是其他字符。\n", ch);}return 0;
}
题目 5: 计算和判断两个数字的关系
问题描述:编写一个程序,读取两个数,计算它们的和,并判断这个和是正数、负数还是零。
- 读取用户输入的两个数字。
- 计算这两个数字的和。
- 使用
if-else
语句判断这个和的性质(正数、负数或零)。 - 打印结果。
解题思路:
- 读取用户输入的两个数字。
- 计算这两个数字的和。
- 使用
if-else
语句判断这个和的性质(正数、负数或零)。 - 打印结果。
#include <stdio.h>int main() {int num1, num2, sum;printf("输入两个数字: ");scanf("%d %d", &num1, &num2);sum = num1 + num2;printf("两数之和为: %d\n", sum);if (sum > 0) {printf("和是正数。\n");} else if (sum < 0) {printf("和是负数。\n");} else {printf("和是零。\n");}return 0;
}