问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

C语言编写一个函数功能是删除字符串中的字符d

发布网友 发布时间:2022-05-31 09:18

我来回答

5个回答

热心网友 时间:2023-10-12 10:13

算法很多,告诉你一种比较好想的算法!自己编写,练习一下才有收获!
定义一个数组char a[10],输入一个字符串给它。再定义一个数组char b[10],把数组a中不是字符d和D的字符赋给数组b即可。很简单的!
//@@@@@@@@@@@@@@@@@@@@@@@@@@
//@@@@@@@@@@@@@@@@@@@@@@@@@@
//@@@@@@@@@@@@@@@@@@@@@@@@@@
代码如下(已经编译运行过!)如下:
#include "stdio.h"
void main()
{
char a[10],b[10];
int i=0,j=0;
printf("输入字符串赋给数组a[10] :");
scanf("%s",a);
//把数组A一个个赋给数组B,判断一下,排除字符d和D,字符d和D的ASCII码值分别是100和68
for (i=0; i<10; i++)
{
if (100 != a[i] && 68 != a[i] ) //排除d和D字符
{
b[j] = a[i]; //把不是d和D的字符赋给数组b
j++;
}
}
printf("删除d和D字符后的字符串为 :%s\n",b);
}
//@@@@@@@@@@@@@@@@@@@@@@@
//@@@@@@@@@@@@@@@@@@@@@@@@
//@@@@@@@@@@@@@@@@@@@@@@@@

热心网友 时间:2023-10-12 10:14

#include <stdio.h>
#include <string.h>
//删除字符函数,参数分别是目标串和要删除的字符
void deleteC(char* str, char del)
{
int i = 0;
int j = 0;
char* ptr = str;
while(ptr[i] != '\0')
{
if (ptr[i] == del)//找到要删除的字符
{
j = i;
//该循环将要删除字符后面的字符
//与前面的接上
while (ptr[j] != '\0')
{
ptr[j] = ptr[j + 1];
j++;
}
}
i++;
}
}
void main()
{
char tmp[20]; //存储输入的字符串
printf("Enter the string:\n");
scanf("%s",&tmp);
printf("%s\n",tmp);

deleteC(tmp, 'd');//删除大写的C

printf("%s\n",tmp);
}

热心网友 时间:2023-10-12 10:14

void main()
{
char temp[100];
char *p = temp;
char test;
int i = 0;
int j;
gets(p);/*取得字符串*/
while(temp[i] != '\0'){/*查找'd'直到字符串结束*/
if(temp[i] == 'd'){
for(j = i; temp[j] != '\0'; j++){/*找到'd',把后面的字符前移一位*/
temp[j] = temp[j+1];
}
}
i++;
}
puts(p);
getch();
}

热心网友 时间:2023-10-12 10:15

#include <string>
#include <iostream>
using namespace std;
void main()
{
char ch[100];
cin.getline(ch,100,'\n');
string str(ch);
int i,j;
for(i=0;i<str.length();i++)
{
if(ch[i]=='d')
for(j=i;j<str.length();j++)
ch[j]=ch[j+1];
}
cout<<ch<<" "<<endl;
}

热心网友 时间:2023-10-12 10:16

把注释的两行加上就可以实现删除输入的字符
函数中的do{}while()循环很经典。
#include<stdio.h>
#include <conio.h>
#define N 20

void char_search(char str[], char c)
{
char *p=str;
do
if (*str!=c)
*p++=*str;
while (*str++);
}

void main()
{
char str[N];
char c='d';
/*
printf("input a char that you wang to delete:");
scanf("%c",&c);*/
printf("input a string:");
scanf("%s",str);
char_search(str,c);
printf("%s\n",str);
getch();
}
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
怎么把苹果电脑安装到固态硬盘苹果笔记本可以换成固态硬盘吗_百度知 ... 营转非的车保险和私车一样吗? 功夫不负有心人的观点怎么写 用具体事实说明一个观点比如“功夫不负有心人”“虚心使人进步骄傲使... 我左腿膝盖向上10cm外侧刚发现有个硬的包很疼,表面无异样请问是什么`昨 ... 左腿膝盖外侧酸是怎么回事,右腿没感觉,是缺少什么了吗,以前一般吃几天... 膝盖处外侧皮肤麻木,皮肤容易红,外侧摸关节处略大于右腿同部位关节。去... 灰色冬裙配什么短外套 2024年信用卡诈骗罪是什么样的量刑标准 徐州启星中学好不好在徐州排第几徐州启星中学 C语言链表 删除函数有问题 怎样用C语言写线性表删除函数(不要复制网上的) c语言删除函数功能是怎么实现的? 延寿县每年都招特岗教师吗? 特岗教师每年都什么时候考试呀?和正常的教师招聘有啥不一样吗? 丰田卡罗拉是几座车? 丰田卡罗拉双擎轿车1.8l领先版是不是三箱车 丰田 卡罗拉是三厢车吗? 中国公民办理领事的相关费用啥时降低? 2022大学生入伍考研优惠政策 本科考上研究生能不能先 当兵 后在读研? 女大学生毕业去当兵还能在考研吗? 我都二十多了,可是肚脐眼总是流水,而且还好臭,不知道怎么办 浦东新区车辆年检的地方在哪里? 小米2a原装数据线长什么样,求图片说明 1.moodle中添加皮肤后,中文状态下导航条显示英文,其他正常。如何修改? 2.如何在moodle中建立页内链接? 我刚在moodle官网下载了r MoodleWindowsInstaller-latest-27.zip压缩包,然后打开star Moodle显示有病毒 如何用Moodle网络学习平台添加资源库和各种活动79 关于此页的Moodle文档 问题! moodle中如何添加自己制作的外观模板? C语言问题 实现在字符串的内部删除字符串的函数del。 c语言删除学生信息函数 有问题求指教! c语言编程,变好了删除函数,现在要对删除的数据进行恢复?怎么做? 底下是我写的删除函数: 农村圆窑洞怎么安装空调 农村的窑洞里可不可装空调? 窑洞装空调装几P,什么类型才合适呢? 窑洞冬天用空调取暖行吗/ 房2.7米。柜2.2米。安空调行吗? 在暖和的地方住的房子是什么样的? 老人给九旬母亲房子装摄像头目的是什么? 我在手机上 下载的小说,为什么在手机上找不到?急~知道的请快速恢复! 从电脑下载小说到手机上怎么看不到了? 为什么下载到手机的小说看不显示找不到路径 小说已经下到手机里了 为什么找不到? 下载的小说,为什么在手机上找不到,但却在腾讯手机管家上有显示? 从小说阅读网那下载了小说在内存卡上手机为什么找不到! 为什么我下载的小说在手机就找不到,下载的是TXT的手机支持就是找不到愁死我了着急看呢在电脑就能找到 下载的小说直接放到内存卡里了 为什么在手机里找不到呢? 为什么手机电子书找不到小说? 网上下载的小说,在手机里找不到该怎么办?