/*------------------------------------------------------- 【程序改错】

题目:假定整数数列中的数不重复,并存放在数组中。下列给定程序中函数fun的功 能是:删除数列中值为x的元素。变量n中存放数列中元素的个数。

-------------------------------------------------------*/ #include <stdio.h>

#define N 20

int fun(int *a,int n,int x) { int p=0,i; a[n]=x; while( x!=a[p] ) p=p+1; /FOUND/ if(p==n) // 修改为p==n return -1; else { for(i=p;i<n-1;i++) /FOUND/ a[i]=a[i+1]; // 修改为a[i]=a[i+1] return n-1; } } int main() // 添加返回类型int { int w[N]={-3,0,1,5,7,99,10,15,30,90},x,n,i; n=10; printf("The original data : "); for(i=0;i<n;i++) printf("%5d",w[i]); printf(" Input x (to delete): "); scanf("%d",&x); printf("Delete : %d ",x); n=fun(w,n,x); if ( n==-1 ) printf("Not be found!

"); else { printf("The data after deleted: "); for(i=0;i<n;i++) printf("%5d",w[i]); printf("

"); } return 0; // 添加return 0 }

C语言程序改错:删除数组中指定元素

原文地址: https://www.cveoy.top/t/topic/pbls 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录