目录
字符串逆序
题目描述
输入
输出
样例
解题思路:
单词倒排
题目描述
输入
输出
样例
解题思路:
首字母大写
题目描述
输入
输出
样例
解题思路:
统计句子中单词个数
题目描述
输入
输出
样例
解题思路:
大小写字母互换
题目描述
输入
输出
样例
解题思路:
字符串逆序
题目描述
随机输入一个长度不超过255的字符串,将其倒置后输出。
输入
只有一行。(测试数据不含空格)
输出
只有一行,输出倒置后的字符串。
样例
输入复制
asdfghjkl123456
输出复制
654321lkjhgfdsa
解题思路:
循环数组一半,对称位置交换
#include <iostream>
#include<string.h>
using namespace std;
int main()
{char a[100];cin.getline(a,100);int len = strlen(a);for(int i = 0;i<len/2;i++){char tmp = a[i];a[i] = a[len-1-i];a[len-1-i] = tmp;}cout<<a;return 0;
}
单词倒排
题目描述
编写程序,读入一行英文(只包含字母和空格,单词间以单个空格分隔),将所有单词的顺序倒排并输出,依然以单个空格分隔。
输入
输入为一个字符串(字符串长度至多为100)。
输出
输出为按要求排序后的字符串。
样例
输入复制
I am a atudent
输出复制
atudent a am I
解题思路:
双指针向前扫描,遇到空格输出
#include <iostream>
#include<string.h>
using namespace std;
int main()
{char a[100];cin.getline(a,100);int len = strlen(a);int p = len-1;for(int i = len-1;i>=0;i--){if(a[i] == ' '){for(int j = i+1;i<p;i++){cout<<a[j];}cout<<" ";p = i-1;}if(i == 0){for(int j = 0;j<=p;j++){cout<<a[j];}}}return 0;
}
首字母大写
题目描述
编写程序,读入一行英文(只包含字母和空格,单词间以单个空格分隔),将所有单词的首字母大写,依然以单个空格分隔。
输入
输入为一个字符串(字符串长度至多为100)。
输出
输出为按要求排序后的字符串。
样例
输入复制
this is test code.
输出复制
This Is Test Code.
解题思路:
1、首字母大写2、前一个字符如果是空格也大写
#include <iostream>
#include<string.h>
using namespace std;
int main()
{char a[100];cin.getline(a,100);int len = strlen(a);for(int i = 0;i<len;i++){if(a[i] == ' '){a[i+1] = a[i+1] - 32;}}cout<<a;return 0;
}
统计句子中单词个数
题目描述
编写程序,读入一行英文(只包含字母和空格,单词间以单个或多个空格分隔),统计句子中单词的个数
输入
输入为一个字符串(字符串长度至多为100)。
输出
输出单词个数。
样例
输入复制
this is a test code.
输出复制
5
解题思路:
1、非空格的后一位是空格或者\0,统计数+1
#include <iostream>
#include<string.h>
using namespace std;
int main()
{char a[100];cin.getline(a,100);int len = strlen(a);int cnt = 0;for(int i = 0;i<len;i++){if(a[i] == ' '){cnt++;}}cout<<cnt;return 0;
}
大小写字母互换
题目描述
把一个字符串中所有出现的大写字母都替换成小写字母,同时把小写字母替换成大写字母。
输入
输入一行:待互换的字符串。
输出
输出一行:完成互换的字符串(字符串长度小于80)。
样例
输入复制
i love c++
输出复制
I LOVE C++
解题思路:
用ASCII码
#include <iostream>
#include<string.h>
using namespace std;
int main()
{char a[100];cin.getline(a,100);int len = strlen(a);for(int i = 0;i<len;i++){a[i] = a[i] - 32;}cout<<a;return 0;
}