| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 3146 人关注过本帖
标题:求3个数的最大者,习题!初学者!
只看楼主 加入收藏
lqqjx
Rank: 1
等 级:新手上路
帖 子:20
专家分:0
注 册:2008-12-1
收藏
得分:0 
int max(int a,int b)
{int s;
if(a>b) s=a;
else   s=b;
return s;
}
#include "stdio.h"
main()
{int a,b,c,s;
scanf("%d%d%d",&a,&b,&c);
s=max(max(a,b),c);
printf("max=%d\n",s);
}
还可以这样写的,C语言的函数很丰富的,应用也很灵活,多练练。
 高手哦,这样把函数定义在前面就不用声明了!恩……高手!
2008-12-14 17:51
guoming1232006
Rank: 2
等 级:新手上路
威 望:4
帖 子:438
专家分:0
注 册:2008-11-20
收藏
得分:0 
回复 第8楼 我是大菜鸟 的帖子
#include<stdio.h>
void main()
{
int a,b,c,d;         
scanf("%d,%d,%d",&a,&b,&c);  /*输入数之间要加,*/
d=max(a,b,c);   
prinft("max=%d\n",d);  /*这里printf写错了*/
}

int max(int x,int y,int z)
{
int v;
if(x>y,x>z) v=x;
else v=y;
if(x>y,z<y) v=y;
else v=z       /*这里少了;*/
return(v);
}
还有,你自定义的max函数,几个if和else搞的我头都昏了。你输入3,2,1看看,得到结果是什么?

寡人有疾,寡人好色......
2008-12-14 18:00
guoming1232006
Rank: 2
等 级:新手上路
威 望:4
帖 子:438
专家分:0
注 册:2008-11-20
收藏
得分:0 
回复 第11楼 lqqjx 的帖子
嘿嘿,我也是菜鸟,一般不喜欢函数声明的,嫌麻烦!

寡人有疾,寡人好色......
2008-12-14 18:02
ssdnsse
Rank: 1
来 自:福建
等 级:新手上路
帖 子:550
专家分:0
注 册:2008-12-14
收藏
得分:0 
以下程序可以运行
void main()
{
int a,b,c,max1,max2;
printf("pelase input three number\n");
scanf("%d%d%d",&a,&b,&c);     /*输入一个数字按回车*/

max1=a>b?a:b;
max2=max1>c?max1:c;
printf("%d",max2);
getch();
}

[[it] 本帖最后由 ssdnsse 于 2008-12-14 21:33 编辑 [/it]]

...指针不指向我了   0.0
2008-12-14 18:07
guoming1232006
Rank: 2
等 级:新手上路
威 望:4
帖 子:438
专家分:0
注 册:2008-11-20
收藏
得分:0 
#include "stdio.h"
#define max(a,b) ((a)>(b)?(a):(b))
main()
{int a,b,c,s;
 scanf("%d%d%d",&a,&b,&c);
 s=max(max(a,b),c);
 printf("%d\n",s);
}

寡人有疾,寡人好色......
2008-12-14 18:10
我是大菜鸟
Rank: 1
等 级:新手上路
帖 子:8
专家分:0
注 册:2008-12-14
收藏
得分:0 
后面定义的函数哪里没有声明啊,怎么声明写出来看一下啊!!!搞不清楚啊!
2008-12-14 18:42
我是大菜鸟
Rank: 1
等 级:新手上路
帖 子:8
专家分:0
注 册:2008-12-14
收藏
得分:0 
再顶一个!嘿嘿!
2008-12-14 18:50
guoming1232006
Rank: 2
等 级:新手上路
威 望:4
帖 子:438
专家分:0
注 册:2008-11-20
收藏
得分:0 
#include<stdio.h>
void main()
{
int a,b,c,d;           
int max(int x,int y,int z);  /*对函数max的声明*/
scanf("%d,%d,%d",&a,&b,&c);  
d=max(a,b,c);   
prinft("max=%d\n",d);
}
int max(int x,int y,int z)
{
int v;
if(x>y,x>z) v=x;
else v=y;  
if(x>y,z<y) v=y;
else v=z   
return(v);
}

对于自定义函数,要先声明后使用,或者直接把自定义函数写在主函数前面。
还有,楼主对于if语句的嵌套还不是很了解,建议多看看书本。

寡人有疾,寡人好色......
2008-12-14 19:02
名ms
Rank: 1
等 级:新手上路
帖 子:3
专家分:0
注 册:2008-12-9
收藏
得分:0 
你的scanf里面事怎样的,赋值时就要怎样。有逗号。赋值时也要逗号,有分号时也要给分号
2008-12-14 19:06
广陵绝唱
Rank: 10Rank: 10Rank: 10
等 级:贵宾
威 望:29
帖 子:3607
专家分:1709
注 册:2008-2-15
收藏
得分:0 
#include<stdio.h>
int main(void)
{
    int a,b,c;
    scanf("%d %d %d",&a,&b,&c);
    printf("max=%d\n",(a>b?a:b)>c?(a>b?a:b):c);
    return 0;
}

/*   没调试,楼主可以运行一下试试。如有问题,请再发帖。  */
2008-12-14 19:27
快速回复:求3个数的最大者,习题!初学者!
数据加载中...
 
   



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

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