搜索
查看: 697|回复: 1
打印 上一主题 下一主题

这个怎么输出不一样?

[复制链接]
跳转到指定楼层
楼主
发表于 2016-1-1 02:28:53 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
5啊哈币
#include <stdio.h>
#include <stdlib.h>
#include <math.h>
int main()
{
int i;
long int n,b,sum1;
    scanf("%ld",&n);
sum1=1;
    b=0;
    for(i=1;i<=n;i++)
    {
    sum1=sum1+b;
    b=pow(10,i);
   
    printf("%ld\n",sum1);
    }
system("pause");
return 0;
}

按照算法,应该可以实现输出内容是
1
11
111
1111
11111
.。。。。。。。
但是n=3输出的是110 n=4输出的是1110  n=5时候就111109了。。。因该是字节丢失的问题,但是我改成long int了也还是不行,求助

沙发
发表于 2016-1-1 12:29:41 | 只看该作者
%ld是long类型的
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

广播台
特别关注
快速回复 返回顶部 返回列表