1、求1-3+5-7.....-99的值
2、计算半径为1、3、5、7、9时圆的面积
3、求1!+2!+3!+4!+.......10!的值
4、把一元的钱全部换成1分、2分、5分的硬币,有多少种兑换方法?
5、百马百担问题。有100匹马,驮100担货,大马驮3担,中马驮2担,两小马驮一担。各大、中、小马各有多少匹?
1、求1-3+5-7.....-99的值
2、计算半径为1、3、5、7、9时圆的面积
3、求1!+2!+3!+4!+.......10!的值
4、把一元的钱全部换成1分、2分、5分的硬币,有多少种兑换方法?
5、百马百担问题。有100匹马,驮100担货,大马驮3担,中马驮2担,两小马驮一担。各大、中、小马各有多少匹?
第一题:
给你提供两种方法
方法一: 利用一个符号位,一直在正负1之间交替.来乘以i的值.
#include <stdio.h>
main()
{
int i,j=1,sum=0;
for(i=1;i<100;i+=2)
{
sum+=i*j;
j*=-1;
}
printf("sum=%d\n",sum);
}
方法二:将1-3+5-7.....-99中的正数和负数分开求和. 然后将正数的结果减去负数的结果.
#include<stdio.h>
main()
{
int i,j,sum=0,t=0,p=0;
for(i=1;i<99;i=i+4)
t+=i;
for(j=3;j<100;j=j+4)
p+=j;
sum=t-p;
printf("sum=%d",sum);
}
第二题:
#include <stdio.h>
main()
{
float area;
int r;
const PI=3.1415;
for(r=1;r<=9;r+=2) //圆半径循环从1到9.步长为2. 所以是1 3 5 7 9;
{
area=PI*r*r; //面积的计算公式是π*r平方.
printf("area=%.3f\n",area); //输出每一次的面积.
}
}
第三题:
#include <stdio.h>
main()
{
int sum=0,t=1,i; //由于只是求1!累加到10!.所以int类型就可以放得下结果.
for(i=1;i<=10;i++)
{
t*=i; //t是计算每个数的阶乘.
sum+=t; //sum是累加每个数的阶乘.
}
printf("sum=%d\n",sum);
}
第四题:
#include <stdio.h>
main()
{
int i,j,k,count=0;
for(i=0;i<=20;i++)
for(j=0;j<=50;j++)
for(k=0;k<=100;k++)
if(k+2*j+5*i==100)
count++;
printf("count=%d\n",count);
}
第五题: 因为可能存在大马或者中马或者小马为0匹的情况. 所以循环从0开始.
#include <stdio.h>
main()
{
int i,j,k;
for(i=0;i<=33;i++)
for(j=0;j<=50;j++)
for(k=0;k<=100;k++)
{
if((i+j+k==100)&&(3*i+2*j+k/2.0)==100)
printf("大马:%d,中马:%d,小马:%d\n",i,j,k);
}
}