1.求1×2×3×4×5(求5的阶乘)的和
思路:
- 范围:i=1~5
- sum=1*2*3*4*5
#include <stdio.h>
int main()
{
int i, sum;
sum = 1;
for (i = 1; i <= 5; i++)
{
sum = sum * i;
}
printf("5的阶乘sum=%d",sum);
return 0;
}
//a的阶乘sum为
#include <stdio.h>
int main()
{
int i, sum;
sum = 1;
for (i = 1; i <= a; i++)
{
sum = sum * i;
}
printf("5的阶乘sum=%d",sum);
return 0;
}
2 . 求出(100~999 )中所有的水仙花数
思路:
- 范围:1.100~999中的数
- 条件:水仙花数假设为abc三位数且这个数我们把它设为x,水仙花数要满足x=a*a*a+b*b*b+c*c*c
- 要想得到abc中的a,b,c,也就是个位,十位,百位,我们可以采用取余整除得到。
话不多说一起来试试。
#include <stdio.h>
int main()
{
int i, a, b, c, x;
for (i = 100; i <= 999; i++)
{
a = i / 100;
b = i / 10 % 10;
c = i % 10;
x = a * a * a + b * b * b + c * c * c;
if (i == x)
{
printf("水仙花数为:%d\n", i);
}
}
return 0;
}
水仙花数分别是:153,370,371,407
3. 对一个大于或等于3的正整数,判断它是不是一个素数。
思路:
- 范围: n>=3的正整数
- 条件:素数是一个大于1的自然数,除了1和它自身外,不能被其他自然数整除的数。
#include <stdio.h>
int main()
{
int n, i;
int f = 0;
printf("请输入一个大于或等于3的数n:");
scanf("%d",&n);
if (n < 3)
{
printf("输入错误,请重新输入\n");
}
for (i= 2; i <= n - 1; i++)
{
if(n% i == 0)
{
f = 1;
}
}
if (f == 1)
{
printf("%d不是素数",n);
}
else
{
printf("%d是素数",n);
}
return 0;
}
4 .判定2000~2500年中的每一年是否闰年,将结果输出。
思路:
- 范围:i=2000~2500
- 条件:1.能够被4整除同时不能被100整除 2.能被400整除满足以上两个条件的中的一个称为闰年。
#include <stdio.h>
int main()
{
int i;//i为年份
for (i = 2000; i <= 2500; i++)
{
if ((i % 4 == 0) && (i % 100 != 0))
{
printf("%d是闰年\n",i);
}
else if (i % 400 == 0)
{
printf("%d是闰年\n",i);
}
}
return 0;
}
5. 求sum=1+1/2+1/3+....1/100
思路:
- 范围:i=1~100
- sum=1.0/1+1.0/i+1+1.0/i+2......1.0/100
#include <stdio.h>
int main()
{
int i;
double sum = 0;
for (i = 1; i <= 100; i++)
{
sum = sum + 1.0 / i;
}
printf("sum=%lf", sum);
return 0;
}
6.求sum=1-1/2+1/3-1/4+....+1/99-1/100
思路:
- i=1~100
- sum=1.0/1-1.0/i+1+1.0/i+2......1.0/100
#include <stdio.h>
int main()
{
int i;
double sum = 0;
int sign = 1;
for (i = 1; i <= 100; i++)
{
sum = sum +(1.0 / i) * sign;
sign = sign *- 1;
}
printf("sum=%lf",sum);
return 0;
}
好啦!for1循环的基础6道题就在这了剩下的题在for2循环里展示。