电脑知识|欧美黑人一区二区三区|软件|欧美黑人一级爽快片淫片高清|系统|欧美黑人狂野猛交老妇|数据库|服务器|编程开发|网络运营|知识问答|技术教程文章 - 好吧啦网

您的位置:首頁技術(shù)文章
文章詳情頁

C語言數(shù)組添加和刪除元素的實現(xiàn)

瀏覽:129日期:2022-06-04 16:13:41

數(shù)組不擅長插入(添加)和刪除元素。數(shù)組的優(yōu)點在于它是連續(xù)的,所以查找數(shù)據(jù)速度很快。但這也是它的一個缺點。正因為它是連續(xù)的,所以當(dāng)插入一個元素時,插入點后所有的元素全部都要向后移;而刪除一個元素時,刪除點后所有的元素全部都要向前移。

插入算法

# include <stdio.h>
int main(void)
{
  int a[23] = {1, 5, 66, 8, 55, 9, 1, 32, 5, 65, 4, 8, 5, 15, 64, 156, 1564, 15, 1, 8, 9, 7, 215};
  int b[24]; //用來存放插入數(shù)字后的新數(shù)組, 因為又插入了一個值, 所以長度為24
  int Index; //插入值的下標, Index是“下標”的英文單詞
  int num; //插入的值
  int i; //循環(huán)變量
  printf("請輸入插入值的下標:");
  scanf("%d", &Index);
  printf("請輸入插入的數(shù)值:");
  scanf("%d", &num);
  for (i=0; i<24; ++i)
  {
    if (i < Index)
    {
      b[i] = a[i]; /*循環(huán)變量i小于插入值位置Index時, 每一個元素所放的位置不變*/
    }
    else if (i == Index)
    {  
      b[i] = num; //i等于Index時, 將插入值賦給數(shù)組b
    }
    else
    {
      b[i] = a[i-1]; /*因為插入了一個新的元素, 所以插入位置后的每一個元素所存放的位置都要向后移一位*/
    }
  }
  for (i=0; i<24; ++i)
  {
    printf("%d\x20", b[i]);
  }
  printf("\n");
  return 0;
}

輸出結(jié)果是:
請輸入插入值的下標:10請輸入插入的數(shù)值:22
1 5 66 8 55 9 1 32 5 65 22 4 8 5 15 64 156 1564 15 1 8 9 7 215

刪除算法

# include <stdio.h>
int main(void)
{
  int a[23] = {1, 5, 66, 8, 55, 9, 1, 32, 5, 65, 4, 8, 5, 15, 64, 156, 1564, 15, 1, 8, 9, 7, 215};
  int b[22]; /*用來存放刪除數(shù)字后的新數(shù)組, 因為刪除了一個值, 所以長度為22*/
  int Index; //要刪除的值的下標
  int i; //循環(huán)變量
  printf("請輸入要刪除的值的下標:");
  scanf("%d", &Index);
  for (i=0; i<23; ++i)
  {
    if (i < Index)
    {
      b[i] = a[i]; /*循環(huán)變量i小于插入值位置Index時, 每一個元素所存放的位置不變*/
    }
    else
    {
      b[i] = a[i+1]; /*刪除值后面的元素都往前移一位, 要刪除的值直接被覆蓋*/
    }
  }
  for (i=0; i<22; ++i)
  {
    printf("%d\x20", b[i]); // \x20表示空格
  }
  printf("\n");
  return 0;
}

輸出結(jié)果是:
請輸入要刪除的值的下標:5
1 5 66 8 55 1 32 5 65 4 8 5 15 64 156 1564 15 1 8 9 7 215

實例

37, 49, 51, 61。設(shè)計程序?qū)?shù)組中的數(shù)據(jù)實現(xiàn)一次刪除及插入操作:

利用getchar()函數(shù)接收鍵盤輸入:
● 當(dāng)輸入字符"D"時,接收鍵盤輸入一個數(shù)組中存在的整數(shù)n,并對數(shù)組中存在的該整數(shù)進行刪除,要求刪除后的數(shù)組各元素仍按照從小到大的順序排列。
要求:不使用冒泡法或選擇法實現(xiàn)刪除數(shù)據(jù)后的排序操作。
● 當(dāng)輸入字符"I"時,接收鍵盤輸入一個數(shù)組中不存在的整數(shù)m,并將該整數(shù)m插入到數(shù)組中,要求插入后的數(shù)組各元素仍按照從小到大的順序排列。
要求:不使用冒泡法或選擇法實現(xiàn)插入數(shù)據(jù)后的排序操作。

樣例輸入和輸出:
數(shù)組排序后的結(jié)果為:5, 9, 11, 16, 24, 34, 37, 49, 51, 61

請輸入需要進行的操作(插入"I",刪除"D"):D
請輸入需要刪除的整數(shù):9
刪除后的數(shù)組為:5, 11, 16, 24, 34, 37, 49, 51, 61

請輸入需要進行的操作(插入"I",刪除"D"):I
請輸入需要插入的整數(shù):13
插入后的數(shù)組為:5, 11, 13, 16, 24, 34, 37, 49, 51, 61

#include <stdio.h>

int main()
{
 int a[10] = { 5, 9, 11, 16, 24, 34, 37, 49, 51, 61 };
 int i = 0,n=0,k=0;
 char get;
 
 for (i = 0; i < 10; i++)
  printf("%3d", a[i]);
 printf("\n");
 printf("請輸入需要進行的操作(插入‘I",刪除‘D")\n");
 
 get = getchar();
 getchar();
 
 if (get=="D")
 {
  printf("請輸入要刪除的整數(shù):\n");
  n = getchar(); 
  getchar();
  n -= 48;
  for (i = 0; i < 10; i++)
  {
  if (a[i]==n)
  {
   for (; i < 10; i++)
   {
    a[i] = a[i + 1];
   }
   a[9] = 0;
   break;
  }
  }
 for (i = 0; i < 9; i++)
  printf("%3d", a[i]);
 printf("\n");
 }
 
 printf("請輸入需要進行的操作(插入‘I",刪除‘D")\n");
 get = getchar();
 getchar();
 
 if (get="I")
 {
 printf("請輸入要插入的整數(shù):\n");
 scanf_s("%d", &n); //注意陷阱,不能用getchar(),因為13其實是兩個字符,回車之后,n只吸收了‘1",所以只能用scanf_s().
 for (i = 0; i < 10; i++)
 {
  if (a[i] < n&&n < a[i + 1])
  {
  k = i;
  for (i = 8; i > k; i--)
  {
   a[i+1] = a[i];
  }
  a[k+1] = n;
  break;
  }
 }
 for (i = 0; i < 10; i++)
  printf("%3d", a[i]);
 }
 return 0;
}

到此這篇關(guān)于C語言數(shù)組添加和刪除元素的實現(xiàn)的文章就介紹到這了,更多相關(guān)C語言數(shù)組添加和刪除元素內(nèi)容請搜索以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持!

標簽: ASP
主站蜘蛛池模板: 小程序开发公司-小程序制作-微信小程序开发-小程序定制-咏熠软件 | 彭世修脚_修脚加盟_彭世修脚加盟_彭世足疗加盟_足疗加盟连锁_彭世修脚技术培训_彭世足疗 | 雷达液位计_超声波风速风向仪_雨量传感器_辐射传感器-山东风途物联网 | 小区健身器材_户外健身器材_室外健身器材_公园健身路径-沧州浩然体育器材有限公司 | 中式装修设计_全屋定制家具_实木仿古门窗花格厂家-喜迎门 | 污水处理设备维修_污水处理工程改造_机械格栅_过滤设备_气浮设备_刮吸泥机_污泥浓缩罐_污水处理设备_污水处理工程-北京龙泉新禹科技有限公司 | 阀门智能定位器_电液动执行器_气动执行机构-赫尔法流体技术(北京)有限公司 | 神马影院-实时更新秒播 | 超声骨密度仪,双能X射线骨密度仪【起草单位】,骨密度检测仪厂家 - 品源医疗(江苏)有限公司 | J.S.Bach 圣巴赫_高端背景音乐系统_官网 | 英国公司注册-新加坡公司注册-香港公司开户-离岸公司账户-杭州商标注册-杭州优创企业 | 复合肥,化肥厂,复合肥批发,化肥代理,复合肥品牌-红四方 | RO反渗透设备_厂家_价格_河南郑州江宇环保科技有限公司 | 电动液压篮球架_圆管地埋式篮球架_移动平箱篮球架-强森体育 | 蒸汽热收缩机_蒸汽发生器_塑封机_包膜机_封切收缩机_热收缩包装机_真空机_全自动打包机_捆扎机_封箱机-东莞市中堡智能科技有限公司 | PVC快速门-硬质快速门-洁净室快速门品牌厂家-苏州西朗门业 | 清水混凝土修复_混凝土色差修复剂_混凝土色差调整剂_清水混凝土色差修复_河南天工 | 智能楼宇-楼宇自控系统-楼宇智能化-楼宇自动化-三水智能化 | COD分析仪|氨氮分析仪|总磷分析仪|总氮分析仪-圣湖Greatlake | 南昌旅行社_南昌国际旅行社_南昌国旅在线 | 煤矿支护网片_矿用勾花菱形网_缝管式_管缝式锚杆-邯郸市永年区志涛工矿配件有限公司 | 火锅加盟_四川成都火锅店加盟_中国火锅连锁品牌十强_朝天门火锅【官网】 | 丝杆升降机-不锈钢丝杆升降机-非标定制丝杆升降机厂家-山东鑫光减速机有限公司 | 播音主持培训-中影人教育播音主持学苑「官网」-中国艺考界的贵族学校 | 森旺-A级防火板_石英纤维板_不燃抗菌板装饰板_医疗板 | YJLV22铝芯铠装电缆-MYPTJ矿用高压橡套电缆-天津市电缆总厂 | 步进驱动器「一体化」步进电机品牌厂家-一体式步进驱动 | 手持式线材张力计-套帽式风量罩-深圳市欧亚精密仪器有限公司 | 石膏基自流平砂浆厂家-高强石膏基保温隔声自流平-轻质抹灰石膏粉砂浆批发-永康市汇利建设有限公司 | 济南ISO9000认证咨询代理公司,ISO9001认证,CMA实验室认证,ISO/TS16949认证,服务体系认证,资产管理体系认证,SC食品生产许可证- 济南创远企业管理咨询有限公司 郑州电线电缆厂家-防火|低压|低烟无卤电缆-河南明星电缆 | 菏泽知彼网络科技有限公司 | 砂石生产线_石料生产线设备_制砂生产线设备价格_生产厂家-河南中誉鼎力智能装备有限公司 | 科研ELISA试剂盒,酶联免疫检测试剂盒,昆虫_植物ELISA酶免试剂盒-上海仁捷生物科技有限公司 | DNA亲子鉴定_DNA基因检测中心官方预约平台-严选好基因网 | 曙光腾达官网-天津脚手架租赁-木板架出租-移动门式脚手架租赁「免费搭设」 | 防爆电机生产厂家,YBK3电动机,YBX3系列防爆电机,YBX4节防爆电机--河南省南洋防爆电机有限公司 | 翰香原枣子坊加盟费多少钱-正宗枣核糕配方培训利润高飘香 | 北京发电车出租-发电机租赁公司-柴油发电机厂家 - 北京明旺盛安机电设备有限公司 | 布袋除尘器-单机除尘器-脉冲除尘器-泊头市兴天环保设备有限公司 布袋除尘器|除尘器设备|除尘布袋|除尘设备_诺和环保设备 | 礼仪庆典公司,礼仪策划公司,庆典公司,演出公司,演艺公司,年会酒会,生日寿宴,动工仪式,开工仪式,奠基典礼,商务会议,竣工落成,乔迁揭牌,签约启动-东莞市开门红文化传媒有限公司 | 运动木地板厂家,篮球场木地板品牌,体育场馆木地板安装 - 欧氏运动地板 |