c语言
求100~200的全部素数,并按照从大到小的顺序排列 以下是C语言实现的代码:#include <stdio.h>
int isPrime(int num) {
if (num < 2) {
return 0;
}
for (int i = 2; i * i <= num; i++) {
if (num % i == 0) {
return 0;
}
}
return 1;
}
int main() {
int primes, count = 0;
for (int i = 100; i <= 200; i++) {
if (isPrime(i)) {
primes = i;
}
}
for (int i = count - 1; i >= 0; i--) {
printf("%d ", primes[ i]);
}
printf("\n");
return 0;
}
首先定义了一个isPrime函数,用于判断一个数是否为素数。然后在主函数中,使用循环遍历100~200之间的所有数,如果是素数则将其存入一个数组中。最后,再使用循环倒序输出数组中的素数,即可按照从大到小的顺序排列输出。 问题:求100~200的全部素数,并按照从大到小的顺序排列。
回答:
以下是一个用 C++ 编写的解决方案,可以求解100到200之间的全部素数,并按照从大到小的顺序排列。
#include <iostream>
#include <vector>
using namespace std;
bool isPrime(int num) {
if (num <= 1) {
return false;
}
for (int i = 2; i * i <= num; i++) {
if (num % i == 0) {
return false;
}
}
return true;
}
int main() {
vector<int> primes;
for (int i = 100; i <= 200; i++) {
if (isPrime(i)) {
primes.push_back(i);
}
}
// 对素数进行从大到小排序
sort(primes.rbegin(), primes.rend());
// 输出结果
cout << "100~200之间的素数(从大到小):" << endl;
for (int prime : primes) {
cout << prime << " ";
}
cout << endl;
return 0;
}
该程序首先定义了一个函数 isPrime,用于判断一个数是否为素数。然后,在主函数中,遍历100到200之间的数,对每个数调用 isPrime 函数进行判断,如果是素数,则将其加入到一个向量容器 primes 中。最后,对素数进行从大到小排序,并输出结果。
希望对您有所帮助!如果有任何疑问,请随时提出。
球一个最佳答案谢谢啦!这对我非常重要!{:10_254:}{:10_254:}{:10_254:}
页:
[1]