c++ 语言写一个年月日程序
时间: 2023-12-06 12:02:32 浏览: 62
以下是一个简单的 C++ 代码示例,可以用来输入年月日,并输出格式化后的日期:
```c++
#include <iostream>
#include <iomanip> // 引入iomanip库,用于格式化输出
using namespace std;
int main()
{
int year, month, day;
cout << "请输入年份:" << endl;
cin >> year;
cout << "请输入月份:" << endl;
cin >> month;
cout << "请输入日期:" << endl;
cin >> day;
cout << "您输入的日期为:" << setw(4) << setfill('0') << year << "年" << setw(2) << setfill('0') << month << "月" << setw(2) << setfill('0') << day << "日" << endl;
return 0;
}
```
代码解释:
1. `cin` 用于输入,`cout` 用于输出。
2. `setw` 指定输出的位数,`setfill` 指定不足位数时的填充字符。
3. `return 0` 表示程序正常结束,返回值为0。
运行程序后,按照提示输入年、月、日,即可输出格式化后的日期。
相关问题
用c++写一个程序,输入年月日,输出这是这一年的第几天g
以下是用 C 语言编写的程序,可以输入年月日,输出这是这一年的第几天:
```c
#include <stdio.h>
int main()
{
int year, month, day, days;
int i, leap;
printf("请输入年月日,格式为 yyyy mm dd:");
scanf("%d %d %d", &year, &month, &day);
// 计算该月之前的天数
days = 0;
for (i = 1; i < month; i++)
{
switch (i)
{
case 1: case 3: case 5: case 7: case 8: case 10: case 12:
days += 31;
break;
case 4: case 6: case 9: case 11:
days += 30;
break;
case 2:
leap = ((year % 4 == 0 && year % 100 != 0) || year % 400 == 0);
days += (28 + leap);
break;
}
}
// 加上当月的天数
days += day;
// 如果是闰年且过了二月,加一天
if (leap && month > 2)
days++;
printf("%d 年 %d 月 %d 日是 %d 年的第 %d 天\n", year, month, day, year, days);
return 0;
}
```
如果输入的是 2022 年 3 月 15 日,程序的输出结果为:
```
请输入年月日,格式为 yyyy mm dd:2022 3 15
2022 年 3 月 15 日是 2022 年的第 74 天
```
开发一个能够生成合法年月日的测试用例自动生成的小工具,要求使用c++语言
好的,可以使用C++的随机数生成函数来实现。以下是一个简单的实现:
```cpp
#include <iostream>
#include <cstdlib>
#include <ctime>
using namespace std;
int main()
{
srand((unsigned)time(NULL)); // 初始化随机数生成器
// 生成年份
int year = rand() % 2022; // 生成0到2021年之间的随机数
if (year == 0) year = 1; // 如果随机数为0,将年份设为1
// 生成月份
int month = rand() % 12 + 1; // 生成1到12月之间的随机数
// 生成日份
int day;
switch (month)
{
case 2: // 二月份
if (year % 4 == 0 && year % 100 != 0 || year % 400 == 0)
day = rand() % 29 + 1; // 闰年2月份有29天
else
day = rand() % 28 + 1; // 平年2月份有28天
break;
case 4: // 四月份
case 6: // 六月份
case 9: // 九月份
case 11: // 十一月份
day = rand() % 30 + 1; // 这4个月份有30天
break;
default: // 其他月份
day = rand() % 31 + 1; // 其他月份有31天
break;
}
// 输出年月日
cout << year << "-" << month << "-" << day << endl;
return 0;
}
```
这个程序使用了 `srand` 函数初始化随机数生成器,然后使用 `rand` 函数生成随机数,最后根据生成的年份和月份计算出当月的天数。注意,这个程序生成的年份不包括2022年,如果需要生成2022年的数据,可以将 `rand() % 2022` 改为 `rand() % 2023`。