回 帖 发 新 帖 刷新版面

主题:求高手解答一个程序

求2+22+222+2222+22222+n个2
#include<stdlib.h> 
#include<stdio.h> 
int main(int argc,char **argv) 

int n; 
int i,j,k; 
int *buf; 
printf("请输入n的数值:"); 
scanf("%d",&n); 
buf=(int *)malloc(n*sizeof(int)); 
[color=FF0000]for(i=0;i<n;i++) 

   buf[i]=2; 

for(i=n-2;i>=0;i--) 

   for(j=i;j>=0;j--) 
   { 
    buf[j]+=2; 
   } 

for(k=0;k<=n-2;k++) 

   if(buf[k]>=10) 
   { 
    buf[k+1]+=buf[k]/10; 
    buf[k]%=10; 
   } 

for(i=n-1;i>=0;i--) 
   printf("%d",buf[i]); [/color]printf("\n"); 
return 0; 
}
求解答

回复列表 (共6个回复)

沙发

#include<stdio.h>
#include<math.h>

void fun(int m)
{
    long sum=0;
    long n=0,a=2;
    while(m)
    {
        n=n+a;
        a=a*10;
        sum=sum+n;
        m--;
    }
    printf("\n和为%ld\n",sum);
}

int main()
{
    int n;
    printf("请输入个数n的值:");
    do{
        scanf("%d",&n);
    }while(n>10);
    fun(n);
    return 0;
}
    

板凳

楼上的头文件不用math.h

3 楼

没啥意思,好久没来,冒泡

4 楼


请你能替我解释我发布的那个程序吗,也就是注释,最好能举例,谢谢

5 楼

数组,每个元素代表十进制数的一位

6 楼

[quote]数组,每个元素代表十进制数的一位[/quote]
能解释buf【i】=2怎么实现吗

我来回复

您尚未登录,请登录后再回复。点此登录或注册