| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 940 人关注过本帖
标题:求求各位大佬了,这个怎么做
只看楼主 加入收藏
liang12352
Rank: 1
等 级:新手上路
帖 子:1
专家分:0
注 册:2022-5-20
结帖率:0
收藏
已结贴  问题点数:20 回复次数:2 
求求各位大佬了,这个怎么做
删除整数:假设整数数组a[10]中,存在与整数x相同的数据,其中数组a和x均为用户输入,则完成以下功能:
(1)将数组a中与x相同的所有数据,除第一个之外,全部删除;如果只有一个(或没有)相同的数据,则保持数组a不变。

(2)输出删除后的数组a。
搜索更多相关主题的帖子: 相同 数组 整数 删除 数据 
2022-05-20 09:30
rjsp
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:528
帖 子:9007
专家分:53942
注 册:2011-1-18
收藏
得分:10 
我好像记得这道题,于是我找了找,找到 https://bbs.bccn.net/thread-508900-1-1.html 你跟 k3552 是校友吗?为什么他要C++代码,你要C代码?

程序代码:
#include <stdio.h>

int main( void )
{
    int a[10], x;
    const size_t length = sizeof(a)/sizeof(*a);
    for( size_t i=0; i!=length; ++i )
        scanf( "%d", a+i );
    scanf( "%d", &x );

    size_t new_length = 0;
    for( size_t i=0,cnt=0; i!=length; ++i )
    {
        cnt += a[i]==x;
        if( a[i]!=x || cnt==1 )
            a[new_length++] = a[i];
    }

    for( size_t i=0; i!=new_length; ++i )
        printf( "%d%c", a[i], " \n"[i+1==new_length] );
}
2022-05-20 13:05
不会游泳的虾
Rank: 7Rank: 7Rank: 7
等 级:贵宾
威 望:27
帖 子:107
专家分:675
注 册:2021-7-1
收藏
得分:10 
供参考:
程序代码:
#include <stdio.h>
#define N 10
int main()
{
    int i, j, x, a[N],flg;
    printf("Input %d numbers:", N);
    for (i = 0; i < N; i++)
        scanf("%d", &a[i]);
    printf("x=");
    scanf("%d", &x);
    for (i = j = 0, flg = 0; i < N; i++)
        if (a[i] - x)
            a[j++] = a[i];
        else {
            if (flg == 0)
                a[j++] = a[i];
            flg++;
        }
    printf("删除%d后的数组:\n", x);
    for (i = 0; i < j; i++)
        printf("%4d", a[i]);
    printf("\n");
    return 0;
}
2022-05-20 14:09
快速回复:求求各位大佬了,这个怎么做
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.015818 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved