C语言实验报告2014110637C04.docxVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
C语言实验报告2014110637C04

实验编号: 04 四川师大 实验报告 2016 年 月 日计算机科学学院 级 6 班 实验名称: 数组程序设计 _姓名:_仁青拉初______ 学号:2014110637 指导老师:_刘洪_ 实验成绩:_____实验四 数组程序设计 实验( 验证性 综合性 实验 4学时)1、目的要求:(1)掌握一维和二维数组的使用技巧。(2)编写实验报告。2、实验内容(参考实验指导书):(1)从键盘输入一个长度为N(比如10)的整型数组,而后将数组中小于零的元素移动到数组的前端,大于零的元素移到数组的后端,等于零的元素留在数组中间。比如原来数组为:2 -5 -89 75 0 -89 0 93 48 0,经过处理后的数组为:-5 -89 -89 0 0 0 75 93 48 2。由于不要求数组有序,所以不允许用排序方法。提示:1)输入N个数据,构建数组。2)按照要求确定数据的位置,需要注意循环条件的确定、0数据元素往中间推的实现过程以及数组处理的方向。(2)设数组a的定义如下:int a[20] = {2,4,6,8,10,12,14,16}; 已存入数组中的数据值已经按由小到大的顺序存放,现从键盘输入一个数据,把它插入到数组中,要求插入新数据以后,数组数据仍然保持有序。请编写一个程序实现上述功能。提示:1)定义整型数组并初始化。2)从键盘输入一个数据。3)将该数据插入到数组中,由于要保证插入的数组仍然有序,所以需要查找插入的位置。4)输出插入数据以后的数组。(3)写一个3 x 5矩阵的转置程序,输出其原矩阵的值和转置以后的结果。提示:1)定义一个二维数组及相关变量。2)对二维数组赋值,可以由键盘输入,也可以通过其他方式赋值。3)输出转置前的二维数组。4)对二维数组中的值进行转置。5)输出转置后的二维数组中的值。(4)编程实现随机产生10个位于区间[100 200]互不相等的整数,并将其按降序排序和输出。实验主要流程、基本操作或核心代码、算法片段(该部分如不够填写,请另加附页)#includestdio.h main() { int N,i,end=0; printf(输入数组大小:);scanf(%d,N); int a[N]; int b[N]; int j=0; int k =0; int m=N-1; for(i=0;iN;i++){ printf(输入数组元素:); scanf(%d,a[i]); } for(i=0;iN;i++){ if(a[i]0){ b[j++]=a[i]; k++;} if(a[i]0){ b[m--]=a[i]; end=m; } } for(i=k;iend;i++){ b[i]=0; } for(j=0;jN;j++) { printf(%d ,b[j]);} }(2)设数组a的定义如下:int a[20] = {2,4,6,8,10,12,14,16}; 已存入数组中的数据值已经按由小到大的顺序存放,现从键盘输入一个数据,把它插入到数组中,要求插入新数据以后,数组数据仍然保持有序。请编写一个程序实现上述功能。提示:1)定义整型数组并初始化。2)从键盘输入一个数据。3)将该数据插入到数组中,由于要保证插入的数组仍然有序,所以需要查找插入的位置。4)输出插入数据以后的数组。#include stdio.hmain(){int a[20]={2,4,6,8,10,12,14,16};int n,i,k; printf(输入一个数:) ;scanf(%d,n);for(i=0;i8;i++){if(na[i])break;}k = i;for(i=9;i=k;i--){a[i+1]=a[i];} a[k]=n;printf(排序好后\n);for(i=0;i9;i++){ printf(%4d\n,a[i]);} }(3)写一个3 x 5矩阵的转置程序,输出其原矩阵的值和转置以后的结果。提示:1)定义一个二维数组及相关变量。2)对二维数组赋值,可以由键盘输入,也可以通过其他方式赋值。3)输出转置前的二维数组。4)对二维数组中的值进行转置。5)输出转置后的二维数组中的值。#includestdio.hmain(){int a[3][5]={1,2,3,4,5,6,7,8,9,10,11,12,13,14,15};int b[5][3];int i,j;for(i=0;i5;i++){for(j=0;j3;j++){b[i][j]=a[j][i];printf(%d\n,b[i][j]);}printf(\n);}return 0;}(4)编程实现随机产生10个位于区间[100 200]互不相等的整数,并将其按降序排序和输出。#include st

文档评论(0)

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档