今天在《算法竞赛入门经典》这本书上做了两个简单的小题,但是学到了一个小小的知识,当表示变量的次方数时,使用这个符号(^)编译可以通过但是结果是不正确的,在<math.h>这个库中,右一个函数pow(a,b)可以表示一个数a的b次方,并且返回的是浮点类型。
下面是一个输出水仙花数的例子:
输出100-999中所有水仙花数。若三位数ABC满足ABC=A^3+B^3+C^3,则称其为水仙花数。
#include <stdio.h>
#include <math.h>
void shuixianhua(){
for(int i=100;i<=999;i++){
int temp=pow((i/100),3)+pow((i%100/10),3)+pow((i%10),3);
if(i==temp){
printf("%d\t",i);
}
}
}
之后在main函数中直接调用该函数即可。