#include
#include
#include
void showit(int *p,int m,int n){
int i,j;
for(i=0;ifor(j=0;j printf("%3d",p[i*n+j]);
printf("\n");
}
}
int findmin(int *p,int n){
int i,min=*p;
for(i=1;iif (p[i] return min;
}
int findplace(int *p,int n,int x){
int i;
for(i=0;iif(p[i]==x) return i;
return -1;
}
int main(){
int a[4][5];
int i,j,min,m;
srand((int)time(NULL));
for(i=0;i<4;i++)
for(j=0;j<5;j++)
a[i][j]=rand()%10;
showit((int *)a,4,5); //显示数组
min=findmin((int *)a,5*4);//找出最小值
printf("最小值是%d\n",min);
m=findplace((int *)a,4*5,min);//找出最小值是第几个元素
printf("其第一次出现在第%d行第%d列\n",m/5+1,m%5+1);
}
是的。第n个学生对应的数组下标应该是n-1。
更正下你的语句。这个数组是全部赋值等于0
也就是六行六列等于0
。
为什么加上那个等于0呢?
原因很简单,因为你得寻址啊,要的是值啊,你不复制没有值当然就出错了
include (studio.h
Max a if 1)28@)1
C语言的数组概念的学习,通过for循环输出打印数组