int a[5][6];
doube db[10][10];
char [256][256];
bool vis[1000][1000];
1 #include <stdio.h> 2 3 int main(){ 4 int a[5][6]={{3,1,2},{8,4},{},{1,2,3,4,5}}; 5 int i,j; 6 for(i=0;i<5;i++) 7 { 8 for(j=0;j<6;j++) 9 { 10 printf("%d",a[i][j]); 11 12 } 13 printf("\n"); 14 } 15 return 0; 16 17 }
1 #include <stdio.h> 2 3 int main(){ 4 5 int a[3][3],b[3][3]; 6 int i1,i2,i3; 7 int j1,j2,j3; 8 9 for(i1=0;i1<3;i1++){ 10 for( j1=0;j1<3;j1++){ 11 scanf("%d",&a[i1][j1]); 12 } 13 } 14 for(i2=0;i2<3;i2++){ 15 for( j2=0;j2<3;j2++){ 16 scanf("%d",&b[i2][j2]); 17 } 18 } 19 20 int c[3][3]; 21 for(i3=0;i3<3;i3++){ 22 for( j3=0;j3<3;j3++){ 23 c[i3][j3]=a[i3][j3]+b[i3][j3]; 24 25 } 26 } 27 int i4,j4; 28 for(i4=0;i4<3;i4++){ 29 for(j4=0;j4<3;j4++){ 30 printf("%d",c[i4][j4]); 31 } 32 printf("\n"); 33 } 34 return 0; 35 }
注:如果数组大小较大(10^6级别)需要将其定义在主函数外面,否则程序异常退出。 函数内部申请的局部变量来自系统栈,允许申请的空间较小;函数外部的申请的全局变量来自静态存储区,允许申请的空间较大。
1 #include <stdio.h> 2 int a[1000000]; 3 4 int main(){ 5 int i; 6 for(i=0;i<1000000;i++){ 7 a[i]=i; 8 } 9 for(i=0;i<1000000;i++){ 10 printf("%d",a[i]); 11 } 12 return 0; 13 14 }
1 #include <stdio.h> 2 3 4 int main(){ 5 int a[3][3][3]; 6 int i,j,k; 7 for(i=0;i<3;i++){ 8 for(j=0;j<3;j++){ 9 for( k=0;k<3;k++){ 10 scanf("%d",&a[i][j][k]); 11 a[i][j][k]++; //自增 12 13 14 15 } 16 17 } 18 19 } 20 for(i=0;i<3;i++){ 21 for(j=0;j<3;j++){ 22 for( 23 k=0;k<3;k++){ 24 printf("%d",&a[i][j][k]); 25 printf("\n"); 26 } 27 } 28 } 29 return 0; 30 }
1 #include <stdio.h> 2 #include <string.h> 3 /*memset头文件string.h*/ 4 /*memset按字节赋值0或-1;要对数组赋值其他数字(如1)使用fill函数*/ 5 /*memset执行速度快*/ 6 int main(){ 7 int a[5]={1,2,3,4,5}; 8 9 //赋初值0 10 memset (a,0,sizeof(a)); 11 int i; 12 for(i=0;i<5;i++){ 13 printf("%d",a[i]); 14 } 15 printf("\n"); 16 17 //赋初值-1 18 memset(a,-1,sizeof(a)); 19 20 for(i=0;i<5;i++){ 21 printf("%d",a[i]); 22 23 } 24 printf("\n"); 25 return 0; 26 }