用C语言编写:输入数字1~7任意一个,输出对应星期。 例如:输入4,输出“星期四” 3、编程实现:输入三个整数,比较它们大小,从小到大输出。 例如:输入5,19,8 输出 “5,8,19"
时间: 2024-10-25 09:17:12 浏览: 39
第一个问题是关于将数字映射到对应的星期,C语言可以通过switch-case语句来实现,这里是一个例子:
```c
#include <stdio.h>
#include <string.h>
void print_weekday(int day_num) {
char* days[] = {"星期日", "星期一", "星期二", "星期三", "星期四", "星期五", "星期六"};
switch (day_num) {
case 1:
printf("%s\n", days[0]);
break;
case 2:
printf("%s\n", days[1]);
break;
// ... 累加到7
default:
printf("输入错误!\n");
break;
}
}
int main() {
int input_day;
printf("请输入1~7之间的数字代表星期几:");
scanf("%d", &input_day);
print_weekday(input_day);
return 0;
}
```
第二个问题是关于比较三个整数并排序输出,可以使用标准库函数`qsort()`结合一个自定义的比较函数。这里是简单的实现:
```c
#include <stdio.h>
// 自定义比较函数,升序排列
int compare(const void *a, const void *b) {
return (*(int*)a - *(int*)b);
}
void print_sorted(int arr[], int n) {
qsort(arr, n, sizeof(int), compare);
for (int i = 0; i < n; i++) {
printf("%d ", arr[i]);
}
printf("\n");
}
int main() {
int numbers[] = {5, 19, 8};
int size = sizeof(numbers) / sizeof(numbers[0]);
printf("输入的数字排序后为:");
print_sorted(numbers, size);
return 0;
}
```
阅读全文