计算机二级编程例子(含答案)2.doc
上传人:yy****24 上传时间:2024-09-10 格式:DOC 页数:2 大小:33KB 金币:16 举报 版权申诉
预览加载中,请您耐心等待几秒...

计算机二级编程例子(含答案)2.doc

计算机二级编程例子(含答案)2.doc

预览

在线预览结束,喜欢就下载吧,查找使用更方便

16 金币

下载此文档

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

典型例题1第页共NUMPAGES2页广东海洋大学GuangdongOceanUniversityC语言程序设计技能训练试题(典型例题1))TrainingItem【题目】:有一个已经排好序的数组。现输入一个数,要求按原来的规律将它插入数组中。【问题分析与算法设计】:首先判断此数是否大于最后一个数,然后再考虑插入中间的数的情况,插入后,此元素之后的数,依次后移一个位置。【程序源代码、说明及注释】:#include<stdio.h>voidmain(){inta[11]={1,4,6,9,13,16,19,28,40,100};inttemp1,temp2,number,end,i,j;printf("originalarrayis:\n");for(i=0;i<10;i++)/*将插入新数据前的原数组元素值一一输出*/printf("%5d",a[i]);printf("\n");printf("insertanewnumber:");scanf("%d",&number);/*输入新插入的数据值到number变量中*/end=a[9];if(number>end)a[10]=number;/*将新插入的数据与原数组的最后一个数组元素进行比较,若number较小,则直接将新插入的数据值放到原数组最后一个数组元素的后面*/else/*否则,从原数组第一个元素开始,依次与number进行比较*/{for(i=0;i<10;i++){if(a[i]>number)/*从前往后找,找到第一个大于number值的数组元素a[i]*/{temp1=a[i];/*保存a[i]的值*/a[i]=number;/*将新插入的数据number放在a[i]位置*/for(j=i+1;j<11;j++){temp2=a[j];a[j]=temp1;temp1=temp2;}/*以上for循环的功能是:将number后面的数据依次往后挪移一个位置*/break;}}}for(i=0;i<11;i++)/*将插入新数据后新数组元素的值一一输出*/printf("%6d",a[i]);}