for和while的区别?
小白求大佬指点,下面有这道题目的两个解法,本人认为一样但运行结果不一样,抱拳了
【问题描述】输入N个整数,剔除其中能被3或者5整除的元素,输出最后的数组
【输入形式】整数N,和N个整数
【输出形式】剔除数据后的结果,如果结果为空,则输出字符串NULL
【样例输入】5 1 2 3 4 5
【样例输出】1 2 4
【样例输入】5 12 6 3 9 5
【样例输出】NULL
#include<stdio.h>
int main()
{
int a[100]= {0},b[100]= {0},i,j,k=0,n,sum=0,x,y;
scanf("%d",&n);
for(i=0; i<n; i++)
{
scanf("%d",&a[i]);
}
for(j=0; j<n; j++)
{
x=a[j]%5;
y=a[j]%3;
if(x==0||y==0)
{
continue;
}
if(x!=0&&y!=0)
{
b[k]=a[j];
k++;
}
}
for(int p=0; p<=k; p++)
{
sum+=a[p];
}
if(sum!=0)
{
for(int o=0; o<=k; o++)
{
printf("%d ",a[o]);
}
}
if(sum==0)
{
printf("NULL");
}
return 0;
}
#include<stdio.h>
int main()
{
int a[100]= {0},b[100]= {0},i,j,k=0,n,sum=0,x,y;
scanf("%d",&n);
for(i=0; i<n; i++)
{
scanf("%d",&a[i]);
}
for(j=0; j<n; j++)
{
x=a[j]%5;
y=a[j]%3;
if(x==0||y==0)
{
continue;
}
if(x!=0&&y!=0)
{
b[k]=a[j];
k++;
}
}
for(int p=0; p<=k; p++)
{
sum+=a[p];
}
if(sum!=0)
{
for(int o=0; o<=k; o++)
{
printf("%d ",a[o]);
}
}
if(sum==0)
{
printf("NULL");
}
return 0;
}