不是VIP会员,不能显示答案

题目解答

题目:
# include <iostream>

using namespace std;



int fastpow(int a,int b,int p) {

int ans=1;

a=a%p;

for(int i=0; i<=31; i++) {

if(b&(1<<i)) ans=ans*a%p;

a=a*a%p;

}

return ans;

}

int main() {

int a,b,p;

cin>>a>>b>>p;

cout<<fastpow(a, b,p);

return 0;

}


假设输入的a和b和p都是int范围内的正整数,完成下面的判断题和单选题:

判断题

1) 有必要将第7行和第8行的a*a两侧添加括号。( )

2) 交换第7行与第8行,答案不会改变。( )

3) 缩小b的范围一定不会影响代码的正确性。(指在a,p任意给出时答案仍然正确,下同,且最多缩小至10)。( )

4) 缩小p的范围一定不会影响代码的正确性。( )


选择题

5) 若输入的a为4,b为7,则输出不可能为( )。

6) 以下说法正确的是( )。
考点:
分析:
解答:
评论:
老师: