网站大量收购独家精品文档,联系QQ:2885784924

C语言第七章试卷.ppt

  1. 1、本文档共71页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
NO.7 章 数组 ;数组 在程序设计中,为了处理方便,把具有相同类型的若干变量按有序的形式组织起来。这些按序排列的同类数据元素的集合称为数组。 ;合法标识符;①数组名遵循标识符取名规则 ②用方括号,且其中常量表达式表示元素个数, 下标总是从0开始。 若定义a[n],则下标从0~n-1是合法的。 △但C语言中对下标不作合法性检查,所以允许在使用中下标越界。这种情况须程序员自我检查。 ③不可使用变量,C语言中不可用可调数组。 ④使用时,只能逐个使用而不能一次使用整个数组。 即:只能对数组元素操作 ;例 int i=15; int data[i]; ;例 int a[10]; float i=3; a[i]=10;;二、一维数组的初始化;2.部分元素初始化。 int fibonacci[20]={1,1}; 只初始化一部分的,未初始化的部分自动赋以0值。 ;例题3:把由键盘输入的数列按相反的顺序输出。;main() { int a[11]={1,4,6,9,13,16,19,28,40,100}; int temp1,temp2,number,end,i,j; printf(“please input a data:\n); scanf( %d,number); end=a[9]; if (numberend) a[10]=number; else ; { for (i=0;i10;i++) { if (a[i]number) { temp1=a[i]; a[i]=number; for (j=i+1;j11;j++) { temp2=a[j]; a[j]=temp1; temp1=temp2; } break; } } } for (i=0;i11;i++) printf(%6d,a[i]); };§7.2 二维数组的定义和使用;问题:一个班有50个学生,现在编写程序,输入50个人的10门课的成绩,输出平均分,最高分,最低分,按成绩由高到低输出人名和分数?;一、二维数组的定义;二维数组是按行存放的, 即最右边的下标变化最快。 a[0][0] a[0][1] a[0][2] a[0][3] a[1][0] a[1][1] a[1][2] a[1][3] a[2][0] a[2][1] a[2][2] a[2][3] △注意:不能写成int a[3,4]; ;int a[3][2];7.2.2 2维数组元素的引用;3.对基本数据类型的变量所能进行的操作,也都适合于相同数据类型的2维数组元素。 ;7.2.3 2维数组元素的初始化;2.按2维数组在内存中的排列顺序给各元素赋初值 数据类型 数组名[行常量表达式][列常量表达式] ={初值表}; 赋值规则:按2维数组在内存中的排列顺序,将初值表中的数据,依次赋给各元素。;3.部分元素初始化,未赋初值的自动为0。 int a[3][4]={{1},{0,6},{0,0,11}}; 4. 对中间某行不赋值 int a[3][4]={{1},{},{9}}; ;二维数组和多维数组;[案例] 给一个2*3的2维数组各元素赋值,并输出全部元素的值。 #define Row 2 #define Col 3 #include stdio.h main() { int i, j, array[Row][Col]; for(i=0; iRow; i++) /*外循环:控制2维数组的行*/ for(j=0; jCol; j++) /*内循环:控制2维数组的列*/ {printf(please input array[%2d][%2d]:,i,j); scanf(%d,array[i][j]); /*输入a[i][j]的值*

文档评论(0)

希望之星 + 关注
实名认证
内容提供者

我是一名原创力文库的爱好者!从事自由职业!

1亿VIP精品文档

相关文档