输入 1行文字列 CYU - yan!!char str【100】 有两个 函数 Upper_String(),Lower_String(),但不能用 Strupr,toupper等函数利用 ASCII码 ‘a’ 97,‘A’ 65,即利用 大小写 32的差 来 编写代码最后输出 的 结果为 Upper_String() :CYU-YAN!!Lower_String(): cyu-yan!!望大神 告知。
2 回答
慕运维0661890
TA贡献1条经验 获得超0个赞
#include <stdio.h> #include <string.h> to_Upper_String(); to_Lower_String(); char lowerStr[100]; char upperStr[100]; int length,i; int main() { char str[100]; printf("Input String ?"); gets(str); to_Upper_String(str,upperStr); to_Lower_String(str,lowerStr); printf("\nto_Upper_String(): %s\n",upperStr); printf("\nto_Lower_String(): %s\n",lowerStr); return 0; } void to_Upper_String(const char *input,char *output) { length = strlen(input); for(i=0;i< length;i++); { if(input[i] >= 'a' && input[i] <= 'z') output[i] = input[i] - 'a' + 'A'; else // 其他的不变 output[i] = input[i]; } output[length] = '\0'; } void to_Lower_String( const char *input, char *output) { length = strlen(input); for(i=0;i< length;i++); { if(input[i] >= 'A' && input[i] <= 'Z') // 如果是大写字母,则转换为对应的小写字母 output[i] = input[i] - 'A' + 'a'; else // 其他的不变 output[i]=input[i]; } output[length] = '\0'; } 报错 error C2371: “to_Upper_String”: 重定义;不同的基类型 21行 error C2371: “to_Lower_String”: 重定义;不同的基类型 33行 这是 为什么 ????
- 2 回答
- 0 关注
- 1724 浏览
添加回答
举报
0/150
提交
取消