//习题4
#include"stdio.h"
void main()
{int a[10]={3,6,12,25};
int size=4;
int x,i;
int t=size;//代表元素插入到数组当前元素的最后
scanf("%d",&x);
//定位
for(i=0;i<size;'i++)//单元测试
{if(x<a[i])
{t=i;brek;
}
}
printf("%d",t);
//移动元素
for(i=size,i>=t+1;i–)
{a[i]=a[i-1];
}
//插入元素
a[t]=x;//array index out of bounds
size++;
printf("\n");
for(i=0;i<size;'i++)
{printf("%d",a[i]);
}
}
习题4
{int a[10]={3,6,12,25};
int size=4;
int x,i,j;
scanf("%d",&x);
//定位
for(i=0;i<size;i++)
{if(x<a[i])
{
break;//i保存了插入x的位置
}
}
//循环结束的时候,i保存插入x的位置,如果需要插入在最后,则循环正常结束,i=size
//移动元数
for(j=size;j>=i+1;j–)
{a[j]=a[j-1];
}
//插入元素
a[j=x];//array index out of bounds
size++;
printf("\n");
for(i=0;i<size;'i++)
{printf("%d",a[i]);
}
}
//习题5
#include"stdio.h"
void main()
{int a[10]={3,6,12,25,30};
int size=5;
int t,i;
for(i=0;i<size/2;i++)
{t=a[i];a[i]=a[size-1];a[size-1]=t;
}
for(i=0;i<size;i++)
printf("%d",a[i]);
}
//习题5
{int a[10]={3,6,12,25,30};
int size=5;
int t,i,t;
for(i=0,j=size-1;i<j;i++,j–)
{t=a[i];a[i]=a[j];a[j]=t;
}
for(i=0;i<size;i++)
printf("%d",a[i]);
}
定义 引用二维数组
类型说明符 数组名[常量表达式] [常量表达式]
数组名【下标】【下标】
//第一下标代表行
第二个代表列
第一位长度可以不指定,但第二维长度不能省
系统会根据总个数和第二为的长度算出第一维的长度