我帮你分析一下
main()
{
int k,p;
int s[]={1,-9,7,2,-10,3};
for(p=0,k=p;p<6;p++)
if(s[p]>s[k]) k=p;
printf("%d",k);
getch();
}
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~上面是你的源程序
##########################
for循环第一次:p=0;k=0;所以:s[0]>s[0]不成立,下一循环。
————————————————for循环第二次:p=1;k=0;所以:s[1]>s[0],不成立,下一循环。
——————————————for循环第三次:p=2;k=0;所以,s[2]>s[0], 成立,k=p=2;
---------------------for循环第四次:p=3;k=2;所以,s[3]>s[2]不成立,下一循环。
………………………………
依次类推,最大值为7,下标为2,所以K值也为2,输出2。
#####################################明白了吗?