目录
删除单词后缀 | 删除前n个x |
排除外星基因 | 删除第n个单词 |
删除第3和单词 | 删除单词中的 |
删除单词后缀
描述
给定一个单词,如果该单词以er、ly或者ing后缀结尾, 则删除该后缀(题
目保证删除后缀后的单词长度不为0), 否则不进行任何操作。
删除单词后缀
输入
输入一行,包含一个单词(单词中间没有空格,每个单词
最大长度为32)。
输出
输出按照题目要求处理后的单词。
#include <iostream>
#include<string.h>
using namespace std;char a[32] = {};
int main() {cin >> a;int n = strlen(a);if (a[n - 1] == 'r') {if (a[n - 2] == 'e') {a[n - 1] = 0;a[n - 2] = 0;}} else if (a[n - 1] == 'y') {if (a[n - 2] == 'l') {a[n - 1] = 0;a[n - 2] = 0;}} else if (a[n - 1] == 'g') {if (a[n - 2] == 'n') {if (a[n - 3] == 'i') {a[n - 1] = 0;a[n - 2] = 0;a[n - 3] = 0;}}}for (int i = 0; i < n; i++) {if (a[i] != 0) {cout << a[i];}}return 0;
}
排除外星基因
描述
宇航员出仓执行任务归来后,经医学部门检测,发现体内被外星基因感染,需要手术排除外星基因
排除外星基因
输入
输入一行(含有ATGC碱基对的)字符串
输出
删除除了ATGC之外的其他基因序列
样例输入
AAXXATGATDRETC
样例输出
AAATGATTC
#include<iostream>
#include<iomanip>
#include<string.h>
using namespace std;
int main() {char a[110];cin >> a;int n = strlen(a);for (int i = 0; i < n; i++) {if (a[i] != 'A' && a[i] != 'T' && a[i] != 'G' && a[i] != 'C') {for (int j = i; j < n; j++) {a[j] = a[j + 1];}n--;i--;}}cout << a;return 0;
}
删除第3个单词
题目描述
输入一个句子,包含空格(大于三个单词),输出删除第三个单词后的句子。
输入
一个含空格的字符串。
输出
删除第三个单词的句子
样例输入
he is my brother.
样例输出
he is brother.
#include<iostream>
#include<iomanip>
#include<string.h>
char a[1100];
int cnt = 0, cnt2 = 0;
using namespace std;
int main() {cin.getline(a, 1100);int n = strlen(a);char p = -1;for (int i = 0; i < n; i++) {if (p == ' ' && a[i] != ' ') {cnt++;}if (cnt == 3) {for (int j = i; a[j] != ' '; j++) {cnt2++;}for (int j = i; j < cnt2 + i; j++) {a[j] = a[j + cnt2];}n = n - cnt2;}p = a[i];}cout << a;return 0;
}
删除字符串前n个x
题目描述
输入一个字符串,字符串中包含多个x。要求删除前n个X
输入
一个含多个x的字符串。
一个整数n,代表删除多少个x
输出
删除了串中的前n个x的字符串。
样例输入
xaaaxxbbbxxxccccxxxxd
4
样例输出
aaabbbxxccccxxxxd
#include<iostream>
#include<iomanip>
#include<string.h>
char a[1100];
int n,cnt=1;
using namespace std;
int main()
{cin>>a;int m=strlen(a);cin>>n;for(int i=0;i<m;i++){if(a[i]=='x'&&cnt<=n){for(int j=i;j<m;j++){a[j]=a[j+1];}m--;i--; cnt++;}}cout<<a;return 0;
}
删除字符串中间的*
题目描述
输入一个字符串,将串前和串后的保留,而将中间的删除。
输入
一个含*的字符串。
输出
删除了串中的*的字符串。
#include<iostream>
#include<iomanip>
#include<string.h>
using namespace std;
char a[1100];
int main()
{cin>>a;int n=strlen(a);for(int i=0;i<n;i++){if(a[i]=='*'){for(int j=i;j<n;j++){a[j]=a[j+1];}n--;i--;}}cout<<a;return 0;
}