| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 3146 人关注过本帖
标题:求3个数的最大者,习题!初学者!
只看楼主 加入收藏
我是大菜鸟
Rank: 1
等 级:新手上路
帖 子:8
专家分:0
注 册:2008-12-14
收藏
 问题点数:0 回复次数:29 
求3个数的最大者,习题!初学者!
习题的问题是    编写一个C程序,输入a,b,c3个值,输出其中最大者!
我写了,我感觉正确了,但是老是检测失败!!!哎!郁闷啊!
我把代码写出来,大家帮我解释一下!呵呵!谢谢了
大家看一下啊,是求3个数,不是2个数!!!我后面的MAX函数用的IF是有点多,那是为了判断数值!我第一次写,我根据自己的想法写的,可能判断的有点乱!

#include<stdio.h>
void main()
{
int a,b,c,d;           定义变量
scanf("%d,%d,%d",&a,&b,&c);  给变量赋值
d=max(a,b,c);    D等于最大
prinft("max=%d\n",d);输出D
}

int max(int x,int y,int z)
{
int v;
if(x>y,x>z) v=x;  假设X为3,Y为2,Z为1,意思就很明显了,3大与2,3大于1,结果V等于X就是最大的意思
else v=y;  否则V等于Y,就是中间的,为了不让程序判断为最小的, 下面的我又加了个判断,我不知道语法对不对
if(x>y,z<y) v=y; X大于Y,Z小于Y,结果等于V等于中间的
else v=z   否则 V等于Z
return(v);
}

不知道大家可以看明白不!我自己都有点晕了!呵呵!

我感觉我有点按照自己意思去理解了,我刚看了一节!我做习题,没有基础!以前接触过SQL!请高手指点一下!谢谢了!希望能给我留个群!!

[[it] 本帖最后由 我是大菜鸟 于 2008-12-14 18:50 编辑 [/it]]
搜索更多相关主题的帖子: 解答 习题 
2008-12-14 16:23
我是大菜鸟
Rank: 1
等 级:新手上路
帖 子:8
专家分:0
注 册:2008-12-14
收藏
得分:0 
我先占个设法,看看论坛的回贴量如何!!!
2008-12-14 16:23
zqy110007
Rank: 3Rank: 3
来 自:外太空
等 级:论坛游民
威 望:6
帖 子:1493
专家分:82
注 册:2008-11-19
收藏
得分:0 
#include <time.h>
#include <stdio.h>
#include <conio.h>

#define M 10

/*交换函数*/
int change(int *a,int *b){
  int m;
  m=*a;
  *a=*b;
  *b=m;
}

int main(void){
  int num[M]={0};
  int i,j;

  srand((unsigned)time(NULL));
  printf("The number is:\n");
  for(i=0;i<M;i++){
    num[i]=(rand()%M)+1;
    printf("%d ",num[i]);
  }
  for(i=0;i<M;i++)
    for(j=M-1;j>i;j--){
      if(num[i]<num[j])
        change(&num[i],&num[j]);
    }
  printf("\nThe max is %d and %d.\n",num[0],num[1],num[2]);
  getch();
  return 0;
}

每个人都是蛤蟆,只是井的大小不同罢了.
沙石下的泉水,挖得越深,泉水越清.
2008-12-14 16:36
yulonh
Rank: 1
等 级:新手上路
帖 子:27
专家分:0
注 册:2008-12-14
收藏
得分:0 
max函数还没定义,还漏了个“{”

粗体文字 Abc字体为仿宋 总喜欢在人群中寻找自己……
2008-12-14 16:43
我是大菜鸟
Rank: 1
等 级:新手上路
帖 子:8
专家分:0
注 册:2008-12-14
收藏
得分:0 
顶上去,我编辑过了!再帮忙看下那里出错了#24
2008-12-14 17:15
guoming1232006
Rank: 2
等 级:新手上路
威 望:4
帖 子:438
专家分:0
注 册:2008-11-20
收藏
得分:0 
#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);
}

寡人有疾,寡人好色......
2008-12-14 17:24
guoming1232006
Rank: 2
等 级:新手上路
威 望:4
帖 子:438
专家分:0
注 册:2008-11-20
收藏
得分: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:30
我是大菜鸟
Rank: 1
等 级:新手上路
帖 子:8
专家分:0
注 册:2008-12-14
收藏
得分:0 
楼上的,你觉的我写的那个代码除了那个字母写错之外没别的问题了吗???我照着又写了一遍字母也改了,还是有问题,问题出在定义MAX函数的上面!我看不出来!能请教一下吗???
2008-12-14 17:38
bluewood1987
Rank: 1
等 级:新手上路
帖 子:2
专家分:0
注 册:2008-12-14
收藏
得分:0 
后面定义的函数没有在之前声明一下
2008-12-14 17:44
lqqjx
Rank: 1
等 级:新手上路
帖 子:20
专家分:0
注 册:2008-12-1
收藏
得分:0 
scanf("%d,%d,%d",&a,&b,&c);  给变量赋值
输入的时候是不是要在数之间加上逗号哦!
我们一般都是这样写的:scanf("%d%d%d",&a,&b,&c);
2008-12-14 17:48
快速回复:求3个数的最大者,习题!初学者!
数据加载中...
 
   



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

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