main()
{
int row,col,max,b[3][4]
for(row=0row<3row++)
{
for(col=0col<4col++)
//scanf("%d",&b[3][4])这里错了
scanf("%d",&b[row][col])
}
max=b[0][0]
max_r=max_c=0//默认
for(row=0row<3row++)
{for(col=0col<4col++)
{
if(max<b[row][col]){
max=b[row][col]
max_r=row//记录最大行下标
max_c=col//记录最大列下标
}
}
}
printf("%d\n",max)
printf("%d\n",max_r)
printf("%d\n",max_c)
}
假如:int
a[30]
int
b=15
a[b]=10//b就是下标变量,
a[3]=111
//3就是下标
//a[0],a[1],a[2]不能当作下标变量使用,他们是数组名,不是一个单纯的下标变量!“
就是说不能
a[a[4]]=100这样用
大概是这个意思
我没试过。。。。
15由于函数功能是返回最大的下标。而返回值为k,所以k将被赋值为最大下标。
需要填的位置,判断为if(s[p]>s[k]) 也就是发现了比s[k]更大的。这样需要把当前k值替换为p,即k=p
注意分号。
16
fun是一个递归函数。
要计算fun(9)
其实就是9-fun(7)
而fun(7) = 7-fun(5)
fun(5) = 5-fun(3)
fun(3) = 3-fun(1)
fun(1)直接返回3
于是
fun(3) = 3-fun(1)=0
fun(5) = 5-fun(3)=5
fun(7) = 7-fun(5)=2
fun(9)=9-fun(7)=7
输出7