#CS41005. 阅读程序10-数论5
阅读程序10-数论5
阅读程序
注意:切勿用电脑直接运行代码得出答案,请用大脑+笔+纸运行代码答题,否则是在浪费你的时间。
第10节:数论
第5题【NOIP】2012
#include <iostream>
using namespace std;
int n, i, ans;
int gcd(int a, int b)
{
if (a % b == 0) return b;
else
return gcd(b, a%b);
}
int main()
{
12 cin>>n;
ans = 0;
for (i = 1; i <= n; i++)
if (gcd(n,i) == i)
ans++;
cout<<ans<<endl;
}
●判断题
(1)将n定义为double类型,程序的输出结果不变。
{{ select(5-1) }}
- 正确
- 错误
(2)输入一个正整数,输出结果不可能不大于1
{{ select(5-2) }}
- 正确
- 错误
(3)输人100000000000,输出结果为144。
{{ select(5-3) }}
- 正确
- 错误
(4)第12行可改为scanf(“%d”,&n);
{{ select(5-4) }}
- 正确
- 错误
●选择题
(5)输人120.输出为()
{{ select(5-5) }}
- 15
- 16
- 18
- 14
(6)该算法时间复杂度为()
{{ select(5-6) }}
- O(n)
- O(nlogn)
- O
- O()