#include<stdio.h>#include<string.h> #define MAXDAY 7#define MAXLEN 10 //用编程实现,任意输入英文的星期几,在查找星期表后输出其对应的数字。//具体算法是,若发现与表中的某项相同,则输出该字符串在表中的位置(序号),//若查到表尾,仍不相同,则输出错误的提示信息。 int main(){int i,pos;int flag = 0; char x[MAXLEN];//字符串数组 //这个二维数组相当于一维数组,其下标与星期日期相吻合。 char weekday[][MAXLEN]={"Sunday","Monday","Tuesday","Wednesday","Thusday","Friday","Saturday"};printf("请输入你要寻找的日期:");scanf("%s",&x);for(i=0;i<MAXDAY;i++){if(strcmp(x,weekday[i]) == 0 )//两个字符串是否匹配; {pos = i;flag =1; }} if(flag){printf("%s is %d\n",x,pos);}else{printf("Not Found!");}return 0;}
函数调用方式:#include<stdio.h>#include<string.h> #define MAXDAY 7#define MAXLEN 10 //用编程实现,任意输入英文的星期几,在查找星期表后输出其对应的数字。//具体算法是,若发现与表中的某项相同,则输出该字符串在表中的位置(序号),//若查到表尾,仍不相同,则输出错误的提示信息。 int Search(char weekday[][MAXLEN],char x[]);int main(){int i;int rs;//输出是否找到的结果。 int pos; //输出找到的位置。 char x[MAXLEN];//字符串数组 char weekday[][MAXLEN]={"Sunday","Monday","Tuesday","Wednesday","Thusday","Friday","Saturday"};printf("请输入你要寻找的日期:");scanf("%s",&x);rs = Search(weekday,x); //调用查找函数; if(rs != -1){printf("%s is %d\n",x,rs);}else{printf("Not Found!");}return 0;} int Search(char weekday[][MAXLEN],char x[]){int flag = -1;int i;for(i=0;i<MAXDAY;i++){if(strcmp(x,weekday[i]) == 0 )//两个字符串是否匹配; {flag = i; }} return flag;}