c语言1-12英文转换数字月份
时间: 2024-12-11 11:23:24 浏览: 15
在C语言中,你可以创建一个简单的函数来将1到12的英文表示转换为对应的月份数字。下面是一个示例函数:
```c
#include <stdio.h>
#include <string.h>
int month_to_number(const char* month_string) {
const char* months[] = {"January", "February", "March", "April", "May", "June",
"July", "August", "September", "October", "November", "December"};
int month_index;
// 遍历数组,查找匹配的字符串并返回相应的索引
for (month_index = 0; month_index < sizeof(months)/sizeof(months[0]); month_index++) {
if (strcmp(month_string, months[month_index]) == 0) {
return month_index + 1; // 加1是因为数组索引从0开始,而月份是从1开始的
}
}
// 如果没有找到匹配,返回错误值
return -1;
}
int main() {
const char* months_to_test[] = {"January", "July", "NonExistentMonth"};
for (const char* month : months_to_test) {
int number = month_to_number(month);
if (number != -1) {
printf("%s is month %d\n", month, number);
} else {
printf("Invalid month: %s\n", month);
}
}
return 0;
}
```
这个程序会将给定的英文月份名称转换为对应的数字。如果输入的是不存在的月份,函数会返回-1。
阅读全文