标题:求助各位大佬:删除n个数中的0元素
取消只看楼主
Emmaer123
Rank: 1
等 级:新手上路
帖 子:39
专家分:0
注 册:2019-9-20
结帖率:66.67%
 问题点数:0 回复次数:3 
求助各位大佬:删除n个数中的0元素
#include <stdio.h>
int main()
{
    int i,n,j,flag,count=0,MAX=0;
    char a[1000]={0};char b[1000]={0};
    scanf("%d",&n);
    for (i=0;i<n;i++)   //依次输入数组   
     {    scanf("%s",&a[i]);
          if(a[i]==0) MAX++;  //记录这串数中所有0的个数
          b[i]=a[i];
     }
   
    for(i=n-1;i>=0;i--) //倒着从这串数组开始,例如从最后一个a[i-1]开始,将它的下标改变 i-1减去它的前面所有0的个数即count,为了不覆盖掉前面 还没改下标的元素,因此赋给了b数组
    {
        if(a[i]!=0)
        {
            for(j=0;j<i-1;j++)
            if(a[i]==0)        { count++; }
        }
        b[i-count]=a[i];
        count=0;   //count重置归零,因为每个元素前的0元素个数count不同
    }
    for(i=0;i<n-MAX;i++)
    {
        printf("%d",b[i]);
    }
    return 0;   
}
   
    请教各位大神,为什么编译不出来?感谢路过的大神花时间进贴指教


[此贴子已经被作者于2019-10-15 16:47编辑过]

搜索更多相关主题的帖子: 元素 count 个数 for 删除 for 个数 元素 删除 count 
2019-10-14 22:17
Emmaer123
Rank: 1
等 级:新手上路
帖 子:39
专家分:0
注 册:2019-9-20
得分:0 
回复 2楼 自学的数学
sorry,这个错误实在太低级了哈哈,但我改了以后还是编译不了
2019-10-14 23:06
Emmaer123
Rank: 1
等 级:新手上路
帖 子:39
专家分:0
注 册:2019-9-20
得分:0 
回复 4楼 bcbbcclbbc
抱歉我看了下n应该改成i,可是改过之后还是错了
2019-10-15 16:51
Emmaer123
Rank: 1
等 级:新手上路
帖 子:39
专家分:0
注 册:2019-9-20
得分:0 
#include <stdio.h>
int main()
{
    int i,n,j,flag,count=0,MAX=0;
    char a[1000]={0};char b[1000]={0};
    scanf("%d",&n);
   
    for (i=0;i<n;i++)   //依次输入数组   
     {    scanf("%d",&a[i]);
          if(a[i]==0) MAX++;  //记录这串数中所有0的个数
          b[i]=a[i];
     }
    for(i=n-1;i>=0;i--) //倒着从这串数组开始,例如从最后一个a[i-1]开始,将它的下标改变 i-1减去它的前面所有0的个数即count,为了不覆盖掉前面 还没改下标的元素,因此赋给了b数组
    {
        if(a[i]!=0)
        {         // 7 8 0 9 3 4  0 5          7 8 9 3 4 5
                  //b[5]=a[7]    b[4]=a[5] b[3]=a[4]   b[2]=a[3]
            for(j=0;j<i-1;j++)   
            {
               if(a[j]==0)     count++;
            }
        
           b[i-count]=a[i];printf("%d",b[i]);
           count=0;j=0;   //count重置归零,因为每个元素前的0元素个数count不同
           continue;
       }
    }
    printf("\n");
    for(i=0;i<n-MAX;i++)  printf("%d",b[i]);  
}
2019-10-15 19:28



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-497275-1-1.html




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

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