如果您无法下载资料,请参考说明:
1、部分资料下载需要金币,请确保您的账户上有足够的金币
2、已购买过的文档,再次下载不重复扣费
3、资料包下载后请先用软件解压,在使用对应软件打开
C语言程序设计【例5.6】用户从键盘输入20个数,求它们的和并输出结果。第6章数组6.1一维数组6.1.2一维数组元素的引用例6.1使数组元素a[0]~a[9]的值为0~9,然后逆序输出voidmain(){inti,a[10];for(i=0;i<=9;i++)a[i]=i;for(i=9;i>=0;i--)printf(“%d”,a[i]);}6.1.3一维数组的初始化6.1.4一维数组应用举例参考程序如下:例6.3用选择法对a数组的10个数组元素从小到大进行排序。3#include<stdio.h>voidmain(){inti,j,m,a[10];for(i=0;i<10;i++)scanf(“%d”,&a[i]);/*从键盘输入数组元素的值*/for(i=0;i<9;i++)/*排序*/for(j=i+1;j<10;j++)if(a[j]>a[i]){m=a[j];a[j]=a[i];a[i]=m;}/*交换*/for(i=0;i<10;i++)printf("%5d",a[i]);/*输出数组元素*/}例6.4用冒泡法对a数组的10个数组元素从小到大进行排序。3#include<stdio.h>voidmain(){inti,j,m,a[10];for(i=0;i<10;i++)scanf("%d",&a[i]);/*给数组元素赋值*/for(i=0;i<9;i++)/*排序*/for(j=0;j<10-i;j++)if(a[j+1]<a[j]){m=a[j];a[j]=a[j+1];a[j+1]=m;}/*交换*/for(i=0;i<10;i++)printf("%5d",a[i]);/*输出数组元素*/}6.2多维数组图6-4二维数组在内存中的存储形式说明用法与一维数组元素类似注意避免下标越界intb[3][4];如b[1][5]b[2][4];b[0]——b[0][0],b[0][1],b[0][2],b[0][3]b[1]——b[1][0],b[1][1],b[1][2],b[1][3]b[2]——b[2][0],b[2][1],b[2][2],b[2][3]6.2.3二维数组的初始化找出三行三列的二维数组中最大元素及其所在的行和列。要求:1)数据元素的值从键盘读入;2)找出最大元素及其所在的行和列;3)显示最大元素及其所在的行和列例6.5求已知矩阵的转置矩阵。参考代码段:例6.7在二维数组a中选出各行最大的元素组成一个一维数组b。6.3字符数组6.3.2字符数组的初始化注意:用字符串初始化时,数组的长度可以省略,花括号也可以省略,存储长度为:“字符串中字符个数+1”。字符串结束标志‘\0’占一个长度。6.3.3字符串与字符串结束标志6.3.4字符数组的引用与输入输出6.3.5字符串处理函数(包含头文件string.h)6.3.6字符数组使用举例部分代码段例6.9编写程序,实现函数strcpy的功能。例6.10编写程序,求出3个字符串中的最大者。参考代码段:6.4数组应用举例scanf("%d",&n);while(n>0){switch(n%10){case0:str[count++]='0';break;case1:str[count++]='1';break;case2:str[count++]='2';break;case3:str[count++]='3';break;case4:str[count++]='4';break;case5:str[count++]='5';break;case6:str[count++]='6';break;case7:str[count++]='7';break;case8:str[count++]='8';break;case9:str[count++]='9';break;}n=n/10;}printf("\nConverttheLONGnumbertoSTRING:");for(i=0;i<count/2;i++){temp=str[i];str[i]=str[count-i-1];str[count-i-1]=temp;}str[count]='\0';puts(str);例6.12求4×4的二维数组中值最大的元素,以及它所在的行号与列号,同时求出主、次对角线元素的和。参考代码段例6.13】有一个已经排好序的数组。现输入一个数,要求按原来的规律将它插入到数组中。scanf("%d",&number);for(i=9;i>0;i--)if(number>a[i])breakfor(j=9;j>I;j--)