| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 683 人关注过本帖
标题:菜鸟请教一个简单问题
只看楼主 加入收藏
zhang3972
Rank: 1
等 级:新手上路
帖 子:9
专家分:3
注 册:2010-3-9
结帖率:100%
收藏
已结贴  问题点数:20 回复次数:9 
菜鸟请教一个简单问题
刚学C语言,很多不懂,请大家帮忙看一下
#include <stdio.h>
int mid(int a,int b,int c);
{
    int you
    if(a>b>c)you=b;
if(c>b>a)you=b;
if(c>a>b)you=a;
if(b>a>c)you=a;
else you=c;
return you
}
void main()
{
    int x,y,z,s;
printf("输入3个数");
    scanf("%d,%d,%d",x,y,z);
        s=mid(x,y,z);
        printf("中间的数=%d",s);
}

错在哪?
VC弹出这样的话 --------------------Configuration: sdasda - Win32 Debug--------------------
Compiling...
sdasda.cpp
E:\sdasda.cpp(3) : error C2447: missing function header (old-style formal list?)
Error executing cl.exe.

sdasda.obj - 1 error(s), 0 warning(s)
请教下各位前辈。
搜索更多相关主题的帖子: 简单问题 
2010-03-16 17:01
mywaylgh
Rank: 8Rank: 8
来 自:厨房
等 级:蝙蝠侠
威 望:5
帖 子:188
专家分:729
注 册:2010-3-10
收藏
得分:0 
int you后面加";"

人生就像茶几 上面放着许多杯具

人生也像厨房 里面总有一些洗具
2010-03-16 17:05
shencz007
Rank: 1
来 自:浙江嘉兴
等 级:新手上路
帖 子:3
专家分:2
注 册:2010-3-16
收藏
得分:2 
scanf("%d,%d,%d",x,y,z);
要改成scanf("%d,%d,%d",&x,&y,&z);
2010-03-16 17:51
zhang3972
Rank: 1
等 级:新手上路
帖 子:9
专家分:3
注 册:2010-3-9
收藏
得分:0 
那VC弹出的话是啥意思类?
2010-03-16 18:59
狂人tju
Rank: 1
等 级:新手上路
帖 子:14
专家分:8
注 册:2009-10-27
收藏
得分:3 
int mid(int a,int b,int c);去掉“;”

int you后加“;”
return you后加“;”
scanf("%d,%d,%d",x,y,z);
要改成scanf("%d,%d,%d",&x,&y,&z);
2010-03-16 21:58
狂人tju
Rank: 1
等 级:新手上路
帖 子:14
专家分:8
注 册:2009-10-27
收藏
得分:5 
补充:
 这段 if(a>b>c)you=b;
      if(c>b>a)you=b;
      if(c>a>b)you=a;
      if(b>a>c)you=a;
      else you=c;
有问题,if...else...不能这样用。
2010-03-16 22:04
zhang3972
Rank: 1
等 级:新手上路
帖 子:9
专家分:3
注 册:2010-3-9
收藏
得分:0 
感谢各位回帖,本人还是新手,问题幼稚请见谅喽。
2010-03-17 12:01
hziee
Rank: 4
等 级:业余侠客
帖 子:64
专家分:257
注 册:2010-3-12
收藏
得分:10 
if(a>b>c)you=b;
if(c>b>a)you=b;
if(c>a>b)you=a;
if(b>a>c)you=a;
以上判断条件错误,不能找出中间数的.假设a=-1,b=-2,c=0.5 则(a>b>c)为真,a>b为真,则(1>0.5)成立.

代码修改如下:
#include <stdio.h>
void main()
{
int a,b,c;
scanf("%d%d%d",&a,&b,&c);
if(a>b&&a<c||a>c&&a<b)
printf("%d",a);
if(b>a&&b<c||b>c&&b<a)
printf("%d",b);
if(c>b&&c<a||c>a&&c<b)
printf("%d",c);
 }


[ 本帖最后由 hziee 于 2010-3-17 14:48 编辑 ]
2010-03-17 14:47
zhang3972
Rank: 1
等 级:新手上路
帖 子:9
专家分:3
注 册:2010-3-9
收藏
得分:0 
谢谢,对if语句还不太了解。以后会努力的。谢谢啦。
2010-03-17 15:47
雨中不同
Rank: 1
等 级:新手上路
帖 子:2
专家分:0
注 册:2010-3-8
收藏
得分:0 
呵呵,应改为:
#include <stdio.h>
int mid(int a,int b,int c)
{
    int you;
    if(a>b>c) you=b;
if(c>b>a) you=b;
if(c>a>b) you=a;
if(b>a>c) you=a;
else you=c;
return you;
}
void main()
{
    int x,y,z,s;
printf("输入3个数");
    scanf("%d,%d,%d",&x,&y,&z);
        s=mid(x,y,z);
        printf("中间的数=%d",s);
}
2010-03-19 14:58
快速回复:菜鸟请教一个简单问题
数据加载中...
 
   



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

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