用C语言解决S=2+22+222+...及类似形式问题

问题描述:

请编写程序,按照下述形式输出并求出S=a+aa+aaa+…的
示例:S=2+22+222+2222+22222=24690

要求:

  1. a的值可自定义;
  2. a的显示次数可自定义,如2+22+222+2222+22222或5+55+555等;
  3. 既要表现出形式,也要求和;

方法一:

#include 

int main(void){
    int coefficient,time;
    printf("Enter your coefficient:     \n");
    scanf("%d",&coefficient);
    printf("Enter executive time(s):    \n");
    scanf("%d",&time);
    printf("S=");
    int sum=coefficient,value_item=coefficient,value_power=1;
    int n,value_each;
    printf("%d",coefficient);
    for(n=1;n<time;n++){
            value_power*=10;
            value_each=coefficient*value_power;
            value_item+=value_each;
            printf("+%d",value_item);
            sum+=value_item;
            }

    printf("=%d",sum);
    return 0;
}

用C语言解决S=2+22+222+...及类似形式问题_第1张图片


方法二:(使用pow()函数)

注意: 涉及到pow()函数的变量,记得使用double型!
注意: 别忘了调用

#include 
#include 

int main(void){
    int coefficient,time;
    printf("Enter your coefficient:     \n");
    scanf("%d",&coefficient);
    printf("Enter executive time(s):    \n");
    scanf("%d",&time);
    printf("S=");
    int sum=coefficient,value_item=coefficient;
    int n,value_each;
    double value_power=1.00;
    printf("%d",coefficient);
    for(n=1;n<time;n++){
            value_power=pow(10,n);
            value_each=coefficient*value_power;
            value_item+=value_each;
            printf("+%d",value_item);
            sum+=value_item;
            }

    printf("=%d",sum);
    return 0;
}

用C语言解决S=2+22+222+...及类似形式问题_第2张图片

你可能感兴趣的:(C语言学习)