之前也看过别人写的一些代码都是用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语言删除字符串中的空格相关推荐

  1. C语言--使用指针实现删除字符串中的空格

    本篇主要实现了在C语言使用指针实现删除字符串中的空格,详细内容见下面代码,主要利用指针遍历所得到的字符串,使用一个指针指向字符串首地址,判断其是否为空格,如果是则定义一个临时指针,并遍历之后的所有字符 ...

  2. php 替换 tab,PHP 删除字符串中的空格和换行符终极方法 - 文章教程

    有时我们生成的代码中,或多或少会遇到代码中或者字符串中有多余的空格.换行等其他字符,但是这些字符在浏览器里面是不显示出来,任何的换行和再多的空格,都只显示一个空格的空间,这势必对网页的优化有这极其不好 ...

  3. PHP删除字符串中的空格和换行符终极方法

    问说网 > 文章教程 > 编程设计 > PHP删除字符串中的空格和换行符终极方法 字符串 换行符 文件编码 网页编码 隐藏字符 PHP删除字符串中的空格和换行符终极方法 问说网 •2 ...

  4. 统计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] ...

  5. (小甲鱼python)字符串系列笔记合集四 第四课、字符串IV总结 删除字符串中(左右)空格 删除指定的前缀或者后缀 字符串以参数指定的分隔符为依据进行切割,将切割后的结果返回一个三元组

    一.字符串总结四 1.删除字符串中(左右)空格或者与之匹配的字符串 "字符串".lstrip(char=None) 删除左空格 "字符串".rstrip(cha ...

  6. C++删除字符串中所有空格

    C++删除字符串中所有空格 我百度了好多帖子,都是互相抄的,用的递归,递归不好理解,我就用的迭代器,遍历string,碰到空格就删掉.这样很好理解. #include <iostream> ...

  7. JS 删除字符串中的空格和回车

    删除字符串中的空格 test_str = test_str.replace(/\ +/g, ""); 删除字符串中的回车 test_str= test_str.replace(/[ ...

  8. java 去掉字符串中的换行_java删除字符串中的空格、回车、换行符、制表符程序...

    本程序来详细的介绍关于java删除字符串中的空格.回车.换行符.制表符程序实例,有需要学习的朋友可参考参考. java换行符 那是因为默认的情况下,界面上的换行时用的"n",这是L ...

  9. Python删除字符串中的空格和特殊字符

    介绍字符串中处理空格和特殊字符的方法,特殊字符指制表符\t .回车符\r.换行符\n等. 1.strip() 用于删除字符串左右两侧的空格和特殊字符 语法: str.strip([chars]) ch ...

最新文章

  1. 使用 TListView 控件(3)
  2. python3.6.4安装教程-Centos7 安装Python3.6.4
  3. 拋棄虛擬機,微軟實驗讓我們在線做(二)
  4. Linux驱动基础:MSM平台AP/CP通信机制
  5. 从Thread.start()方法看Thread源码,多次start一个线程会怎么样
  6. worker进程和task进程区别_celery 每个 worker 在执行任务时,如何配置一定数量的 task?...
  7. IE下 c00ce56e 错误竟然是nginx 字符设置的问题
  8. Linux系统开机自动加载驱动module
  9. [原]那些年整理的Linux常用命令,简单明了
  10. Docker Compose学习之docker-compose.yml编写规则 及 实战案例
  11. Service之bindService
  12. centOS7中使用Nginx部署静态网页
  13. ELK基于ElastAlert实现日志的微信报警
  14. 短诗整理5—景物+记事
  15. 计算机二级Python笔记——第一部分
  16. Java随机生成4位随机数字+字母
  17. 在我心目中的霸气海贼王——路飞 不一样的路飞
  18. 怎样治愈游走性神经痛,游走性神经痛能治愈吗
  19. 计算机名(主机名)、本机地址(IP/IPv4)、localhost、127.0.0.1的关系
  20. 安卓手机分辨率修改工具的使用方法

热门文章

  1. python资格证书有效期_全国计算机等级考试合格证书的有效期
  2. 挑战空中加油——1号店B2C电商系统演进之路
  3. 循环链表的一个C++实现
  4. 2014最新显卡天梯图
  5. 高中生计算机类特长怎么写,高中生学籍档案个人特长怎么写
  6. 出门问问携手星网云,数字人赋能跨境电商新增长
  7. 解方程,解方程组,插值
  8. PO BO VO DTO POJO DAO DO
  9. 机器学习(第一章)—— 特征工程
  10. 达内java文档网址_达内java核心api下.pdf