大一的实验课,指针不会用,编函数也不是很熟,没思路,希望得到点指点,
4条回答 默认 最新
- 快乐鹦鹉 2022-11-22 17:23关注
只需要将被删除的字符串后的字符都向前移动被删除字符串长度位置就可以了
#include <stdio.h> char * str_delete(char *s,int v,int w) { if(v<1 || w<0) return s; char *p = s,*q; int i = 0; while(i<v-1 && s[i] != 0) { p++; i++; } if(s[i] == 0) return s; q = p; while(q-p<w && s[i] != 0) { i++; q++; } if(s[i] == 0) { *p = 0; return s; } do { *p = *q; p++; }while(*q++ != 0); return s; } int main() { char a[100]; int v,w; gets(a); scanf("%d %d",&v,&w); char *p = str_delete(a,v,w); printf("%s\n",p); return 0; }
本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 1无用
悬赏问题
- ¥15 phython路径名过长报错 不知道什么问题
- ¥15 深度学习中模型转换该怎么实现
- ¥15 HLs设计手写数字识别程序编译通不过
- ¥15 Stata外部命令安装问题求帮助!
- ¥15 从键盘随机输入A-H中的一串字符串,用七段数码管方法进行绘制。提交代码及运行截图。
- ¥15 TYPCE母转母,插入认方向
- ¥15 如何用python向钉钉机器人发送可以放大的图片?
- ¥15 matlab(相关搜索:紧聚焦)
- ¥15 基于51单片机的厨房煤气泄露检测报警系统设计
- ¥15 Arduino无法同时连接多个hx711模块,如何解决?