linux 建一个c输入任意三个数代表年月日
时间: 2024-02-03 15:14:27 浏览: 25
你可以使用 C 语言中的 scanf 函数来读取用户输入的三个整数,然后将它们分别存储到对应的变量中,最后将它们拼接成一个日期字符串。以下是一个示例代码:
```c
#include <stdio.h>
int main() {
int year, month, day;
printf("请输入年月日,用空格隔开:");
scanf("%d %d %d", &year, &month, &day);
printf("你输入的日期是:%04d-%02d-%02d\n", year, month, day);
return 0;
}
```
上面的代码中,首先定义了三个整型变量 year、month 和 day,然后使用 scanf 函数读取用户输入的三个整数,并将它们分别存储到对应的变量中。最后使用 printf 函数将它们拼接成一个日期字符串并输出。
相关问题
linux shell脚本输入任意三个数代表年月日
好的,你可以参考以下脚本:
```
#!/bin/bash
echo "请输入年份:"
read year
echo "请输入月份:"
read month
echo "请输入日期:"
read day
echo "您输入的日期是:$year 年 $month 月 $day 日"
```
这个脚本会提示用户输入年份、月份和日期,并将这三个值输出到终端上。你可以根据自己的需求对这个脚本进行修改。
c语言输入一个年月日输出是这一年的第几天
以下是一种实现方法:
```c
#include <stdio.h>
int main() {
int year, month, day;
printf("请输入年月日,以空格分隔:\n");
scanf("%d %d %d", &year, &month, &day);
// 每月的天数,注意二月根据是否为闰年而不同
int daysInMonth[] = {31, 28 + ((year % 4 == 0 && year % 100 != 0) || year % 400 == 0), 31, 30, 31, 30, 31, 31, 30, 31, 30, 31};
int dayOfYear = 0;
// 先累加该月之前的天数
for (int i = 0; i < month - 1; i++) {
dayOfYear += daysInMonth[i];
}
// 再加上当月的天数
dayOfYear += day;
printf("该日期在这一年的第 %d 天\n", dayOfYear);
return 0;
}
```
该程序首先在屏幕上提示用户输入年月日,然后使用 `scanf()` 函数读取用户输入的值。随后定义一个整型数组 `daysInMonth[]`,存储每个月的天数。注意二月的天数需要根据是否为闰年而不同。接下来使用一个循环累加该月之前的天数,最后加上当月的天数就可以得到这一年的第几天了。最后将结果输出到屏幕上。