提高篇第二十六讲项目2 - 删除数组元素
2017-10-09 16:17
190 查看
问题描述
【项目2 - 删除数组元素】
del函数的作用是删除数组a中的指定元素x,n为数组a的元素个数。函数的返回值,为删除元素后的有效元素个数(数组中可能有重复元素)。函数的原型为:
int del (int a[10],int n,int x)
(1)请实现这个函数,并完成测试。
程序代码
#include <stdio.h>
/*
*csdn学院--2016级
*目的:让代码见证成长(作为一个初学的菜鸟,如
*大家有发现错误,欢迎指正!)
*文件名称:Myfun168.c
*问题描述:删除数组元素
*作者:小臣小仁
*完成日期:2017年10月9日
*/
int del(int [],int,int);
int main()
{
int i,n=10;
int a[10]={12,5,41,31,56,41,16,18,25,31};
n=del(a,10,41);
for(i=0;i<n;i++)
printf("%d ",a[i]);
return 0;
}
int del(int a[],int n,int x)
{
int q=0,p=0;
while(q<n)
{
if(a[q]!=x)
{
a[p]=a[q];
p++;
}
q++;
}
return p;
}
之前打了个错误代码,只能覆盖一个数,其他相同它覆盖不了,希望跟我一样的小白不要入坑,代码如下
#include <stdio.h>
#include <stdlib.h>
#define N 50
/*
*csdn学院--2016级
*目的:让代码见证成长(作为一个初学的菜鸟,如
*大家有发现错误,欢迎指正!)
*文件名称:Myfun168.c
*问题描述:删除数组元素
*作者:小臣小仁
*完成日期:2017年10月7日
*/
int del(int[],int,int);
int main()
{
int i,n;
int a
={1,45,2,7,3,3,14,77,23,46};
n=del(a,10,3);
for(i=0;i<n;i++)
printf(" %d",a[i]);
return 0;
}
int del(int a[],int n,int x)
{
int i,j;
for(i=0;i<n;i++)
if(a[i]==x)
break;
for(j=i;j<n;j++)
a[j]=a[j+1];
return --n;
}
输出结果
心得体会:
作为一个大学二的菜鸟,开始慢慢前进,多多少少感到有收获,由于水平有限,多多少少有错,望包涵
【项目2 - 删除数组元素】
del函数的作用是删除数组a中的指定元素x,n为数组a的元素个数。函数的返回值,为删除元素后的有效元素个数(数组中可能有重复元素)。函数的原型为:
int del (int a[10],int n,int x)
(1)请实现这个函数,并完成测试。
程序代码
#include <stdio.h>
/*
*csdn学院--2016级
*目的:让代码见证成长(作为一个初学的菜鸟,如
*大家有发现错误,欢迎指正!)
*文件名称:Myfun168.c
*问题描述:删除数组元素
*作者:小臣小仁
*完成日期:2017年10月9日
*/
int del(int [],int,int);
int main()
{
int i,n=10;
int a[10]={12,5,41,31,56,41,16,18,25,31};
n=del(a,10,41);
for(i=0;i<n;i++)
printf("%d ",a[i]);
return 0;
}
int del(int a[],int n,int x)
{
int q=0,p=0;
while(q<n)
{
if(a[q]!=x)
{
a[p]=a[q];
p++;
}
q++;
}
return p;
}
之前打了个错误代码,只能覆盖一个数,其他相同它覆盖不了,希望跟我一样的小白不要入坑,代码如下
#include <stdio.h>
#include <stdlib.h>
#define N 50
/*
*csdn学院--2016级
*目的:让代码见证成长(作为一个初学的菜鸟,如
*大家有发现错误,欢迎指正!)
*文件名称:Myfun168.c
*问题描述:删除数组元素
*作者:小臣小仁
*完成日期:2017年10月7日
*/
int del(int[],int,int);
int main()
{
int i,n;
int a
={1,45,2,7,3,3,14,77,23,46};
n=del(a,10,3);
for(i=0;i<n;i++)
printf(" %d",a[i]);
return 0;
}
int del(int a[],int n,int x)
{
int i,j;
for(i=0;i<n;i++)
if(a[i]==x)
break;
for(j=i;j<n;j++)
a[j]=a[j+1];
return --n;
}
输出结果
心得体会:
作为一个大学二的菜鸟,开始慢慢前进,多多少少感到有收获,由于水平有限,多多少少有错,望包涵
相关文章推荐
- 提高篇第二十六讲项目2 - 删除数组元素并升序排列
- 提高项目24-删除数组元素
- 提高第26课时,实践2,项目2 - 删除数组元素
- 第二十六讲项目2 - 删除呈升序排列数组元素
- 提高项目30.6-删除字符串前面的空格
- 第26-27章项目2-删除数组元素(二.数组升序)
- 提高篇十六讲项目1.1——创建整型数组改变数组元素的值,令所有的数据加倍,输出改变后的值。
- 提高篇项目1.3—随机数创建一个长度为16的整型数组a并初始化,删除数组中所有能被3整除的元素
- 第二十六讲 项目 数组与函数的应用(插入与删除数组/链表中的数)
- 提高项目30.3-删除特定字符
- RossWeatherMap天气地图项目中踩的雷(一):Viewpager动态删除Fragment
- myeclipse中删除derby、设置默认项目字符集
- 市委组织部考核项目——动态添加,删除行
- 如何将 iOS 项目的编译速度提高5倍
- tomcat启动时出现以前删除的项目,导致无法启动
- 如何提高项目测试效率
- 一个Web报表项目的性能分析和优化实践(三) :提高Web应用服务器Tomcat的内存配置,并确认配置正确
- gitlab上删除项目
- 提高项目12-数组大折腾
- github如何删除项目