https://vjudge.net/problem/HDU-2026
输入一个英文句子,将每个单词的第一个字母改成大写字母。
Input
输入数据包含多个测试实例,每个测试实例是一个长度不超过100的英文句子,占一行。
Output
请输出按照要求改写后的英文句子。
Sample
| Inputcopy | Outputcopy |
|---|---|
i like acm i want to get an accepted | I Like Acm I Want To Get An Accepted |
#include
#include
int main() {char a[100];while (gets(a) != '\0'){a[0] = a[0] - 32;int i;//要先声明for (i = 1; a[i] != '\0'; i++) {if (a[i] == ' ') {a[i + 1] = a[i + 1] - 32;}}printf("%s", a);puts("");}return 0; }
运行结果:
相关知识点:
1、小写变大写
a[i]=a[i]-32,即小写字母的ASC码比大写字母的ASC码大32.
2、gets()函数
头文件#inlcude
,用于读取字符 3、 puts("");
作用相当于换行,代码中a的输出也可以写成printf("%s\n", a);