C语言之删除字符串中间和后面的*

复制代码
#include <stdio.h>
void str1(char a[],char b[]){
    int k=0;
    _Bool flag=1;
    for(int i=0;a[i]!='\0';i++){
        if(a[i]!='*') flag=0;
        if(flag) b[k++]=a[i];
        if(!flag&&a[i]!='*') b[k++]=a[i];
    }
}
int main(){
    char a[100] = "****acb*da**c***da**sfa**fa";
    char b[100] ="\0";
    str1(a,b);
    printf("%s",b);
}

采用flag的控制方式,有效控制分支。

相关推荐
赴生-12 小时前
C++进阶 C++11(下)
开发语言·c++
Matrix_1112 小时前
手机里的计算摄影:广角形变校正算法
人工智能·算法·智能手机·计算摄影
WBluuue13 小时前
数据结构与算法:有序表(二):跳表
数据结构·c++·算法·skiplist
赴生-13 小时前
C++进阶 异常
开发语言·c++
黄毛火烧雪下14 小时前
Java 核心知识点总结(一)
java·开发语言
其实防守也摸鱼14 小时前
软件安全与漏洞--软件安全编码与防御技术理论题库
开发语言·网络·安全·网络安全·软件安全·软件安全与漏洞
x1387028595714 小时前
c语言中srtlen(指针使用计算字符长度)、传值和传址调用
c语言·开发语言·算法·visual studio
海兰14 小时前
【实用程序】电商销售分析仪表盘 — 从零搭建一个AI参与的全栈数据洞察系统
人工智能·学习·算法
iCxhust14 小时前
C#进程管理程序
开发语言·汇编·stm32·单片机·c#·微机原理
凡人叶枫14 小时前
Effective C++ 条款28:避免使用 handles 指向对象内部
linux·服务器·开发语言·c++·嵌入式开发