- 题目:请编写一个程序,使其可以实现:输入n(0-n≤10)个整数,删除其中的负数。例如, 输人1.-23,4.5,-6.7,输出结果为13 5 7. 。
以下是我编写的代码:
#include <stdio.h>
void main()
{
int i=0, j=0;
int a[10];
printf("请输入十个以内整数:");
while(i<10)
{
scanf("%d",&a[i]) ;
i++;
}
i=0;
while(i<10)
{
if(a[i]>0)
{
printf("%d ",a[i]);
}
i++;
}
}
不知道如何控制输入五到十个,该怎么控制呢?
在各路大神的帮助下成功的解决了此问题,代码如下:
#include <stdio.h>
#include <malloc.h>
void main()
{
int i=0, j=0,num;
int *array;
printf("你要输入几个数字:");
scanf("%d",&num);
array=(int*)malloc(num*sizeof(int));
printf("请输入%d整数:",num);
while(i<num)
{
scanf("%d",&array[i]) ;
i++;
}
i=0;
while(i<num)
{
if(array[i]>0)
{
printf("%d ",array[i]);
}
i++;
}
free(array);
}