例1: 求2+4+6+……+100
解题步骤:
1、写出固定格式
2、定义三个变量
n=1
sum=0
chengji=1
a=2
3、加入while语句
4、找出相乘或相加的共有多少项,然后在while后的括号里,协商n<=项数
5、在括号内写上↓
n=n+1;
sum=sum+a
chenji=chengji*a
6、列出第n项与第(n-1)项的关系,并把这关系用a的形式表现
如果第n项=第(n-1)项n → a=an
将a的式子写进括号内
7、将要求的内容输出,检查循环的开头与结尾
#include<stdio.h>
int main()
{
int n=1,sum=0,a=2;
while(n<=50)
{
n=n+1;
sum=sum+a;
a=a+2;
}
printf("计算结果是%d\n",sum);
return 0;
}
例2: 求2468……*100
#include<stdio.h>
int main()
{
int n=1,chengji=1,a=2;
while(n<=50)
{
n=n+1;
chengji=chengji*a;
a=a+2;
}
printf("计算结果是%d\n",&chengji);
return 0;
}
例3: 输入一个大于0且不大于10的数,计算累乘(如:输入的数字是5,则计算1!+2!+3!+4!+5!)
#include<stdio.h>
int main()
{
int x;
printf("请输入一个1~10之间的整数:");
scanf("%d",&x);
while (1)
{
if(x>10)
{
printf("输入的数字过大,请重新输入:");
scanf("%d",&x);
}
if(x<=0)
{
printf("输入的数字过不正确,请重新输入:");
scanf("%d",&x);
}
else
{
break;
}
}
int sum=0;
for(int i=1;i<=x;i++)
{
int pdt=1;
for(int j=1;j<=i;j++)
{
pdt=pdt*j;
}
sum=sum+pdt;
}
int t=1;
while(t<=x)
{
if(t==x)
{
printf("%d!=",t);
}
else
{
printf("%d!+",t);
}
t++;
}
printf("%d",sum);
return 0;
}