有没有人可以帮我解释一下下面的C语言程序

来源:百度知道 编辑:UC知道 时间:2024/05/13 14:28:18
main()
{int a,b,c,max;
printf("input three numbers:\n");
scanf("%d,%d,%d",&a,&b,&c);
max=a;
if(max<b)max=b;
if(max<c)max=c;
printf("max=%d",max);
getch();
}

这段代码求解三个数中的最大数,
scanf("%d,%d,%d",&a,&b,&c);
此时应该按照“a,b,c”的格式输入数据,就是数字之间用逗号分界;
a,b,c储存了输入的三个数;max储存最大的数;
max=a; (1)
if(max<b)max=b; (2)
if(max<c)max=c; (3)
以上三条语句的算法是这样的,
(1)先假设a为最大数,
(2)对(1)的假设验证,如果有b比max大,那么假设b为最大数,并让max=b,max是最大数;如果b不大于max的话,max仍然是最大数,
(3)与(2)相同,比较c和max,找出最大的数

如果a,b,c三个数有相等的情况,程序会先选取出现最早的大数最为最大数

就是找最大的那个数