当前位置:编程学习 > C#/ASP.NET >>

这两代码有什么区别?

NO 1 :#include<stdio.h>
void main()
{
    int a,b,c,t;
    scanf("%d,%d,%d",&a,&b,&c);
    if(a<b)
    {t=a;a=b;b=t;}
    if(a<c)
    {t=a;a=c;c=t;}
    if(b<c)
    {t=b;b=c;c=t;}
    printf("big to small :%d %d %d\n",a,b,c);
}
NO 2 :#include<stdio.h>
void main()
{
    int a,b,c,t;
    scanf("%d,%d,%d",&a,&b,&c);
    if(a<b)
    {t=a;b=t;a=b;}
    if(a<c)
    {t=a;c=t;a=c;}
    if(b<c)
    {t=b;c=t;b=c;}
    printf("big to small :%d %d %d\n",a,b,c);

}
第一个能正常输出 第二个不行 问题在哪?
我觉得这两个意思一样的嘛 第二个哪里不对了? --------------------编程问答--------------------  if(a<b)
  {t=a;b=t;a=b;}
//如果a=1;b=3;这样操作之后a,b都为1了,顺序不对 --------------------编程问答-------------------- 就是赋值的时候有先后顺序哦!呵呵! --------------------编程问答-------------------- {t=a;b=t;a=b;}? --------------------编程问答-------------------- 我很努力地找茬
也觉得是一样的

你是不是没有完全贴代码出来
用到指针了

还有来错区了
去C++ 或C区问问把 --------------------编程问答-------------------- if(a<b)
  {t=a;b=t;a=b;}//b已被a覆盖
  if(a<c)
  {t=a;c=t;a=c;}//同理,c被a
  if(b<c)
  {t=b;c=t;b=c;}//
--------------------编程问答-------------------- --------------------编程问答-------------------- 你的第二段程序中的 if语句写的都不对,哪有这样交换数值的,你自己在好好考虑考虑就知道错在什么地方了,最好是将abc都赋值后你就更清除了
if(a<b)
  {t=a;b=t;a=b;}
  if(a<c)
  {t=a;c=t;a=c;}
  if(b<c)
  {t=b;c=t;b=c;}
--------------------编程问答-------------------- 兄弟。。这两个函数都不正常,你准备做嵌入式吗?如果不是,请直接学习C#,而不是C语言。感觉C#比C可爱的多 --------------------编程问答--------------------  代码1:
if(a<b)
  {t=a;a=b;b=t;}
  代码2:
if(a<b)
  {t=a;b=t;a=b;}
赋值注意先后顺序,同理其他自己改吧
补充:.NET技术 ,  C#
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,