C语言02 每日一练01
- 习题一 对三个数进行从大到小的排序。
- 习题二 计算1到100的和(两种方法)。
- 习题三 判断100到200中的素数及其个数。
习题一 对三个数进行从大到小的排序。
对三个数进行从大到小的排序。
解题代码:
#include <stdio.h>int main() {int a, b, c, temp; // 声明整型变量 a, b, c 和临时变量 tempscanf("%d%d%d", &a, &b, &c); // 读取用户输入的三个整数并赋值给 a, b, c// 比较 a 和 b,如果 a 小于 b,则交换它们if (a < b) {temp = a;a = b;b = temp;}// 比较 a 和 c,如果 a 小于 c,则交换它们if (a < c) {temp = a;a = c;c = temp;}// 比较 b 和 c,如果 b 小于 c,则交换它们if (b < c) {temp = b;b = c;c = temp;}printf("三个数从大到小排序为:%d>%d>%d\n", a, b, c); // 输出排序后的结果,从大到小排列return 0; // 程序结束
}
习题二 计算1到100的和(两种方法)。
计算1到100的和(两种方法)。
解题代码:
##方法一:累加法
int main() {int sum = 0;for (int i = 1; i < 101; i++){sum += i;}printf("%d\n",sum);
}##方法二:高斯求和公式
int main() {int sum = 100 * (100 + 1) / 2; // 采用高斯求和公式计算 1 到 100 的和printf("%d\n", sum); // 输出结果return 0; // 程序结束
}
习题三 判断100到200中的素数及其个数。
判断100到200中的素数及其个数。
解题代码:
#include <stdio.h>
#include <math.h> // 包含 math.h 头文件以使用 sqrt 函数int main() {int count = 0; // 初始化素数计数器为 0for (int i = 100; i <= 200; i++) { // 遍历 100 到 200 之间的每个整数int flag = 1; // 初始化标志变量为 1,假设当前数是素数for (int j = 2; j <= sqrt(i); j++) { // 从 2 到 sqrt(i) 遍历,检查是否有因数if (i % j == 0) { // 如果 i 能被 j 整除,则 i 不是素数flag = 0; // 将标志变量设为 0,表示 i 不是素数break; // 退出内层循环,因为已确定 i 不是素数}}if (flag == 1) { // 如果标志变量仍为 1,说明 i 是素数count++; // 素数计数器加 1printf("数字%d是素数。\n", i); // 输出当前素数}}printf("100-200之间共有%d个素数\n", count); // 输出 100 到 200 之间的素数总数return 0; // 程序结束
}