小写比大写字符大32,只要是小写字符,减去32即可。
#include
// 将str中的小写字符转大写,并返回
char* toUpper(char*str)
{
int i = -1;
while (str[++i])
if (str[i] >= 'a' && str[i] <= 'z')
str[i] -= 32; // 小写比大写字符大32
return str;
}
int main()
{
char str[100];
printf("input a string :");
gets(str);
puts(toUpper(str));
return 0;
}
#include
void to_upper( char *s )
{
int i=0;
for( i=0;s[i];i++ )
{
if ( s[i] >='a' && s[i] <='z' )
s[i] += 'A'-'a' ;
}
}
int main()
{
char str[]="hello World!" ;
to_upper( str );
printf( "%s\n", str );
return 0;
}
char* Upper(char* str)
{
char* p=str;
while(*p)
{
if(*p>='a'&&*p<='z')//判断小写英文字母
*p=*p+''A'-'a';//将小写英文字母转成大写
p++;
}
return str;//返回字符串地址
}
void toUpper(char str[],int length){
for(int i=0;i
}