求求各位大佬了,这个怎么做
删除整数:假设整数数组a[10]中,存在与整数x相同的数据,其中数组a和x均为用户输入,则完成以下功能:(1)将数组a中与x相同的所有数据,除第一个之外,全部删除;如果只有一个(或没有)相同的数据,则保持数组a不变。
(2)输出删除后的数组a。
2022-05-20 09:30
程序代码:#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
程序代码:#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