c语言的问题 tk56改错

来源:百度知道 编辑:UC知道 时间:2024/06/18 00:09:19
gc56.c程序用于将字符串中的小写字母转换为大写字母,程序中有两处错误,请调试改正
之,但不得增删语句.

#include<stdio.h>
void main(void)
{
char s[255];
int i;
scanf("%s",s);
for (i=0;s[i];i++)
if(s[i]>='b' && s[i]<='z')
s[i] = s[i] +'a' + 'A';
printf("%s",s);
}

if(s[i]>='b' && s[i]<='z')
改为:if(s[i]>='a' && s[i]<='z')
所有小写字母,应该包括a

s[i] = s[i] +'a' + 'A';
改为:s[i] = s[i] -'a' + 'A';
如:a的ASIC值为97
A为65

#include<stdio.h>
void main(void)
{
char s[255];
int i;
scanf("%s",s);
for (i=0;s[i];i++)
if(s[i]>='b' && s[i]<='z')
s[i] = s[i] +'a' - 'A'; ///
printf("%C",s); ////
}