Chinaunix首页 | 论坛 | 博客
  • 博客访问: 28008
  • 博文数量: 43
  • 博客积分: 20
  • 博客等级: 民兵
  • 技术积分: 40
  • 用 户 组: 普通用户
  • 注册时间: 2010-07-06 11:27
文章分类

全部博文(43)

文章存档

2014年(43)

我的朋友
最近访客

分类: C/C++

2014-09-25 15:49:45

原文地址:数组的插入和删除 作者:piaoyizu

////////////////////////////////////////////////////////////
//数组的顺序(降序排序)模块//////
///////////////////////////////////////////////////////////
/*
#include
#define n 100
main(){
int a[n],i,j,t;
int k;
printf("请输入数组大小:");
scanf("%d",&k);
for(i=0;iprintf("请输入a[%d]元素的值:",i);
scanf("%d",&a
);}
for(i=0;i    for(j=0;j<=k-i-1;j++){
         if(a[j]            t=a[j];
            a[j]=a[j+1];
            a[j+1]=t;}
    }
 
}
printf("降序排序后的顺序为:\n");
for(i=0;i);}
}*/

/////////////////////////////////////////////////////
//数组元素查找模块///////////////////
/////////////////////////////////////////////////////
必须考虑问题:重复的元素!
/*#include
main(){
  int i,j, k;
  int a[50];
  int search;
printf("请输入数组长度:");
scanf("%d",&k);
for(i=0;iprintf("请输入a[%d]的值:",i);
scanf("%d",&a
);}

printf("请输入您要查找的数:");
scanf("%d",&search);
for(i=0;i     if (search==a
){break;}

}
for(i=0;iif (search==a)
    if(iprintf("你所要找的数在第%d位\n",i+1);
else
printf("很抱歉,没有您要找的数!");
}
}*/

/////////////////////////////////////////////////////////////////////
//元素的插入模块!//////////////////////////////////
////////////////////////////////////////////////////////////////////
必须考虑问题:插入后的排序
/*#include
#define n 100
main(){
int a[n],i,j,l,t;
int k;
int in;
printf("请输入数组大小:");
scanf("%d",&k);
for(i=0;iprintf("请输入a[%d]元素的值:",i);
scanf("%d",&a
);}
for(i=0;ifor(j=0;j<=k-i-1;j++){
  if(a[j]      t=a[j];
      a[j]=a[j+1];
      a[j+1]=t;}
}
 
}
printf("降序排序后的顺序为:\n");
for(i=0;i);}
printf("请输入要插入的元素");
scanf("%d",&in);
for(i=0;i{
  if(in>a
)break;}
for(l=k;l>i;l--)//循环到i的地方停止搜索,找到位置,然后插入,然后后面的元素后移
{a[l]=a[l-1];}
a
=in;//插入元素in在正确的位置
printf("\n插入的数组元素是:%d\n",in);
printf("重新排序后的元素顺序是:");
for(i=0;i{
printf("%d   ",a
);

}
printf("\n");

}*/
////////////////////////////////////////////////////////
/////元素删除模块///////////////////////////
////////////////////////////////////////////////////////
必须考虑问题:删除相同的元素
/*#include
#define n 100
main(){
int a[n],i,j,t;
int m=0;
int k;
int d;//要删除的元素!
char c;//接受用户输入字符!
printf("请输入数组大小:");
scanf("%d",&k);
for(i=0;iprintf("请输入a[%d]元素的值:",i);
scanf("%d",&a
);}
for(i=0;ifor(j=0;j<=k-i-1;j++){
  if(a[j]       t=a[j];
       a[j]=a[j+1];
       a[j+1]=t;}
}
 
}
printf("降序排序后的顺序为:\n");
for(i=0;i);}
printf("请输入要删除的元素:");
scanf("%d",&d);
m=0;
for(i=0;i{
  if (d==a
)
{

for(j=i;jm=m+1;
--i;
 }
 }
  printf("重新排序后的顺序是:\n");
  for(i=0;i  printf("%d ",a
);
}

*/

阅读(154) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~