标题:二维数组问题,大家帮忙看看
取消只看楼主
张朝成
Rank: 4
等 级:业余侠客
帖 子:149
专家分:265
注 册:2012-3-22
结帖率:100%
已结贴  问题点数:2 回复次数:0 
二维数组问题,大家帮忙看看
#include <stdio.h>
void main()
{
    int a[3][4],*max,(*p)[4],*y,sum=0,*min,t,i;
    printf("please input 12 data:\n");
    for(max=min=*a,y=*a;y<*(a+3);y++)
    {
        scanf("%d,",y);
    sum=sum+*y;
    if(*max<*y)
        max=y;
    if(*min>*y)
        min=y;
    }
    printf("总和=%d\n所有元素的最大值=%d\n所有元素的最小值=%d\n",sum,*max,*min);
for(p=a,i=1;p<a+3;p++,i++)
{
for(sum=0,y=min=max=*p;y<*p+4;y++)
{
    sum=sum+*y;
    if(*min>*y)
min=y;
if(*max<*y)
max=y;
}
printf("第%d行的总和=%d\n第%d行的最大值=%d\n第%d行最小值=%d\n",i,sum,i,*max,i,*min);
}
}
上面的程序是正确的,但是为什么把倒数第五行的max=y交换地址这一句换为t=*max,*max=*y,*y=t;交换值就不对了呢,会影响最小值的输出,求解释,谢谢。
   
搜索更多相关主题的帖子: 最大值 please include max 
2012-07-02 21:03



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-372677-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.751408 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved