zl程序教程

您现在的位置是:首页 >  其他

当前栏目

批量替换字符串

批量 字符串 替换
2023-09-27 14:26:25 时间

题目描述
在网络编程中,如果 URL 中含有特殊字符,如空格、 “#” 等,服务器将无法识别导致无法获得正确的参数值,我们需要将这些特殊字符转换成服务器可以识别的字符,例如将空格转换成 “%20” 。 给定一个字符串,将其中的空格转换成 “%20” 。 输入一个原始字符串,例如 “hello world” 。 输出转换后的字符串,例如 “hello%20world” 。

输入

输入一个字符串,长度在106之内。

输出

输出转换完成的字符串。

样例输入1

we are happy

样例输出1

we%20are%20happy
#include <stdio.h>
 char s[1000005] = {0};
 char a[3000005] = {0};

int main() {
    gets(s);
    for (int i = 0, j = 0; s[i]; i++) {
        if (s[i] != ' ') {
           a[j] = s[i];
           j++;
        } else {
            a[j] = '%';
            a[j + 1] = '2';
            a[j + 2] = '0';
            j += 3;
        }
    }
    printf("%s\n", a);
    
    return 0;
}
#include <iostream>
#include <string>
using namespace std;

int main() {
	string s, new_s;
	getline(cin, s);
	int n;
	while ((n = s.find(' ')) != string::npos) {
		s.replace(n, 1, "%20");
	}
	cout << s<< endl;
	return 0;
}
#include <iostream>
#include <string>
using namespace std;

int main() {
	string s, new_s;
	getline(cin, s);
	for (char i : s) {
		if (i == ' ') new_s += "%20";
		else new_s += i;
	}
	cout << new_s << endl;
	return 0;
}