DAY 4
1. 在屏幕上輸出以下圖案:
*
* * *
* * * * *
* * * * * * *
* * * * * * * * *
* * * * * * * * * * *
* * * * * * * * * * * * *
* * * * * * * * * * *
* * * * * * * * *
* * * * * * *
* * * * *
* * *
*
這個和九九乘法口訣表的原理一致,只不過去掉數字留下星號:
#include <stdio.h>
#include <stdlib.h>
int main()
{
int a, b;
for (a = 1; a <= 7; a++)
{
for (b = 1; b <= 2 * a - 1; b++)
{
printf("*");
}
printf("\n");
}
a--;
for (a = 6; a >= 1; a--)
{
for (b = 1; b <= 2 * a - 1; b++)
{
printf("*");
}
printf("\n");
}
system("pause");
return 0;
}
輸出結果:
2. 求出0~999之間的所有“水仙花數”並輸出。
“水仙花數”是指一個三位數,其各位數字的立方和確好等於該數本身,如;153=1+5+3?,則153是一個“水仙花數”。
在數論中,水仙花數(Narcissistic number)也稱爲自戀數、自冪數、阿姆斯壯數或阿姆斯特朗數(Armstrong number),是指一N位數,其各個數之N次方和等於該數。
例如153、370、371及407就是三位數的水仙花數,其各個數之立方和等於該數:
153 = 1^3 + 5^3 + 3^3。
370 = 3^3 + 7^3 + 0^3。
371 = 3^3 + 7^3 + 1^3。
407 = 4^3 + 0^3 + 7^3。
#include <stdio.h>
#include <stdlib.h>
int main()
{
int i;
int a, b, c;
for (i = 100; i < 1000; i++)
{
a = i % 10;
b = i / 10 % 10;
c = i / 100;
if (i == a * a * a + b * b * b + c * c * c)
{
printf("%d\n", i);
}
}
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 i;
int n, m;
scanf("%d%d", &n, &m);
int sum = 0;
int tmp = 0;
for (i = 1; i <= m; i++)
{
tmp = tmp * 10 + n;
sum += tmp;
}
printf("%d\n", sum);
system("pause");
return 0;
}
輸入a的值n和要求的項數m,例如:2+22+222+2222+22222中n=2,m=5
輸出結果: