关于C语言long的用法

求s=a+aa+aaa……+到n个a
这是我编写的,只是用int,不会用long,高手给指点一下
main()
{int s=1,a,m=1,n,i;
scanf("%d,%d",&a,&n);
for(i=1;i<n;i++)
{m=m*10+1;
s=s+m;}
s=s*a;
printf("%d",s);
}
下面是我自己试long 用的,都不对
main()
{int s=1L,a,m=1L,n,i; /*当时用的小写,这里我怕大家看不清楚*/
scanf("%d,%d",&a,&n);
for(i=1;i<n;i++)
{m=m*10+1;
s=s+m;}
s=s*a;
printf("%d",s);
}输出结果和上面一样

main()
{int s=1L,a,m=1L,n,i;
scanf("%d,%d",&a,&n);
for(i=1;i<n;i++)
{m=m*10+1;
s=s+m;}
s=s*a;
printf("%1d",s);
}输出结果同上
main()
{long s=1,a,m=1,n,i;
scanf("%d,%d",&a,&n);
for(i=1;i<n;i++)
{m=m*10+1;
s=s+m;}
s=s*a;
printf("%d",s);
}输出结果总是1

学了很长时间C了,就是不会long,也看了很多这方面的知识,望大家给指点一下
对不住大家的是我已经没有钱了
main()
{long s=1,a,m=1,n;
int i;
scanf("%1d,%1d",&a,&n);
for(i=1;i<n;i++)
{m=m*10+1;
s=s+m;}
s=s*a;
printf("%1d",s); }

这样也不行

long关键字表示一种整型数据类型。它的用法与int、float、double等数据类型是一样的。在输入、输出时,一般控制符使用%l

#include<stdio.h>
int main()
{
long l;
scanf("%l", &l);
printf("%l",l);
return 0;
}
温馨提示:答案为网友推荐,仅供参考
第1个回答  推荐于2017-09-09
1. 声明.
long s=1, a, m=1, n, i;
2. 输入.
scanf("%ld %ld", &a, &n);
这个输入的格式要看好(1),long对应的是%ld.(2).当"%ld,%ld"中间有逗号的话,在输入的时候要输入逗号,比如输入2,3,没有逗号的话,中间用空格隔开
*********************************************
3. 大哥,不是1d,是ld。不是1234的1,是lmn的l。本回答被提问者采纳

相关了解……

你可能感兴趣的内容

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网