• 【QSBOJ】字符串编辑


    题目链接:https://bbs.csdn.net/topics/390289884?page=1

    AC代码:

     1 #include<bits/stdc++.h>
     2 using namespace std;
     3 
     4 int main(void)
     5 {
     6     int i;
     7     char a[42];
     8     for(i=0;a[i-1]!='.';i++)
     9         a[i] = getchar();
        //这里的a[i-1]体会一下,是上一个为‘.’时才停止读入,因为最后输出结果含'.'
    10 a[i]=''; 11 int len=strlen(a);
        //strlrn(a)测字符数组长度,有几个元素就是几
        //sizeof(a)测字符数组的字节长度,一个int是4,double 8, char 1 memset(a,0,sizeof(a))这里用的是字节数
        //对象.length测string类型的长度
    12 char c; 13 cin>>c; 14 getchar();
        //一般乱码的问题时由于输入函数多读入空格导致,把空格吃掉
    15 16 if(c=='I') 17 { 18 char m,n; 19 cin>>m>>n; 20 int t=0; 21 for(i=len-1;i>=0;i--) 22 { 23 if(a[i]==m) 24 { 25 int j; 26 for(j=len-1;j>=i;j--) 27 a[j+1]=a[j]; 28 a[i]=n; 29 a[len+1]=''; 30 t++; 31 break; 32 } 33 } 34 if(t==0) 35 { 36 cout<<"Not exist"<<endl; 37 return 0; 38 } 39 } 40 41 else if(c=='D') 42 { 43 char p; 44 cin>>p; 45 int t=0; 46 for(i=0;i<=len-1;i++) 47 { 48 if(a[i]==p) 49 { 50 for(int k=i;k<len-1;k++) 51 a[k]=a[k+1]; 52 t++; 53 a[len-1]=''; 54 break; 55 } 56 } 57 if(t==0) 58 { 59 cout<<"Not exist"<<endl; 60 return 0; 61 } 62 } 63 64 else if(c=='R') 65 { 66 char q,r; 67 int t=0; 68 cin>>q>>r; 69 for(i=0;i<len;i++) 70 { 71 if(a[i]==q) 72 { 73 a[i]=r; 74 t++; 75 } 76 } 77 if(t==0) 78 { 79 cout<<"Not exist"<<endl; 80 return 0; 81 } 82 } 83 84 puts(a);      
        //puts终止条件时读到''
    85 86 return 0; 87 }
  • 相关阅读:
    2019 年年终总结
    Java/C# 中为何需要 Getter/Setter?
    使用 supervisord 设置应用开机启动
    Linux 性能监控与故障排查:主要性能指标说明及监控方法
    「Bug」Jenkins Slave 卡顿与僵尸进程
    HTTP/HTTPS 的监听方法,以及浏览器与服务器的协议协商机制
    查询主机公网ip
    Linux Server Swap 分区设置
    Kubernetes 常见错误
    Kubernetes 学习笔记(五):数据卷
  • 原文地址:https://www.cnblogs.com/DuWA/p/11530315.html
Copyright © 2020-2023  润新知