本题要求实现函数,可以根据下表查找到星期,返回对应的序号。
序号 | 星期 |
---|---|
0 | Sunday |
1 | Monday |
2 | Tuesday |
3 | Wednesday |
4 | Thursday |
5 | Friday |
6 | Saturday |
函数接口定义:
int getindex( char *s );
函数 getindex 应返回字符串 s 序号。如果传入的参数 s 不是一个代表星期的字符串,则返回 -1。
裁判测试程序样例:
#include <stdio.h>
#include <string.h>
#define MAXS 80
int getindex( char *s );
int main()
{
int n;
char s[MAXS];
scanf("%s", s);
n = getindex(s);
if ( n==-1 ) printf("wrong input!\n");
else printf("%d\n", n);
return 0;
}
/* 你的代码将被嵌在这里 */
输入样例1:
Tuesday
输出样例1:
2
输入样例2:
today
输出样例2:
wrong input!
来源:
来源:PTA | 程序设计类实验辅助教学平台
链接:https://pintia.cn/problem-sets/12/exam/problems/360
提交:
题解:
/*
* 返回字符串 s 序号。如果传入的参数 s 不是一个代表星期的字符串,则返回 -1
*/
int getindex(char *s) {
int index = -1;
if (strcmp(s, "Sunday") == 0) {
index = 0;
} else if (strcmp(s, "Monday") == 0) {
index = 1;
} else if (strcmp(s, "Tuesday") == 0) {
index = 2;
} else if (strcmp(s, "Wednesday") == 0) {
index = 3;
} else if (strcmp(s, "Thursday") == 0) {
index = 4;
} else if (strcmp(s, "Friday") == 0) {
index = 5;
} else if (strcmp(s, "Saturday") == 0) {
index = 6;
}
return index;
}