【ACM】首字母变大写

输入一个英文句子,将每个单词的第一个字母改成大写字母。

Input

输入数据包含多个测试实例,每个测试实例是一个长度不超过100的英文句子,占一行。

Output

请输出按照要求改写后的英文句子。

Sample Input

i like acm
i want to get an accepted

Sample Output

I Like Acm
I Want To Get An Accepted

思路:用ASCII码,变大写就是-32;

妙点:
1、变大写就是-32;
2、要注意分类讨论,若一开始输入个空的就直接跳过了;
3、关于如何把一个句子输入:
我一开始想的是用字符数组,奈何搞不了;
然后偶然看到一个函数gets(),可以把空格读入;
puts(),可以把空格输出。
——优秀!!
4、关于得知一个句子的字符长度:
函数头:

#include<string.h> 

函数:

len=strlen(a); 

5、用gets和puts函数貌似还要:

#include<stdlib.h> 

整体代码:

#include<stdio.h>
#include<stdlib.h> 
#include<string.h> 
int main() 
{
    char a[100]; 
    int i,len; 
    while(gets(a)!='\0') 
    { 
       len=strlen(a); 
       if(a[0]!=' ')
       {
         a[0]=a[0]-32;
       }
         for(i=1;i<len;i++) 
         { 
            if(a[i]!=' '&&a[i-1]==' ') 
            { 
               a[i]=a[i]-32; 
            } 
         }
          puts(a); 
    } 
    return 0; 
} 

至于换行什么的好像自动搞定了…?过了就行。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

karshey

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值