输入汉语星期几输出英文c语言程序,C根据英文星期获取对应汉字或数字的星期函数(1)...

这段代码定义了一个名为getWeekNum的函数,用于根据英文星期字符串(如"Thu")获取对应的数字(1-7)或汉字表示。函数首先定义了三个包含星期英文、数字和汉字的字符串常量,然后使用split函数将这些字符串按下划线分割成数组。通过遍历数组找到匹配的星期字符串,返回相应的数字或汉字表示。示例中调用getWeekNum("Thu", weeken)将获取星期四的数字表示。
摘要由CSDN通过智能技术生成

static void getWeekNum(const char * weekstr,char *ret)

{

char strParaWeekE[] = "_Mon_Tue_Wed_Thu_Fri_Sat_Sun";

char strParaWeekN[] = "_1_2_3_4_5_6_7";

char strParaWeekC[] = "_一_二_三_四_五_六_日";

char *revbuf[8] = {0};

char *revbuf1[8] = {0};

char *revbuf2[8] = {0};

int num = 0;

split(strParaWeekE,"_",revbuf,&num);

split(strParaWeekN,"_",revbuf1,&num);

split(strParaWeekC,"_",revbuf2,&num);

char *returnValue;

int i = 0;

for(i = 0;i < num; i ++) {

if(strcmp(revbuf[i],weekstr)==0)

{

printf("==FindOut(%s=%s,%s)\n",revbuf[i],revbuf1[i],revbuf2[i]);

returnValue=revbuf1[i];//输出数字(如果提取数字用这句返回)

//returnValue=revbuf2[i]; //输出汉字(如果提取汉字用这句)

break;

}

}

ret=returnValue;

}

//代码可能没有优化,可交流改进

顶部声明一次函数,

主程序直接调用。

char *weeken;

getWeekNum("Thu",weeken);

忘记一个函数查找函数(补)

/**********************************

split参数:

src 源字符串的首地址

separator 指定的分割字符

dest 接收子字符串的数组

num 分割后子字符串的个数

************************************/

static void split(char *src,const char *separator,char **dest,int *num) {

char *pNext;

int count = 0;

if (src == NULL || strlen(src) == 0)

return;

if (separator == NULL || strlen(separator) == 0)

return;

pNext = strtok(src,separator);

while(pNext != NULL) {

*dest++ = pNext;

++count;

pNext = strtok(NULL,separator); //查找

}

*num = count;//数组总数

}

//---------------------------------------

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值