永发信息网

C语言大神来帮下,将输入的英文语句每个单词的第一位变成大写,我这个哪错了

答案:2  悬赏:0  手机版
解决时间 2021-04-09 06:51
  • 提问者网友:暗中人
  • 2021-04-08 15:48
#include
void main()
{char a[100];
int i;
for(i=0;i<100;i++)
scanf("%c",&a[i]);
a[0]=a[0]-32;
for(i=0;a[i]!='\0';i++)
{if(a[i-1]=' ')
a[i]=a[i]-32;
}
for(i=0;i<100;i++)
printf("%c",a[i]);
}
最佳答案
  • 五星知识达人网友:西岸风
  • 2021-04-08 17:03
1、在不知道语句第一个单词的首字母是不是大写的情况下,武断地直接将ASCII码值减32

2、i从0开始循环,a[i-1]中的i-1无定义。
3、错误与错误1类似,在不知道空格后单词的首字母是不是大写的情况下, 武断地直接将ASCII码值减32
全部回答
  • 1楼网友:爱难随人意
  • 2021-04-08 17:23
可以私聊我~
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯