若有说明:int a[][3]={1,2,3,4,5,6,7}则数组a第一维的大小是3。
int a[][]:第一个中括号表示有此二维数组有几行,第二个表示有几列。
故int a[][3]={1,2,3,4,5,6,7}说明此数组有n行,3列;也就是说每行有三个元素,所以第一行有1,2,3 这三个元素,第二行有4,5,6三个元素,第三行有7这个元素,不足的两个元素由0来补足。
对数组进行初始化,要么两个维度都不写,由赋值的数组确定,或者第二维可以不写,第一维要写,再由赋值数组确定。
数组中的下标是从 0 开始的(而不是 1)。那么,如何通过下标表示每个数组元素的呢?通过“数组名[下标]”的方式。例如“int a[5]”表示定义了有 5 个元素的数组 a,这 5 个元素分别为 a[0]、a[1]、a[2]、a[3]、a[4]。其中 a[0]、a[1]、a[2]、a[3]、a[4] 分别表示这 5 个元素的变量名。
如果从 1 开始,那么数组的第 5 个元素就是 a[5],而定义数组时是 int a[5],两个都是 a[5] 就容易产生混淆。而下标从 0 开始就不存在这个问题了!所以定义一个数组 a[n],那么这个数组中元素最大的下标是 n–1;而元素 a[i] 表示数组 a 中第 i+1 个元素。
另外,方括号中的常量表达式可以是“数字常量表达式”,也可以是“符号常量表达式”。但不管是什么表达式,必须是常量,绝对不能是变量。
C 语言不允许对数组的长度进行动态定义,换句话说,数组的大小不依赖程序运行过程中变量的值。非通常的情况为动态内存分配,此种情况下数组的长度就可以动态定义。
扩展资料:数组特点
1、数组是相同数据类型的元素的集合。
2、数组中的各元素的存储是有先后顺序的,它们在内存中按照这个先后顺序连续存放在一起。
3、数组元素用整个数组的名字和它自己在数组中的顺序位置来表示。例如,a[0]表示名字为a的数组中的第一个元素,a[1]代表数组a的第二个元素,以此类推。
参考资料来源:百度百科-数组
理论上,c语言数组最大的大小没有限制,因为它用的是 虚拟存储。对于写程序而言,例如要写下标,那么受 unsigned int 最大值的限制,只能用到十六进制 0xffffffff, 十进制4G多一点。
具体程序能获取多大,就很难说,有时编译可以通过,运行时出错。你也可以用 malloc 动态分配请求,看分配是否成功或失败。
对一般程序而言,数组长度通常够用了。
main() {int a[10],b[10],i,j=0,k=0,e=0 for(i=0i<10i++) scanf("%d",&a[i]) printf("\n") for(i=0i<10i++) scanf("%d",&b[i]) printf("\n") for(i=0i<10i++) {if(a[i]>b[i]) j++ else if(a[i]b %d times\na#include
int main(){
int numbers[10] = { 10,2,3,4,5,6,9,8,7,1 }
int a,b, text, hello
for(a=0a<10-1a=a+1) { //在这里进行比较的开始的代码
hello = 1 //假如剩下的元素已经被排序好了,然后接着进行下面的比较
for(b=0b<10-1-ib=b+1){
if(numbers[b] >numbers[b+1]){
text= numbers[b]
numbers[b] = numbers[b+1]
numbers[b+1] = text
hello= 0
}
}
if(hello) break
}
for(a=0a<10a=a+1){
printf("%d ", numbers[a])
}
printf("\n")
return 0
}
扩展资料:
C语言中数组元素大小的相关排序规则:
一、首先需要对数组中的元素进行排列,默认是以字符串的规则进行从小到大排序;可接收一个参数:自定义的规则相关排序。参数的具体要求如下:
1、参数首先必须是一个函数;
2、函数必须有一个明确的返回值;
3、返回值必须是number类型,但不可以是NaN。
二、排序中的具体规则:
1、首先每次从数组中挑选出两个元素传入函数中,进行比较,直到所有进行排列的元素都被挑选完毕以后就不要再进行挑选;
2、如果返回值是一个正数,就交换这彼此的位置,实现大小的正确排列;
3、如果返回值是一个负数或0,此时说明大小位置的顺序是正确的,此时就不需要交换彼此的位置。
4、默认同一字符的全角字符看做半角字符。不区分同一个字符(如日文的片假字)的半角与全角状态。相同元素,维持原序,默认区分字母大小写,同一个字符小写在前,大写在后。
注意:对数组的元素进行排序需要不断比较两个数字的大小,10个元素排序一共需要比较9次,直到所有的元素被都完完全全地被比较一次。