C语言 已知10个整数,删除其中所有大于等于1的数据,输出剩余数据和剩余个数

如题所述

#include "stdio.h"

int main()

{

    int a[10];

    int i;

    int sum=0;

    printf("请输入10个整数:\n");

    for(i=0;i<10;i++)

      scanf("%d",&a[i]);

    printf("删除这10个数中大于等于1的数据后,余下数据是:\n");

    for(i=0;i<10;i++)

    {

          if(a[i]<1)

          {

               printf("%d ",a[i]);

               sum++;

 

          }

 

    }

    printf("\n剩余数据个数为:%d\n",sum);

 

 

}

结果:

温馨提示:答案为网友推荐,仅供参考
第1个回答  2013-03-28
#include<stdio.h>
main()
{
int a[10] = {-1,-2,-3,-4,-5,6,7,8,9,10};
int b[10];
int i=0,j=0;
for (i=0,j=0;i<10;i++)
{
if (a[i]<1)
{
b[j] = a[i];
j++;
}
}
for (i=0;i<j;i++)
{
printf("%d ",b[i]);
}
printf("\n");
printf("%d\n",j);
}
这个原理是找出所有小于1的数据保存到另一个数组
第2个回答  2013-03-28
如果是存在数组a里
int i,j;
int b[10];
for(i=0,j=0;i<10;i++)
{if(a[i]<1)b[j++]=a[i];}
for(i=0;i<j-1;i++)
printf("%d ",b[i]);
printf("%d %d\n",b[i],j);
相似回答