1求s=2+22+222+2222+2222的和
#include<stdio.h>
int main()
{
int a = 2;
int n =0;
int t = a;
int sum = 0;
while (n <= 5)
{
a *= 10;
a += t;
n++;
printf("%d\n", a);
sum += a;
}
printf("sum=%d", sum);
return 0;
}
2.例如6=1+2+3
int m = 6;
int n = 1;
int sum = 0;
for(n=1;n<m;n++)
{
if (m % n == 0)
{
printf("%d\n", n);
sum = sum + n;
}
else {
;
}
}
if (m == sum)
{
printf("是完数\n");
}
else {
printf("不是完数\n");
}
return 0;
完整代码(求1000以内的完数)
//6=1+2+3,求1000以内的所有完数
#include<stdio.h>
int comNUm(int m)
{
int n ;
int sum = 0;
for(n=1;n<m;n++)
{
if (m % n == 0)
{
sum = sum + n;
}
else {
;
}
}
if (m == sum)
{
return 1;
}
else {
return 0;
}
return 0;
}
int main() {
int comNUm(int m);
int s ;
for (s = 1; s <= 1000; s++) {
if (comNUm(s))
{
printf("%d\n",s);
}
else {
}
}
return 0;
}