c语言任务描述 编程找出前1000个素数存放到数组中,然后输入一个整数N,输出第N个素数的值。 输入格式: 输入有多组数据,为若干个空格分隔的整数。 输出格式: 对于输入数据中每个n,输出第n个素数的值,多个输出之间以逗号分隔。 输入样例: 1 2 3 4 5 4 3 输出样例: 2,3,5,7,11,7,5 输入样例: 5 8 9 10 100 200
时间: 2024-03-13 15:47:54 浏览: 81
好的,以下是C语言版本的示例代码,可以参考:
```c
#include <stdio.h>
#include <stdbool.h>
#include <math.h>
// 判断是否为素数
bool is_prime(int n) {
if (n < 2) {
return false;
}
for (int i = 2; i <= sqrt(n); i++) {
if (n % i == 0) {
return false;
}
}
return true;
}
int main() {
int primes[1000];
int i = 2;
int count = 0;
// 找出前1000个素数
while (count < 1000) {
if (is_prime(i)) {
primes[count] = i;
count++;
}
i++;
}
// 处理输入数据
int n;
while (scanf("%d", &n) != EOF) {
printf("%d", primes[n-1]);
if (getchar() == ' ') {
printf(",");
} else {
printf("\n");
}
}
return 0;
}
```
这段代码首先定义了一个判断素数的函数is_prime,然后使用while循环找出前1000个素数,存放到数组primes中。接着使用while循环不断读取输入数据,并处理每个整数,输出第n个素数的值,并根据需要添加逗号分隔。该代码使用了标准输入输出,并在读取输入数据时判断是否到达文件末尾EOF。
相关推荐
![c](https://img-home.csdnimg.cn/images/20210720083646.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![-](https://csdnimg.cn/download_wenku/file_type_lunwen.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)