有没有教一教的,只用for函数

输入两个数n,a,

如果:n=3,a=2; 输出 2 + 22 + 222 的值。(****)

如果:n=4,a=3; 输出 3 + 33 + 333 + 3333的值。

有用请采纳


#include<stdio.h>


int main(){
    int n, a, sum, temp;
    scanf("%d%d", &n, &a);   // 输入两个数
    
    sum = 0;    // 初始化sum的值 
    temp = a;
    for(int i = 0; i < n; i++){
        sum += a;
        temp *= 10;
        a += temp;
    } 
    
    printf("%d\n", sum);
}

#include <stdio.h>

/*
    sn = a + aa+aaa+aaaa+.....+aaaaaan;
    比如a=5,n=5
    5+55+555+5555+55555 
*/

void main(){
    int a,n;
    int i,j;
    int sn=0; //代表n位的数字,如8,88,888,8888,..... 
    int sum = 0;//代表所有数相加的和 
    printf("请输入a和n的值(逗号分隔):");
    scanf("%d,%d",&a,&n);
    //把a的初值赋值给sn
    sn = a; 
    sum = a;//
    printf("%d+",sn);
    for(i=2;i<=n;i++){ //表示n个数字 
        sn= a+sn*10;
        sum += sn; 
        if(i<n)
            printf("%d+",sn);
        else
            printf("%d",sn);
    }
    printf("=%d\n",sum);
} 

您好,我是有问必答小助手,您的问题已经有小伙伴帮您解答,感谢您对有问必答的支持与关注!
PS:问答VIP年卡 【限时加赠:IT技术图书免费领】,了解详情>>> https://vip.csdn.net/askvip?utm_source=1146287632