欢迎来到天天文库
浏览记录
ID:46570666
大小:1022.50 KB
页数:61页
时间:2019-11-25
《第七章:数组》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、7.1.1一维数组的定义定义方式:类型说明符数组名[整型常量表达式];例:inta[10];说明:①数组名的命名规则和变量名相同,遵循标识符定名规则。②数组名后的常量表达式用[]括起来。③常量表达式表示元素的个数,即数组长度。例:a[10]表示数组a中包括10个元素,分别为a[0]~a[9]第7章数组7.1一维数组的定义和引用a[0]a[2]a[4]a[6]a[8]a[1]a[3]a[5]a[7]a[9]7.1.2一维数组元素的引用数组必须先定义,然后使用。C语言规定只能逐个引用数组元素而不能一次引用整个数组。引用形式为:数组名[下标]④常量表达式中可以包括常量和符号常量,不能包含变量
2、,即定义时必须确定数组的大小。例:main(){inti,a[10];for(i=0;i<=9;i++)a[i]=i;for(i=0;i<=9;i++)printf("%4d",a[i]);}整型常量或整型表达式(i=9;i>=0;i--)a[i]);(i=0;i<=9;i++)a[9-i]);intn;scanf("%d",&n);inta[n];通过赋值语句给数组元素赋值例:main(){inti,a[10];for(i=0;i<=9,i++)scanf("%d",&a[i]);for(i=0;i<=9;i++)printf("%4d",a[i]);}7.1.3一维数组的初始化可以
3、用赋值语句或输入语句使数组中的元素得到值,但占运行时间,同时也可以使数组在程序运行之前初始化,即在编译期间使之得到初值。通过输入语句给数组元素赋值对数组元素的初始化可以用以下方法实现:⒈在定义数组时,对数组元素赋以初值。如:inta[10]={0,1,2,3,4,5,6,7,8,9};⒉可以只给一部分元素赋值。如:inta[10]={0,1,2,3,4};表示只给前5个元素赋初值,后5个元素自动赋以0值。⒊对static数组不赋初值,系统会对所有元素自动赋以0值。即,如果想使数组a中全部元素值为0,可以这样定义数组:staticinta[5]a[0]a[2]a[4]a[1]a[3]00
4、000等价于inta[5]={0};staticstatic例.用数组来处理求Fibonacci数列问题(求前40项)⒋在对全部数组元素赋初值时,可以不指定数组长度。inta[5]={1,2,3,4,5};inta[]={1,2,3,4,5};1100000000.........f[0]f[1]f[2]f[3]f[4]f[5]f[6]f[7]f[8]f[9].............235813213455staticstaticmain(){inti;staticlongintf[40]={1,1};for(i=2;i<40;i++)f[i]=f[i-2]+f[i-1];for(i
5、=0;i<40;i++){if(i%5==0)printf("");printf("%12ld",f[i]);}}例.从10个整数中把最小的数找出来,并与最前面的数对调,指出最小的数原来的位置。(最小值唯一)1.用数组a存放10个数据。inta[10];2.用j记录最小值的位置。3.交换a[0]与a[j]的值。12-1437276231-3665-2-31j=0j=1j=6j=0;for(i=1;i<=9;i++)if(a[i]6、d",&a[i]);j=0;for(i=1;i<=9;i++)if(a[i]7、k;if(j>4){c[k]=a[i];k++;}}main(){inti,j,k=0,a[8],b[5],c[8];for(i=0;i<=7;i++)scanf("%d",&a[i]);for(i=0;i<=4;i++)scanf("%d",&b[i]);for(i=0;i<=7;i++){for(j=0;j<=4;j++)if(a[i]==b[j])break;if(j>4){c[k]=a[i];k++;}}for(i=0;i
6、d",&a[i]);j=0;for(i=1;i<=9;i++)if(a[i]7、k;if(j>4){c[k]=a[i];k++;}}main(){inti,j,k=0,a[8],b[5],c[8];for(i=0;i<=7;i++)scanf("%d",&a[i]);for(i=0;i<=4;i++)scanf("%d",&b[i]);for(i=0;i<=7;i++){for(j=0;j<=4;j++)if(a[i]==b[j])break;if(j>4){c[k]=a[i];k++;}}for(i=0;i
7、k;if(j>4){c[k]=a[i];k++;}}main(){inti,j,k=0,a[8],b[5],c[8];for(i=0;i<=7;i++)scanf("%d",&a[i]);for(i=0;i<=4;i++)scanf("%d",&b[i]);for(i=0;i<=7;i++){for(j=0;j<=4;j++)if(a[i]==b[j])break;if(j>4){c[k]=a[i];k++;}}for(i=0;i
此文档下载收益归作者所有