字符串替换
2015-11-17 00:25
316 查看
字符串替换空格:实现一个函数使字符串中每个空格替换成%20,例:输入we are happy,输出we%20are%20happy
#include <stdio.h> #include<stdlib.h> #include<string.h> #include <assert.h> void replace_black(char *str) { assert(str); int black = 0; int oldlen = strlen(str);//字符串长度 int newlen = 0; char *tmp = str; while (*tmp)/遍历 { if (*tmp == ' ') black++;//计算空格符数量 tmp++; } newlen = oldlen + 2 * black; while (oldlen < newlen)//从后往前依次移动,当相等时替换完成 { if (str[oldlen] != ' ') { str[newlen--] = str[oldlen--]; } else { str[newlen--] = '0'; str[newlen--] = '2'; str[newlen--] = '%'; oldlen--; } } } int main() { char p[20] = "we are happy"; replace_black(p); printf("%s\n", p); system("pause"); return 0; }关于strlen求字符串长度
//数组: int strlen(char *s)//数组名为数组首元素地址 { int n=0; for(n=0;*s!='\0';s++) n++; return 0; }
//指针: int strlen(char *s) { char *p=s; while(*p!='\0') p++; return p-s; }在用strlen时注意,它的返回类型为无符号数。
相关文章推荐
- 如何组织构建多文件 C 语言程序(二)
- 如何写好 C main 函数
- Lua和C语言的交互详解
- 关于C语言中参数的传值问题
- 简要对比C语言中三个用于退出进程的函数
- 深入C++中API的问题详解
- 基于C语言string函数的详解
- C语言中fchdir()函数和rewinddir()函数的使用详解
- C语言内存对齐实例详解
- 使用C语言判断英文字符大小写的方法
- c语言实现的带通配符匹配算法
- C语言实现顺序表基本操作汇总
- C语言中计算正弦的相关函数总结
- 使用C语言详解霍夫曼树数据结构
- 探讨C语言的那些小秘密之断言
- C语言实现BMP转换JPG的方法
- 深入探讨C语言中局部变量与全局变量在内存中的存放位置
- C语言查找数组里数字重复次数的方法
- C语言泛型编程实例教程
- C语言中使用lex统计文本文件字符数