万卷网 > 题目详情
题型:组合题

(枚举因数)从小到大打印正整数 n 的所有正因数。

试补全枚举程序。

01 #include <bits/stdc++.h> 

02 using namespace std; 

03 

04 int main() { 

05 int n;

06 cin >> n;

07 

08 vector<int> fac;

09 fac.reserve((int)ceil(sqrt(n)));

10 

11 int i;

12 for (i = 1; i * i < n; ++i) { 

13 if (①) { 

14 fac.push_back(i);

15 }

16 }

17 

18 for (int k = 0; k < fac.size(); ++k) { 

19 cout << ② << " "; 

20 }

21 if (③) { 

22 cout << ④ << " "; 

23 }

24 for (int k = fac.size() - 1; k >= 0; --k) { 

25 cout << ⑤ << " "; 

26 }

27 }

(1).

①处应填( )

A.

n % i == 0

B.

n % i == 1

C.

n % (i-1)== 0

D.

n % (i-1) == 1

(2).

②处应填( )

A.

n / fac[k]

B.

fac[k]

C.

fac[k]-1

D.

n / (fac[k]-1)

(3).

③处应填( )

A.

(i-1) * (i-1) == n

B.

(i-1) * i == n

C.

i * i == n

D.

i * (i-1) == n

(4).

④处应填( )

A.

n-i

B.

n-i+1

C.

i-1

D.

i

(5).

⑤处应填( )

A.

 n / fac[k] 

B.

 fac[k]

C.

fac[k]-1 

D.

 n / (fac[k]-1)

更新时间:2022-11-23 18:04:08 |
【知识点】 CCF非专业级别软件能力认证CSP-J/入门级

相似题推荐

简答题

T4多边形


2026-04-17
简答题

T3异或和


2026-04-17
简答题

T2座位


2026-04-16
简答题

T1拼数

2026-04-16
单选题

假设a、b、c都是布尔变量,逻辑表达式(a &&b)IⅡ(!c &&a)的值与下列哪个表达式不始终相等?()

A.

a &&(bⅡ!c)

B.

(al|!c)&&(bⅡ !c)&&(all a)

C.

a &&(!b II c)

D.

!(!a|!b)II(a &&!c)

2025-10-16
公众号
客服 反馈
顶部