c语言删除字符串中的空格
之前也看过别人写的一些代码都是用gets去输入字符串的,但是我用的是scanf,然而scanf函数用% s输入的话是不识别空格的,要用正则表达式去写。
以下附上我写的代码:
//c语言删除字符串中的空格
#include<stdio.h>
#include<string.h>
void strip()
{
char str[100];
char *p;
printf("请输入一段字符(包含空格):\n");
scanf("%[^\n]",str); //用正则表达式,scanf才会识别空格
int j,len=strlen(str);//len记录字符串的长度,因为每删除一个空格字符串长度都会减一,所以是变量,不能一直是strlen(str)
int flag; //flag记录i所在的空格的位置,i是不可以随意动的并且之后遍历后面的字符
for(int i = 0;i < len;i++)//遍历字符串
{
if(str[i] == ' ') //遇到空格就将后面的字符全往前挪
{
flag = i;
for(j = flag+1;j <= len;j++,flag++) //从i的后面一个开始也是flag的后面,j和flag都要自增不然会是覆盖同一个字符
{
str[flag] = str[j];
}
len--;//字符长度减一
--i; //这一步很重要,如果挪完一次,i这个位置是后面的新数据,i还没有对其判断就会因为for循环自增所以要先减一再自增再判断一次
}
}
printf("%s\n",str);
}
int main(int argc, char const *argv[])
{
strip();//调用函数
return 0;
}
c语言删除字符串中的空格相关推荐
- C语言--使用指针实现删除字符串中的空格
本篇主要实现了在C语言使用指针实现删除字符串中的空格,详细内容见下面代码,主要利用指针遍历所得到的字符串,使用一个指针指向字符串首地址,判断其是否为空格,如果是则定义一个临时指针,并遍历之后的所有字符 ...
- php 替换 tab,PHP 删除字符串中的空格和换行符终极方法 - 文章教程
有时我们生成的代码中,或多或少会遇到代码中或者字符串中有多余的空格.换行等其他字符,但是这些字符在浏览器里面是不显示出来,任何的换行和再多的空格,都只显示一个空格的空间,这势必对网页的优化有这极其不好 ...
- PHP删除字符串中的空格和换行符终极方法
问说网 > 文章教程 > 编程设计 > PHP删除字符串中的空格和换行符终极方法 字符串 换行符 文件编码 网页编码 隐藏字符 PHP删除字符串中的空格和换行符终极方法 问说网 •2 ...
- 统计substr在母串中出现次数/删除字符串中所有空格
int count(char*str,char*substr) { int i,j,k,num=0; for(i=0;str[i]!='\0';i++) { for(j=i,k=0;substr[k] ...
- (小甲鱼python)字符串系列笔记合集四 第四课、字符串IV总结 删除字符串中(左右)空格 删除指定的前缀或者后缀 字符串以参数指定的分隔符为依据进行切割,将切割后的结果返回一个三元组
一.字符串总结四 1.删除字符串中(左右)空格或者与之匹配的字符串 "字符串".lstrip(char=None) 删除左空格 "字符串".rstrip(cha ...
- C++删除字符串中所有空格
C++删除字符串中所有空格 我百度了好多帖子,都是互相抄的,用的递归,递归不好理解,我就用的迭代器,遍历string,碰到空格就删掉.这样很好理解. #include <iostream> ...
- JS 删除字符串中的空格和回车
删除字符串中的空格 test_str = test_str.replace(/\ +/g, ""); 删除字符串中的回车 test_str= test_str.replace(/[ ...
- java 去掉字符串中的换行_java删除字符串中的空格、回车、换行符、制表符程序...
本程序来详细的介绍关于java删除字符串中的空格.回车.换行符.制表符程序实例,有需要学习的朋友可参考参考. java换行符 那是因为默认的情况下,界面上的换行时用的"n",这是L ...
- Python删除字符串中的空格和特殊字符
介绍字符串中处理空格和特殊字符的方法,特殊字符指制表符\t .回车符\r.换行符\n等. 1.strip() 用于删除字符串左右两侧的空格和特殊字符 语法: str.strip([chars]) ch ...
最新文章
- 使用 TListView 控件(3)
- python3.6.4安装教程-Centos7 安装Python3.6.4
- 拋棄虛擬機,微軟實驗讓我們在線做(二)
- Linux驱动基础:MSM平台AP/CP通信机制
- 从Thread.start()方法看Thread源码,多次start一个线程会怎么样
- worker进程和task进程区别_celery 每个 worker 在执行任务时,如何配置一定数量的 task?...
- IE下 c00ce56e 错误竟然是nginx 字符设置的问题
- Linux系统开机自动加载驱动module
- [原]那些年整理的Linux常用命令,简单明了
- Docker Compose学习之docker-compose.yml编写规则 及 实战案例
- Service之bindService
- centOS7中使用Nginx部署静态网页
- ELK基于ElastAlert实现日志的微信报警
- 短诗整理5—景物+记事
- 计算机二级Python笔记——第一部分
- Java随机生成4位随机数字+字母
- 在我心目中的霸气海贼王——路飞 不一样的路飞
- 怎样治愈游走性神经痛,游走性神经痛能治愈吗
- 计算机名(主机名)、本机地址(IP/IPv4)、localhost、127.0.0.1的关系
- 安卓手机分辨率修改工具的使用方法