您的位置:首页 > 其它

提高篇第二十六讲项目2 - 删除数组元素并升序排列

2017-10-10 17:05 816 查看
问题描述:

【项目2 - 删除数组元素并进行排序】
del函数的作用是删除数组a中的指定元素x,n为数组a的元素个数。函数的返回值,为删除元素后的有效元素个数(数组中可能有重复元素)。然后进行升序排序,函数的原型为:
int del (int a[10],int n,int x)

程序代码

#include <stdio.h>
#include <stdlib.h>
#define N 50
/*
*csdn学院--2016级
*目的:让代码见证成长(作为一个初学的菜鸟,如
*大家有发现错误,欢迎指正!)
*文件名称:Myfun169.c
*问题描述:删除数组元素
*作者:小臣小仁
*完成日期:2017年10月9日
*/
int del(int[],int,int);
int main()
{
int i,n;
int a
={1,46,2,7,3,13,14,77,23,46};
n=del(a,10,46);
for(i=0;i<n;i++)
printf(" %d",a[i]);
return 0;
}
int del(int a[],int n,int x)
{
int i,j,k,t,p=0,q=0;
while(p<n)
{
if(a[p]!=x)
{
a[q]=a[p];
q++;
}
p++;
}
for(i=0;i<p;i++)
{
k=i;
for(j=i+1;j<n;j++)
{
if(a[j]<a[k])
k=j;
}
t=a[k];
a[k]=a[i];
a[i]=t;
}
return p;
}

输出结果



心得体会

 作为一个大学二的菜鸟,开始慢慢前进,多多少少感到有收获,由于水平有限,多多少少有错,望包涵
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐