Toggle navigation
F.A.Qs
Web Board
ProblemSet
Source/Category
Status
Ranklist
Contest
[
ProblemSet
Status
Ranklist
OI Ranklist
Statistics
]
Login
Problem A: 【高级语言程序设计】6.13 孪生素数
Problem A: 【高级语言程序设计】6.13 孪生素数
Time Limit:
100
Sec
Memory Limit:
128 MB
Submit:
862
Solved:
192
[
Submit
] [
Status
] [
Web Board
] [Creator:
]
Description
相差为2的两个素数称为孪生素数。例如,
3
与
5
,
41
与
43
等都是孪生素数。 请编写一个程序,计算并输出指定区间
[c,d]
上的所有孪生素数对,并统计这些孪生素数的对数。先输入区间
[c,d]
的下限值 c 和上限值 d ,要求
c>2
,如果数值不符合要求或出现非法字符,则重新输入。然后输出指定区间
[c,d]
上的所有孪生素数对以及这些孪生素数的对数。
Input
输入正确的区间。错误的区间会报错。
Output
输出区间内所有的孪生素数和对数。
Sample Input
Copy
1,100; 2,100; 3,100;
Sample Output
Copy
(3,5)(5,7)(11,13)(17,19)(29,31)(41,43)(59,61)(71,73) count=8
HINT
相关知识
C语言基础:包括变量的声明与赋值、循环语句、条件语句等基本语法。
函数的定义和调用:了解如何定义函数以及如何调用函数。
数学基础:了解素数的概念和判断方法。
条件判断和逻辑运算:使用条件判断和逻辑运算符来判断用户输入的区间值是否合法。
#include
<
stdio.h
>
#include
<
math.h
>
int
IsPrime
(
int
x
);
int
TwinPrime
(
int
min
,
int
max
);
int
main
(
void
)
{
//=======begin=======
//========end========
}
//函数功能:判断x是否是素数,若函数返回0,则表示不是素数,若返回1,则代表是素数
int
IsPrime
(
int
x
)
{
//=======begin=======
//========end========
}
//函数功能:打印[min,max]之间的孪生素数,返回其间孪生素数的个数
int
TwinPrime
(
int
min
,
int
max
)
{
//=======begin=======
//========end========
}