| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 708 人关注过本帖
标题:用VC++编译C语言程序需要注意的一个小问题
只看楼主 加入收藏
kedazhao
Rank: 1
等 级:新手上路
帖 子:2
专家分:0
注 册:2011-5-13
收藏
 问题点数:0 回复次数:4 
用VC++编译C语言程序需要注意的一个小问题
今天用VC++6.0编译了一段很简单的C程序,发现结果不正确,无奈只好在TC++3.0上试了一下,结果反而是正确的,令我很是郁闷;结果才发现是由于不同的编译系统对程序的书写要求不太一样,现在分享出来,希望大家能够注意这点小区别!
求两个数中的最大的一个,原程序如下:
#include <stdio.h>
void main()
{
    int max(int x,int y);
    int a,b,c;
    scanf("%d,%d",&a,&b);
    c=max(a,b);
    printf("max is %d",c);
}

int max(int x,int y)
{
    int z;
    if(x>y) z=x;
    else z=y;
    return(z);
}
在VC++6.0上运行得不到结果,大家尽管可以试一下。但在TC++3.0上结果是正确的。
程序改正为:
#include <stdio.h>
void main()
{
    int max(int x,int y);
    int a,b,c;
    printf("enter a\n");
    scanf("%d",&a);
    printf("enter b\n");
    scanf("%d",&b);
    c=max(a,b);
    printf("max is %d",c);
}

int max(int x,int y)
{
    int z;
    if(x>y) z=x;
    else z=y;
    return(z);
}
即分别输入a,b而不是一次输入,结果正确;
搜索更多相关主题的帖子: return C语言 
2011-05-13 11:35
kedazhao
Rank: 1
等 级:新手上路
帖 子:2
专家分:0
注 册:2011-5-13
收藏
得分:0 
不好意思,是我弄错了,是因为标点符号全角/半角的问题,输入的两个数之间的逗号必须与scanf("%d, %d",&a,&b)中%d, %d之间的逗号一致才行!
2011-05-13 15:45
水木天
Rank: 1
等 级:新手上路
帖 子:11
专家分:8
注 册:2011-5-12
收藏
得分:0 
好吧!哎
2011-05-13 20:19
王大厝
Rank: 1
等 级:新手上路
帖 子:2
专家分:0
注 册:2011-5-14
收藏
得分:0 
int max (int a, int b);注意了你刚才加了“;”在VC中好像运行不起来吧!我试过了
2011-05-14 11:34
月如水0
Rank: 2
等 级:论坛游民
帖 子:29
专家分:76
注 册:2011-5-8
收藏
得分:0 
注意细节
2011-05-14 11:43
快速回复:用VC++编译C语言程序需要注意的一个小问题
数据加载中...
 
   



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

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