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的控制方式,有效控制分支。

相关推荐
Zachery Pole6 小时前
具身智能强化学习(1)引言
算法·机器学习
All for pursuit.6 小时前
【动态规划-11】279.完全平方数
数据结构·c++·算法·leetcode·动态规划
淡海水6 小时前
02-06-原理篇-增量式GC与并发GC
算法·unity·c#·并发·gc·增量
对空六课6 小时前
无头浏览器访问对跳出率的过滤规则
服务器·前端·算法·数据分析
有同事要进步6 小时前
leecode第一题-两数字之和(打卡)
算法
程序员清风6 小时前
二叉搜索树:查找、插入与删除
算法
Aurorar0rua6 小时前
CS50 x 2024 Notes Data structures - 08
c语言·开发语言·学习方法
HRTOS6 小时前
HRTOS 内核 BUG 修复:任务等待对象未初始化导致的异常唤醒问题
单片机·嵌入式硬件·算法·51单片机
企业数字化笔记6 小时前
新租户注册成功却不能用?开通状态、初始化恢复与可用性验收
开发语言·python
瑶山6 小时前
Windows + WSL2 Ubuntu + VS Code配置C++开发环境
开发语言·c++·windows·vscode·wsl