输入 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 关注
- 1833 浏览
添加回答
举报
0/150
提交
取消
