1.输入金字塔字符图案 2.求出0~100000之间的所有“水仙花数”并输出 3.求Sn=a+aa+aaa+aaaa+aaaaa的前5项之和

1. 用C语言在屏幕上输出以下图案:

#include <stdio.h>
#include <stdlib.h>
void PrintPattern() { //输出图案
    for (int i = 0; i < 7; i++) {
        for (int j = 0; j < 7-i;j++) {   
            printf(" ");               
        }               
        for (int k = 0; k < 2 * i + 1; k++) {
            printf("*");
        }
        printf("\n");                  
    }        
    for (int l = 1; l <= 6; l++) {
        for (int m = 0; m < l + 1; m++) {
            printf(" ");
        }
        for (int n = 0; n < 13 - l * 2; n++) {
            printf("*");
        }
        printf("\n");
    }
}                                       
int main() {                           
    PrintPattern();
    system("pause");
    return 0;
}

2. 求出0~100000之间的所有“水仙花数”并输出。

“水仙花数”是指一个n位数,其各位数字的n次方之和确好等于该数本身,如:153=1^3+5^3+3^3,则153是一个“水仙花数”。

#include <stdio.h>

#include <stdlib.h>

int main() {

    int i, j, k, n;

    printf("水仙花是");

    for (n = 0; n < 1000; n++)

    {

         i = n / 100;

         j = n / 10 - i * 10;

         k = n % 10;

         if (n==i*i*i + j * j*j + k * k*k)

             printf("%d\n", n);

    };

    system("pause");

    return 0;

}

3.

求Sn=a+aa+aaa+aaaa+aaaaa的前5项之和,其中a是一个数字,

例如:2+22+222+2222+22222

#define _CRT_SECURE_NO_WARNINGS

#include <stdio.h>

#include <stdlib.h>

int main() {

    int a,i;

    int add=0;

    int Sn=0;

    printf("请输入a (0-9)的值:\n");

    scanf("%d", &a);

    for (i = 0; i < 5; i++)

    {

         add = add * 10 + a;

         Sn = Sn+add;

    }

    printf("%d\n", Sn);

    system("pause");

    return 0;

}

发布了42 篇原创文章 · 获赞 0 · 访问量 1448

猜你喜欢

转载自blog.csdn.net/HUAERBUSHI521/article/details/105036841