水仙花数
主要考察暴力法以及三位数的数位的分离
从小到大
#include<stdio.h>
int main()
{
int a,b,c,sum,i,n,m;
while(~scanf("%d%d",&m,&n)) //多组输入
{
int flag=0; //标记
for(i=m;i<=n;i++) //从m到n
{
a=i%10; //个位分离
b=(i/10)%10; //十位分离
//b=i%100/10;
c=i/100; //百位分离
sum=a*a*a+b*b*b+c*c*c;
if(sum==i) //判断是否相等
{
if(flag==0)
printf("%d",i); //第一个输出前面不需要空格
else
printf(" %d",i); //注意这里有空格
flag++;
}
}
if(flag==0) //如果有水仙花数,则会进行上面if循环的flag++操作
printf("no");
printf("\n"); //换行,格式要求,每一个样例占一行
}
return 0;
}
计算距离
熟悉数学函数的使用
因为开平方结果会含有小数,这里定义的类型是float或者double
本题需要的数学函数:头文件math.h
①sqrt函数:计算数的平方根,sqrt(i)就是求i的平方根
②pow函数:计算数的指数值,例如pow(a,b)就是求a的b次方值
这里是求平方根,此时的pow(a,b)中的b=2 即pow(a,2) 表示a的平方
③fabs函数:fabs是对浮点数取绝对值,例如fabs(-1)的值为1
这里补充一点:abs函数:abs是对整数取绝对值(需要使用头文件stdlib.h)
#include<stdio.h>
#include<math.h>
int main()
{
double x1,y1,x2,y2,s;
while(~scanf("%lf%lf%lf%lf",&x1,&y1,&x2,&y2)){ //多组输入
s=sqrt(pow(fabs(x1-x2),2)+pow(fabs(y1-y2),2));
printf("%.2lf\n",s); //注意这里是保留两位小数输出
}
return 0;
}
ReLU函数
题意:求ReLU函数的值
当 x>=0时,输出x
当x<0时,输出0
#include<stdio.h>
int main()
{
int x;
scanf("%d",&x);
if(x>=0)
printf("%d",x);
else
printf("0");
return 0;
}
A*B
这里需要注意题目规定数的范围和int覆盖的范围
#include<stdio.h>
int main()
{
long long a,b;
scanf("%lld%lld",&a,&b);
printf("%lld",a*b);
return 0;
}
计算球体积
#include<stdio.h>
#define PI 3.1415927 //宏定义 定义π为3.1415927
int main()
{
//double PI=3.1415927;
double r,v;
while(~scanf("%lf",&r))
{
v=(r*r*r)*PI*4.0/3.0; //注意整型与浮点型的转换
printf("%.3lf\n",v); //这里需要注意输出格式
}
return 0;
}