鱼C论坛

 找回密码
 立即注册
查看: 2191|回复: 4

[已解决]C语言求助,如何删除一个数组中的某个元素(可能是重复元素),该元素由键盘输入

[复制链接]
发表于 2020-3-9 09:16:41 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
输入一组整数,以-1作为结束的标志,用数组s接收这组数,(规定这组数不超过100个,数组中的元素值可以重复出现;例如,输入6  9  5  4  6  7  5  6  8  6  6  2  3 -1),输入一个整数x,将s中值等于输入值x的所有元素从数组中删除,并输出删除后元素的个数和数组元素的各个值(例如, 输入6,则结果为:个数=8  ; 数组元素为:  9 , 5, 4 , 7 ,5 , 8 ,2 ,3 )。   
我自己弄过但是那两个重复的6不能全部删除,总会剩余一个6.   下边是我自己弄的一个简单的程序:
#include<stdio.h>
void main()
{
        int s[13]={6,9,5,4,6,7,5,6,8,6,6,2,3};
        int x=6,i,j,m;
        for(i=0;i<13;i++)
        {
                if(x == s[i])
                {
                        m++;
                        for(j=i;j<12;j++)
                        {
                                s[j]=s[j+1];
                        }
                }
        }
        printf("%d\n",13-m);
        for(i=0;i<13-m;i++)
        {
                printf("%d ",s[i]);
        }
}
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2020-3-9 09:21:10 | 显示全部楼层    本楼为最佳答案   
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2020-3-9 09:38:11 | 显示全部楼层
qiuyouzhi 发表于 2020-3-9 09:21
https://blog.csdn.net/csdn17355456893/article/details/76883951

但是这两种方法只能删除一个6,但是题目要求的是删去数组中全部的6
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-3-9 09:38:50 | 显示全部楼层
Funnyci 发表于 2020-3-9 09:38
但是这两种方法只能删除一个6,但是题目要求的是删去数组中全部的6

只要删除6,对吗?
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2020-3-9 09:43:42 | 显示全部楼层
qiuyouzhi 发表于 2020-3-9 09:38
只要删除6,对吗?

删除的元素是键盘输入的,但是要删除数组中全部的那个元素,比如删除6,就要把数组里边的6全删了
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2025-3-14 21:30

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表