索尼与三星 2015-03-21 15:27 采纳率: 33.3%
浏览 1735

求大牛指教一个题!!!谢谢!

题目是这样的:输入一个正整数a和n,输出a+aa+aaa++++aaaaa(n个a)的和,以及输出a+aa+aaa++++++aaaaaa
可能描述的不够清楚,举一个例如:输入a=2,n=3;输出246(2+22+222)这种格式
其中246=2+22+222
然后,这是我写的代码(C语言的)
#include
#include
int main()
{
int a,n,i,l;
double sum1=0;
char fact(int a,int n);
printf("enter a,n");
scanf("%d%d",&a,&n);
l=0;
for(i=1;i<=n;i++){
l=10*l+a;
sum1=sum1+l;
}

printf("%.0lf(%.0lf)",sum1,fact(a,n));
return 0;
}
char fact(int a,int n)
{
int i;
char l=a;
char sum2;
for(i=1;i<=n;i++){
sum2=sum2+l;
a=10*a+a;
l=a;
}
return sum2;
}
结果不对,请大牛们帮忙看看,哪里错了?谢谢!!!!

  • 写回答

4条回答 默认 最新

  • threenewbee 2015-03-21 15:38
    关注
     #include <iostream>
    using namespace std;
    int main()
    {
        int n = 3, a = 2, result = 0;
        for (int i = 1; i < n; i++)
        {
            result += a;
            a += a * 10;
        }
        cout << a << endl;
        return 0;
    }
    

    http://codepad.org/GdLQK4Nu

    评论

报告相同问题?