C语言编程,数组问题

2024-12-31 15:15:45
推荐回答(5个)
回答1:

#include 
#include 
#include 
void showit(int *p,int m,int n){
int i,j;
for(i=0;i for(j=0;j printf("%3d",p[i*n+j]);
printf("\n");
}
}
int findmin(int *p,int n){
int i,min=*p;
for(i=1;i if (p[i] return min;
}
int findplace(int *p,int n,int x){
int i;
for(i=0;i if(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);
}

回答2:

是的。第n个学生对应的数组下标应该是n-1。

回答3:

更正下你的语句。这个数组是全部赋值等于0
也就是六行六列等于0

为什么加上那个等于0呢?
原因很简单,因为你得寻址啊,要的是值啊,你不复制没有值当然就出错了

回答4:

include (studio.h
Max a if 1)28@)1

回答5:

C语言的数组概念的学习,通过for循环输出打印数组