#include <stdio.h>
#include <conio.h>

void fun(char *a, char *h, char *p)
{
 char b[81];
 char *c = a;
 int i = 0;
 while (*c){
  if (c <= h){
   b[i] = *c;
   i++;
   }
  else if (h < c && c <= p){
      if (*c != '*'){
      b[i] = *c;
      i++;
      }
      }
   else{
     b[i] = *c;
     i++;
     }                                      
   c++;
  }
 for (int j = 0; j < i; j++){
  *a = b[j];
  a++;
 }
 *a = '\0';   //puts()遇到空字符停止,空字符不是空白字符,空白字符是指:空格、制表符 \t 等不显示的字符,而空字符‘\0’往往作为字符串的停止字符
}

/* fun()函数如果不加最后的 : *a = '\0'; 将会输出“*****FGHhhhHHW***HHW***",总长度不变;加上这句之后,输出”*****FGHhhhHHW***",相当于把字母中间的'*'删除了,达到目的;

int main()

{

char s[81], *t, *f;
 printf("Enter a string:\n");

gets(s);    //输入一个字符串,形如"*****FG*H*hhh****HHW***"
 t = f = s;
 while (*t) t++;
 t--;
 while (*t == '*') t--;        //使 t 指向最后输入字符串的最后一个字母‘W'
 while (*f == '*') f++;     //使 f 指向输入字符串的第一个字母’F'
 fun(s, f, t);                    //调用函数除去字母间的‘*’,使字符串变为”*****FGHhhhHHW***"
 printf("The string after deleted:\n");

puts(s);                         //输出字符串,puts()遇到空字符‘\0'停止输出;
 return 0;
}

C语言小程序:除去字符串中间不需要的字符(从小引发大思考)的更多相关文章

  1. c语言小程序以及java生成注释文档方法

    c语言小程序:sizeof和strlen() sizeof运算符以字节为单位给出数据的大小,strlen()函数以字符为单位给出字符串的长度,字符和字节不是一回事. char类型用于存储字母和标点符号 ...

  2. 通过反汇编C语言小程序学习Liunx汇编语言

    大家好!    我是来自山东师范大学的吴乐.    今天在<Linux内核分析>MOOC课程http://mooc.study.163.com/course/USTC-1000029000 ...

  3. Linux下简单C语言小程序的反汇编分析

    韩洋原创作品转载请注明出处<Linux内核分析>MOOC课程http://mooc.study.163.com/course/USTC-1000029000 写在开始,本文为因为参加MOO ...

  4. C语言小程序——推箱子(窄字符和宽字符)

    C语言小程序——推箱子(窄字符Version) 推箱子.c #include <stdio.h> #include <conio.h> #include <stdlib. ...

  5. Linux C语言小程序

    Linux C语言小程序 #include <stdio.h> #include <stdlib.h> #include <unistd.h> #include & ...

  6. 自动生成.py文件头部的C语言小程序

    每次都 vi xxx.py 然后再打 #!/usr/bin/env python 等等的程序头信息感觉有点麻烦,于是便想着写一个小程序自动生成这些头信息了,顺便在 ~/.bashrc 里写入 alia ...

  7. c语言小程序

    这是一个用c语言写的小程序,功能是随机输出30道100以内的四则运算,先生成两个随机数,再通过随机数确定四则运算符号,最后输出题目. #include<iostream> using na ...

  8. 小程序json字符串转为对象

    小程序里json字符串转为对象使用JSON.parse()方法转变无效, 看报错提示有单引号“ ' ” 因为单引号而无效, 将单引号全改双引号即可. 报错如下: VM11050:1 thirdScri ...

  9. C语言小程序之整除

    看到有人要求用C语言写这样一个小程序,就拿来温习一下 需求:输出从1到2015这2015个自然数中,能被4或5整除,但不能被30整除的数,并计算有多少个数.   #include<stdio.h ...

随机推荐

  1. (转)决定系数R2

    有些讲得太烂了,我来通俗的梳理一下R2. Calculating R-squared 在线性回归的模型下,我们可以计算SE(line), SE(y均值). The statistic R2descri ...

  2. 本地项目初始化git推送到服务器

    1. 创建本地项目,在项目根目录执行git init命令 git init 2.在git服务器上创建一个仓库,这里使用GitHub创建一个仓库. 3.执行git remote add origin & ...

  3. pc远程控制凭证不工作的解决办法

    感谢这位博主写的文章https://blog.csdn.net/u010433704/article/details/50679874 前提是要控制的电脑设置了密码,之前想不明白为什么需要这一项,后来 ...

  4. icpc2018-焦作-F Honeycomb bfs

    http://codeforces.com/gym/102028/problem/F 就是一个bfs,主要问题是建图,要注意奇数和偶数列的联通方案是略有不同的.比赛的时候写完一直不过样例最后才发现没考 ...

  5. Highcharts 时间格式化函数

    1.函数构造: Highcharts.dateFormat(String format, [Number time], [Boolean capitalize])    2.参数列表:   Strin ...

  6. MapReduce(五)

    MapReduce的(五) 1.MapReduce的多表关联查询. 根据文本数据格式.查询多个文本中的内容关联.查询. 2.MapReduce的多任务窜执行的使用 多任务的串联执行问题,主要是要建立c ...

  7. require,import区别

    链接:https://www.zhihu.com/question/56820346 遵循的模块化规范不一样 模块化规范:即为 JavaScript 提供一种模块编写.模块依赖和模块运行的方案.谁让最 ...

  8. STL 小白学习(1) 初步认识

    #include <iostream> using namespace std; #include <vector> //动态数组 #include <algorithm ...

  9. Nginx的使用(二)Nginx配置wordpress

    安装php:https://windows.php.net/download/,php默认启动命令:php-cgi.exe -b 127.0.0.1:9000 安装wordpress:https:// ...

  10. AngelToken:区块链技术的突破

    科技进步,直接捅破了政治.金融.军事领域所有的玩法,让工业革命以来形成的规则变得一钱不值. 而且,当下的最重要的技术趋势——区块链.Token.AngelToken,正在引导我们走向全面的失控和未知. ...