c语言求100以内的全部素数,每行输出10个。素数就是只能被1和自身整除的正整数,1不是素数,2是素数。要求定义和调用函数prime(m)判断m是否为素数,当m为素数时返回1,否则返回0。
时间: 2023-08-31 15:29:45 浏览: 90
### 回答1:
好的,下面是代码实现:
```c
#include <stdio.h>
int prime(int m);
int main()
{
int count = 0;
for (int i = 2; i <= 100; i++) {
if (prime(i)) {
printf("%d ", i);
count++;
if (count % 10 == 0) {
printf("\n");
}
}
}
return 0;
}
int prime(int m)
{
if (m == 1) {
return 0;
}
for (int i = 2; i < m; i++) {
if (m % i == 0) {
return 0;
}
}
return 1;
}
```
这个程序中,我们先定义了一个 `prime` 函数用于判断一个数是否为素数。接着在 `main` 函数中循环遍历 2 到 100 之间的所有数,如果是素数则输出它,每输出 10 个数就换行。
### 回答2:
题目要求编写一个C语言程序,求解100以内的所有素数,并每行输出10个。定义一个名为prime的函数,用来判断素数。当输入m为素数时,函数返回1,否则返回0。
以下是实现这个功能的代码:
```c
#include <stdio.h>
// 判断素数的函数
int prime(int m) {
// 排除m小于2的情况
if(m < 2) {
return 0;
}
// 判断m是否能被2到sqrt(m)之间的整数整除,若能则不是素数
for(int i = 2; i * i <= m; i++) {
if(m % i == 0) {
return 0;
}
}
// 若以上情况都不满足,则m为素数
return 1;
}
int main() {
int count = 0; // 计数,用于换行
for(int i = 2; i <= 100; i++) {
// 调用prime函数判断是否为素数
if(prime(i)) {
// 输出素数并计数
printf("%d ", i);
count++;
// 每行输出10个素数,输出满10个时换行
if(count == 10) {
printf("\n");
count = 0; // 重置计数
}
}
}
return 0;
}
```
以上代码中,首先定义了一个名为prime的函数,用来判断输入的m是否为素数。在主函数main中,使用循环从2到100遍历数字,每次调用prime函数判断是否为素数。如果是素数,则输出该数并计数,每输出满10个数字就进行换行。最终得到从2到100的全部素数,并满足每行输出10个的要求。
### 回答3:
c语言求100以内的全部素数,每行输出10个。素数就是只能被1和自身整除的正整数,1不是素数,2是素数。要求定义和调用函数prime(m)判断m是否为素数,当m为素数时返回1,否则返回0。
```c
#include <stdio.h>
int prime(int m) {
if(m == 1) {
return 0;
}
for(int i = 2; i <= m / 2; i++) {
if(m % i == 0) {
return 0;
}
}
return 1;
}
int main() {
int count = 0;
for(int i = 2; i < 100; i++) {
if(prime(i)) {
printf("%d ", i);
count++;
if(count % 10 == 0) {
printf("\n");
}
}
}
return 0;
}
```
以上是一个使用函数判断素数并输出的程序。我们在主函数中使用循环,从2开始逐个判断每个数是否为素数,如果是则输出。记录输出的个数count,当count为10的倍数时换行输出。循环继续直到100。