实现函数,用字符串"%20"替换空格
2016-05-29 22:49
363 查看
题目及要求:
请实现一个函数,把字符串中的每个空格替换成“%20”。例如输入“we are happy.”,则输出“we%20are%20happy.”。
思考过程:首先将定义一个指针,用于保存"%20",然后定义一个数组,用于接收从键盘上输入的字符串,边输入边判断,如果是空格,则替换,直至接收完毕。
程序:
本文出自 “分享中进步” 博客,请务必保留此出处http://xmwen1.blog.51cto.com/10730069/1708407
请实现一个函数,把字符串中的每个空格替换成“%20”。例如输入“we are happy.”,则输出“we%20are%20happy.”。
思考过程:首先将定义一个指针,用于保存"%20",然后定义一个数组,用于接收从键盘上输入的字符串,边输入边判断,如果是空格,则替换,直至接收完毕。
程序:
/* *实现一个函数,把字符串中的每个空格替换成“%20”。 *例如输入“we are happy.”,则输出“we%20are%20happy.”。 */ #include<stdio.h> #include<stdlib.h> int main() { char *p = "%20"; //将“%20”的位置固定 char *start = p; //定义一个指针,指向字符串的开始位置,以便于循环 char arr[50] = {0}; //定义接收字符串的函数 int flag = 1; int i = 0,k; printf("请输入字符串"); while (flag) { arr[i] = getchar(); //接收字符串 if (arr[i] == ' ') //如果接收到空格,则进行替换 { for (k = 0; k < 3;k++) //空格替换 { arr[i++] = *p++; } p = start; //指向替换字符串的指针指向初始值 i = i - 1; } if (arr[i] == '\n') //如果出现换行符,字符串接收完毕 flag = 0; i=i+1; } printf("替换后字符串为:%s\n",arr); system("pause"); return 0; }欢迎各位大神批评指正!
本文出自 “分享中进步” 博客,请务必保留此出处http://xmwen1.blog.51cto.com/10730069/1708407
相关文章推荐
- 使用冒泡排序,排序一组字符串
- 给一组数,只有两个数只出现了一次,其他所有数都是成对出现的。怎么找出这两个数
- 用C语言编写函数实现一个整数计算机,程序接受三个参数,第一个参数为操作项,后两个参数为操作数。
- 用C语言编程,实现调整数组,使奇数全部位于偶数前边,
- 用C语言编写函数,实现strlen计算字符串长度的功能
- 设计实现一个简易通讯录,要求使用结构体
- 将数字字符串转化为对应数字输出(不考虑溢出)
- 团队博客3
- Canvas和SVG
- 位运算-Single Number III(只有两个不同的数字出现了一次,其余出现了两次,找出这两个数)
- geekband android #5 第十三周分享(Btimap优化)
- 应用沙盒分析
- cocoaPods
- HDU 1856 More is better
- 初识XMLHttpRequeset
- Java异常处理
- 初识XMLHttpRequeset
- 站立会议01(第二期)
- PL/SQL Boolean类型
- tableView