当前位置:   article > 正文

字符串----删除字符单词(c++)_c++给定一个单词,如果该单词以 er、ly 或者 ing 后缀结尾, 则删除该后缀 (题目保

c++给定一个单词,如果该单词以 er、ly 或者 ing 后缀结尾, 则删除该后缀 (题目保
删除单词后缀
描述
给定一个单词,如果该单词以er、ly或者ing后缀结尾, 则删除该后缀(题
目保证删除后缀后的单词长度不为0), 否则不进行任何操作。
输入
输入一行,包含一个单词(单词中间没有空格,每个单词
最大长度为32)。
输出
输出按照题目要求处理后的单词。
  1. #include <iostream>
  2. #include <string.h>
  3. using namespace std;
  4. int main()
  5. {
  6. char a[100];
  7. cin.getline(a,100);
  8. int n = strlen(a);
  9. if(a[n-2]=='e'&&a[n-1]=='r')
  10. {
  11. a[n-2] = '\0';
  12. }
  13. else if(a[n-2]=='l'&&a[n-1]=='y')
  14. {
  15. a[n-2] = '\0';
  16. }
  17. else if(a[n-3]=='i'&&a[n-2]=='n'&&a[n-1]=='g')
  18. {
  19. a[n-3] = '\0';
  20. }
  21. cout<<a;
  22. return 0;
  23. }

青少年编程
V 132
01376357 青少年编程
V 13201376357
描述
宇航员出仓执行任务归来后,经医学部门检测,发现体内被外星基因感染,需要手术排除外星基因
排除外星基因
输入
输入一行(含有ATGC碱基对的)字符串
输出
删除除了ATGC之外的其他基因序列
样例输入
AAXXATGATDRETC
样例输出
AAATGATTC
  1. #include <iostream>
  2. #include <string.h>
  3. using namespace std;
  4. int main()
  5. {
  6. char a[100];
  7. cin.getline(a,100);
  8. int n = strlen(a);
  9. for(int i = 0;i<n;i++)
  10. {
  11. if(a[i]!='A'&&a[i]!='C'&&a[i]!='T'&&a[i]!='G')
  12. {
  13. for(int j = i;j<n;j++)
  14. {
  15. a[j] = a[j+1];
  16. }
  17. i--;
  18. n--;
  19. }
  20. }
  21. cout<<a;
  22. return 0;
  23. }

删除第3个单词
题目描述
输入一个句子,包含空格(大于三个单词),输出删除第三个单词后的句子。
输入
一个含空格的字符串。
输出
删除第三个单词的句子
样例输入
he is my brother.
样例输出
he is brother.
  1. #include <iostream>
  2. #include <string.h>
  3. using namespace std;
  4. int main()
  5. {
  6. char a[100];
  7. int cnt;
  8. int p;
  9. cin.getline(a,100);
  10. cnt = 0;
  11. p= -1;
  12. int n = strlen(a);
  13. for(int i = 0;i<100;i++)
  14. {
  15. if(a[i]>=97&&a[i]<=122&&a[i+1]==' ')
  16. {
  17. cnt++;
  18. }
  19. if(cnt==2)
  20. {
  21. p = i;
  22. break;
  23. }
  24. }
  25. p = p+2;
  26. cnt = 0;
  27. for(int i = p;i<100;i++)
  28. {
  29. if(a[i]>=97&&a[i]<=122&&a[i+1]==' ')
  30. {
  31. cnt++;
  32. break;
  33. }
  34. else
  35. {
  36. cnt++;
  37. }
  38. }
  39. for(int i = p;i<100;i++)
  40. {
  41. a[i] = a[i+cnt];
  42. }
  43. n = n-cnt;
  44. a[n-cnt+2] = '\0';
  45. cout<<a;
  46. return 0;
  47. }

删除字符串前n个x
题目描述
输入一个字符串,字符串中包含多个x。要求删除前n个X
输入
一个含多个x的字符串。
一个整数n,代表删除多少个x
输出
删除了串中的前n个x的字符串。
样例输入
xaaaxxbbbxxxccccxxxxd
4
样例输出
aaabbbxxccccxxxxd
  1. #include <iostream>
  2. #include <string.h>
  3. using namespace std;
  4. int main()
  5. {
  6. char a[100];
  7. int cnt;
  8. int cnt2;
  9. cin.getline(a,100);
  10. cin>>cnt;
  11. cnt2 = 0;
  12. int n = strlen(a);
  13. for(int i = 0;cnt2<cnt;i++)
  14. {
  15. if(a[i]=='x')
  16. {
  17. for(int j = i;j<n;j++)
  18. {
  19. a[j] = a[j+1];
  20. }
  21. n--;
  22. i--;
  23. cnt2++;
  24. }
  25. }
  26. cout<<a;
  27. return 0;
  28. }

删除第n个单词
题目描述
输入一个句子,包含空格,输出删除第n个单词后的句子。
输入
一个含空格的字符串。
一个整数n代表要删除的第n个单词
输出
删除第n个单词后的句子
样例输入
he is my brother.
2
样例输出
he my brother.
  1. #include <iostream>
  2. #include <string.h>
  3. using namespace std;
  4. int main()
  5. {
  6. char a[100];
  7. int cnt;
  8. int cnt2;
  9. int p;
  10. cin.getline(a,100);
  11. cin>>cnt2;
  12. cnt = 0;
  13. p= -1;
  14. int n = strlen(a);
  15. for(int i = 0;i<100;i++)
  16. {
  17. if(a[i]>=97&&a[i]<=122&&a[i+1]==' ')
  18. {
  19. cnt++;
  20. }
  21. if(cnt==cnt2-1)
  22. {
  23. p = i;
  24. break;
  25. }
  26. }
  27. p = p+2;
  28. cnt = 0;
  29. for(int i = p;i<100;i++)
  30. {
  31. if(a[i]>=97&&a[i]<=122&&a[i+1]==' ')
  32. {
  33. cnt++;
  34. break;
  35. }
  36. else
  37. {
  38. cnt++;
  39. }
  40. }
  41. for(int i = p;i<100;i++)
  42. {
  43. a[i] = a[i+cnt];
  44. }
  45. n = n-cnt;
  46. a[n-cnt+2] = '\0';
  47. cout<<a;
  48. return 0;
  49. }

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/花生_TL007/article/detail/442606
推荐阅读
相关标签
  

闽ICP备14008679号