这是一个C语言求欧拉函数值的函数,谁能帮我解释一下
int oula(int n)
{
int ret=1,i; //定义变量
for(i=2;i*i<=n;i++) //从i=2开始循环,判定条件为i*i小于等于n,循环一次i增加1
if(n%i==0) //判定条件为n除以i的余数等于0
{
n/=i,ret*=i-1; //n=n/i,ret = ret*(i-1)
while(n%i==0) //当n除以i的余数等于0时执行下面的语句,否则跳过
n/=i,ret*=i;
}
if(n>1) //如果n>1执行下面语句,否则跳过
ret*=n-1; //ret = ret*(n-1)
return ret;
}
这是一个C语言求欧拉函数值的函数,谁能帮我解释一下 int oula(int n) {
答案:2 悬赏:30 手机版
解决时间 2021-01-05 01:23
- 提问者网友:记得曾经
- 2021-01-04 06:51
最佳答案
- 五星知识达人网友:狂恋
- 2021-01-04 08:29
注释不是已经很清楚了吗?
全部回答
- 1楼网友:千夜
- 2021-01-04 08:37
你说呢...
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯