#include <stdio.h> //方法1; // int main() // { // char word[1000]; // while(scanf("%s",word) != EOF) // { // if(word[0]>='A'&&word[0]<='Z') // printf("%c",word[0]); // else // printf("%c",word[0]-32); // } // return 0; // } //方法2;利用指针 int main() { char arr[1000]; gets(arr); char *word = arr; if(*word>='A' && *word<='Z')//进行大小写转化第一个字符 printf("%c",*word); else printf("%c",(*word)-32); for(;*word != '\0';word++) { if(*word == ' ')//此时word 指向的值为空格 { word++;//所以需要向下移动一位 if(*word>='A'&& *word<='Z')//在进行大小写转换 printf("%c",*(word)); else printf("%c",*(word)-32); } } return 0; }