c语言题目 急需!!!

来源:百度知道 编辑:UC知道 时间:2024/05/17 19:19:04
感谢!!!
:从键盘输入字符串,将其中的单词(两个空格之间的字符串)的第一个字母转换为大写字母,输出原始字符串及转换后的所有单词,直到输出“*”结束转换和输出

void main(){
char c[80],*p;
int wordlen=0,inword=0;
do{
gets(c);
p=c;
while (*p!='\0'){
if ((*p<='z' && *p>='a') || (*p<='Z' && *p>='A')){
if (p==c || *(p-1)==' ')
inword=1;
if (inword==1) wordlen++;
}else{
inword=0;
if (*p==' ' && wordlen>0)
if (*(p-wordlen)>='a') *(p-wordlen)-=32;
wordlen=0;
}
p++;
}
if (wordlen>0)
if (*(p-wordlen)>='a') *(p-wordlen)-=32;
printf("%s",c);
}while(c[0]!='*');
}