| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 933 人关注过本帖
标题:大侠看看我的程序错在那里
只看楼主 加入收藏
失重
Rank: 1
等 级:新手上路
帖 子:21
专家分:0
注 册:2007-1-30
结帖率:100%
收藏
 问题点数:0 回复次数:7 
大侠看看我的程序错在那里
main()
{
unsigned long a,b,c;
scanf("%d%d",&a,&b);
c=a+b;
printf("c=%u",c);
}
我刚学C,但这个程序如果输入两个很大的数相加,比如70000,结果就会错误。是哪里错了?
搜索更多相关主题的帖子: main printf scanf 
2008-03-13 17:34
PcrazyC
Rank: 6Rank: 6
等 级:贵宾
威 望:29
帖 子:5652
专家分:0
注 册:2006-10-20
收藏
得分:0 
程序代码:
#include<stdio.h>
int main()
{
    unsigned long a,b,c;
    scanf("%ld%ld",&a,&b);
    c=a+b;
    printf("c=%ld",c);
    return 0;
}

雁无留踪之意,水无取影之心
2008-03-13 18:02
龙眼望天下
Rank: 1
等 级:新手上路
帖 子:8
专家分:0
注 册:2007-12-5
收藏
得分:0 
scanf("%d%d",&a,&b);你把这个改为:scanf("%ld%ld",&a,&b);试一下.
2008-03-13 18:03
jxj777
Rank: 1
等 级:新手上路
帖 子:91
专家分:0
注 册:2007-10-27
收藏
得分:0 
%u无符号整数,默认为unsigned int ,70000超出范围了,用"ld"试试
你的运行环境如果是32位的,应该不会出现这个问题,是不是还在用TC啊,换个编译器吧

一个人的力量是缈小的....... 互帮互助才是出路
2008-03-13 18:04
saikanwa
Rank: 1
等 级:新手上路
帖 子:8
专家分:0
注 册:2008-2-28
收藏
得分:0 
我也是新手,以后常来,帮顶...
2008-03-14 00:06
失重
Rank: 1
等 级:新手上路
帖 子:21
专家分:0
注 册:2007-1-30
收藏
得分:0 
谢谢
谢谢各位朋友,我知道问题了~!谢谢
2008-03-14 12:17
xianshizhe111
Rank: 1
等 级:新手上路
帖 子:1451
专家分:0
注 册:2007-12-8
收藏
得分:0 
定义无符号长整型,输出为整型(加修饰).
2008-03-14 12:23
peach5460
Rank: 15Rank: 15Rank: 15Rank: 15Rank: 15
来 自:武汉
等 级:贵宾
威 望:30
帖 子:2780
专家分:6060
注 册:2008-1-28
收藏
得分:0 
超范围了吧?

我总觉得授人以鱼不如授人以渔...
可是总有些SB叫嚣着:要么给代码给答案,要么滚蛋...
虽然我知道不要跟SB一般见识,但是我真的没修炼到宠辱不惊...
2008-03-14 12:55
快速回复:大侠看看我的程序错在那里
数据加载中...
 
   



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

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