当前位置: 代码迷 >> C语言 >> 本人刚看第二章C语言有二道题目不会做!
  详细解决方案

本人刚看第二章C语言有二道题目不会做!

热度:130   发布时间:2007-04-18 11:09:51.0
printf("MAX NUMBER IS:%d",a>b?a>c?a:c :b>c?b:c);

应该这样!
----------------解决方案--------------------------------------------------------

没有问题。。。你运行一下就知道了


----------------解决方案--------------------------------------------------------
回复:(海蓝啸)没有问题。。。你运行一下就知道了

/* max.C */

#include "stdio.h"
#include "conio.h"

int isMax(int a, int b)
{
if(a >= b)return a;
else return b;
}

main()
{
int a[10];
int i,n;
int max;
/*input 10 numbers*/
for(i = 0; i < 10; i ++){
printf("please input a[%d]", i);
scanf("%d",&a[i]);

}

max = a[0];
for(i = 0; i < 10; i ++)
max = isMax(max,a[i]);


printf("the max number is %d\n", max);
getch();
}



可以看看。你可以修改数组的大小就可以做任意个说的比较。


----------------解决方案--------------------------------------------------------
printf("MAX NUMBER IS:%d",a>b?a:b>c?a>b?a:b:c);

a=5;b=3;c=7

你试试
----------------解决方案--------------------------------------------------------

#include"stdio.h"
main()
{
int a,b,c;
scanf("%d%d%d",&a,&b,&c);
printf("MAX NUMBER IS:%d",(a>b?a:b)>c?(a>b?a:b):c);
}

加两个括号就好了.把整体看成比较对象就不会错了


----------------解决方案--------------------------------------------------------

a>b?a:b>c?a>b?a:b:c

a>b?a>c?a:c:b>c?b:c

问问..上面两个分别是怎么计算的..?

第一个为什么会错..?


----------------解决方案--------------------------------------------------------
我也是初学
受益了
谢谢
----------------解决方案--------------------------------------------------------
#include<stdio.h>
main()
{
int a,b,c;
printf("输入三个数:\n");
scanf("%d%d%d",&a,&b,&c);
printf("The max number is:%d",(a>b?a:b)>c?(a>b?a:b):c);
}
加了括号,应该好明白了.
----------------解决方案--------------------------------------------------------

顶了....


----------------解决方案--------------------------------------------------------
  相关解决方案