This question already has answers here:
Best way to switch on a string in C
(15个答案)
4年前关闭。
我是C语言的新编程人员,我想做一个使用switch将月份转换为月份数的程序。
例如:
输入:
输出:
这是我的工作:
请注意,您需要包括
另一种方法是将所有月份的名称存储在二维
(15个答案)
4年前关闭。
我是C语言的新编程人员,我想做一个使用switch将月份转换为月份数的程序。
例如:
输入:
"january"
输出:
"1"
这是我的工作:
void function(char number[]);
int main()
{
char xm[20];
printf("Month:");
scanf("%s", &xm);
function(xm);
return 0;
}
void function (char number[20])
{
switch (number[20])
{
case 'january': printf("1");
break;
case 'february': printf("2");
break;
case 'march': printf("3");
break;
default:
printf("error");
}
}
最佳答案
你不能至少不是在C中。
改为使用
if((strcmp(number,"january")==0)
printf("1");
else if((strcmp(number,"february")==0)
printf("2");
//etc
请注意,您需要包括
string.h
才能使用strcmp
。另一种方法是将所有月份的名称存储在二维
char
数组中。遍历此数组,并使用strcmp
将输入与每个月的名称进行比较。如果找到匹配项,则打印月份数组+1的当前索引。10-07 13:23