急 ! ! !查找星期答案部分正确的问题

本题要求实现函数,可以根据下表查找到星期,返回对应的序号。
序号星期
0 Sunday
1 Monday
2 Tuesday
3 Wednesday
4 Thursday
5 Friday
6 Saturday
函数接口定义:
int getindex( char s );
函数getindex应返回字符串s序号。如果传入的参数s不是一个代表星期的字符串,则返回-1。
裁判测试程序样例:

img


/
你的代码将被嵌在这里 */
输入样例1:
Tuesday
输出样例1:
2
输入样例2:
today
输出样例2:
wrong input!
我的代码

img

这个部分正确,谁能帮忙改改吗?我看了好久都不行U•ェ•*U

Sunday 是字符串 ,不能用 case 'Sunday' , 修改如下,供参考:

#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;
}
/* 你的代码将被嵌在这里 */
int getindex(char* s)
{
    int i;
    char* week[7] = { "Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday" };
    for (i = 0; i < 7; i++)
        if (strcmp(s, week[i]) == 0) return i;
    if (i >= 7) return -1;
}

*s指针指向的是字符串第一个元素,和switch里case判断条件不匹配,所以是不是每次都走向default里打印worong input

你这错误不少呀
1.字符串比较要使用strcmp,不可以==,你用switch相当于写==
2.字符串用双引号,你case里全是单引号