一.求圆球的体积
//数学算法:V=4/3*Π*r^3
#include
#include
int main()
{
float r = 0;
scanf("%f",&r);
double pi =3.1415926;
double V=(4.0/3)*pi*pow(r,3);
printf("%.3f",V);
return 0;
}
问题:
.为什么用4和4.0差别如此之大:一定要注意使用除法时必须保证被除数和除数中的一方是浮点数,否则无法得到小数部分。
二.最大公约数算法:(辗转相除法)
//数学算法: 大数除以小数,得到的余数若不是零,则用除数除以余数,循环往复直到余数为零时,这次所用的除数即为最大公约数
#include
int main()
{
int a = 0, b = 0;
scanf("%d %d", &a, &b);
int bei = 0, chu = 0, yu = 0;
if (a > b)
{
bei = a;
chu = b;
}
else
{
bei = b;
chu = a;
}
//使用一个分支语句实现大数除以小数
yu = bei % chu;
while (yu != 0)
{
bei = chu;
chu = yu;
yu = bei % chu;
}
//使用一个循环语句实现辗转的过程
printf("%d", chu);
return 0;
}
tips:1.一个if语句只能控制一条语句,若有两条指令必须用花括号实现
三.判断一年是否为闰年
//闰年定义:1.能被4整除,但不能被100整除
2.能被400整除
算法:第一步——借助veen图理清三个条件之间的包含被包含关系
第二步——画流程图
#include
int main()
{
int year = 0;
scanf("%d", &year);
if (year % 4 == 0) //首先判断能否被4整除
{
if (year % 100 != 0) //其次判断能否被100整除
printf("%d是闰年", year);
else if (year % 400 == 0) //在能被100整除的情况下哉判断能否被400整除
printf("%d是闰年", year);
else
printf("不是闰年");
}
else
printf("不是闰年");
return 0;
}
tips:本题借助if语句的嵌套完成求解,但是注意如果使用switch语句,
1.switch后的一定是用于判断的整形表达式
2.case后只能跟一个常量,case只是根据switch表达式的值找到适配的一个入口,并不能用于条件检查
3.switch语句后一定要记得添加花括号啊
四.求最大数
算法:先假定一个数为最大值,再使用其他数与之相比较,往复循环,直到结束
方法一:
#include
int main()
{
int arr[4]={0};
int i=0;
while (i<4)
{
scanf("%d",&arr[i]);
i++;
}
//一串数的存取
int max=arr[0];
i=1;
while (i<4)
{
if(arr[i]>max)
max=arr[i];
i++;
}
printf("%d",max);
return 0;
}
方法二:不进行存取,取一个数比较一次
#include
int main()
{
int max = 0;
scanf("%d", &max);
int n = 0;
int i = 1;
while(i<4)
{
scanf("%d", &n);
if (n> max)
{
max = n;
}
i++;
}
printf("%d", max);
return 0;
}
五.求100到200间所有的素数
//素数的定义:除了1和其本身以外的其他数无法将其整除
//算法:利用循环实现2到其本身-1的所有数均%该数=0
#include
int main()
{
int n = 100;
while (n <= 200) //利用循环实现100到200间每一个数的验证
{
int i = 2;
while (i < n) //利用循环实现2到n-1的因数验证
{
if (n % i == 0)
break; //若出现其因数则跳出循环
i++;
} //
if (i == n)
{
printf("%dt", n);
} //判断能否顺利结束循环
n++;
}
return 0;
}
tips:一定要注意if的条件!!!小编最开始把条件写成了i==n-1,调试到自己都快疯了。。/(ㄒoㄒ)/~~



