杭电oj编码2026

该博客介绍了一道杭电oj编程题目,要求输入英文句子并将每个单词首字母转换为大写。示例给出了输入输出格式,并提供了使用gets函数和字符数组处理的解决方案。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

问题描述:

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


输入:

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


输出:

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


样例输入:

i like acm

i want to get an accepted


样例输出:

I Like Acm

I Want To Get An Accepted


分析:

本题要做到能够将空格读入,则不能使用scanf和cin,可以使用gets函数,使用字符数组保存输入的字符串。

接下来在一个for循环中直接对数据操作并输出即可。


代码:

#include<iostream>
#include<stdio.h>
#include<string.h>
int main()
{
	char str[100];
	while (gets_s(str,100))
	{
		str[0] = str[0] - 32;//对第一个字符进行变成大写的操作
		printf("%c", str[0]);//输出第一个字符
		for (int i = 1; i < int(strlen(str)); ++i)//遍历第一个字符后面的所有字符
		{
			if (str[i -1] == ' ')//当满足条件时,进行小写换成大写字符的操作
				str[i] = str[i] - 32;//32是ASCII中没一个字符的大写与小写的差值
			printf("%c", str[i]);//对所有的字符输出
		}
		printf("\n");
	}	return 0;
}


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值