本期文章用循环计算一个数的阶乘或者是计算一系列数字的相加
以n为例:
思路:n的阶乘就是n=1*2*3*4*5*6*7*8*9*n
即从1开始乘到n
计算数字n的阶乘我们常规写法for循环来完成
先定义变量i n j,
#define _CRT_SECURE_NO_WARNINGS 1
#include<stdio.h>
int main()
{
int i = 0;
int n = 0;
int j = 1; //初始值不能为零初始值为零结果为零
printf(“请输入您想计算阶乘的数值:”);
scanf(“%d”, &n);
for (i = 1; i <= n;i++)
{
j *= i; // j的值的累乘
}
printf(“%d\n”, j);
return 0;
}
j*=i;的意思:
j*=i ====== j=j*i 就是j现在的值等于之前的值乘以j
设j=2 i=6
则 j*=i
j=12
即j的值等于12
接下来是一道加法:
n的相加
#define _CRT_SECURE_NO_WARNINGS 1
#include<stdio.h>
int main()
{
int i = 0;
int n = 0;
int j = 0;
printf(“请输入您想计算阶乘的数值:”);
scanf(“%d”, &n);
for (i = 1; i <= n;i++)
{
j = j + i;
}
printf(“%d\n”, j);
return 0;
}
程序分析:
1.循环体包含一个及以上的语句需要用花括号括起来作为复合语句出现
2.不能忽略给i n j赋初值否则他们的值是不可预测的
3.循环体应有趋于结束的语句