//求出0~999之间的所有“水仙花数”并输出。
#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
#include <math.h>
int main()
{
int i = 0;
int a = 0;
int b = 0;
int c = 0;
int Flowers = 0;
for (i = 0; i <= 999; i++)
{
if (i >= 100)
{
a = i % 10;
b = (i / 10) % 10;
c = i / 100;
Flowers = pow(c, 3) + pow(b, 3) + pow(a, 3);
if (Flowers == i)
{
printf("%d ", i);
}
}
}
printf("\n");
return 0;
}
//求Sn=a+aa+aaa+aaaa+aaaaa的前5项之和,其中a是一个数字
方法1:
#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
#include <math.h>
int main()
{
int i = 0;
int j = 0;
int a = 0;
int Sn = 0;
int arr[5] = { 0 };
printf("请输入数字a:");
scanf("%d", &a);
for (i = 1; i <= 5; i++)
{
for (j = 1; j <= i; j++)
{
Sn = Sn + a * pow(10, j - 1);
arr[i - 1] = Sn;
}
Sn = 0;
}
Sn = 0;
for (i = 0; i < 5; i++)
{
Sn = Sn + arr[i];
}
printf("%d", Sn);
return 0;
}
方法2:
#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
int main()
{
int i = 0;
int a = 0;
int n = 0;
int Sn = 0;
printf("请输入数字a:");
scanf("%d", &a);
for (i = 0; i <5; i++)
{
n = a + n * 10;
Sn = Sn + n;
}
printf("%d", Sn);
return 0;
}