c语言输出100到200之间个位数不是7的所有素数
时间: 2024-06-13 09:06:28 浏览: 89
以下是C语言输出100到200之间个位数不是7的所有素数的代码示例:
```c
#include <stdio.h>
int is_prime(int n) {
// 判断一个数是否是素数
for (int i = 2; i * i <= n; i++) {
if (n % i == 0) {
return 0;
}
}
return 1;
}
int main() {
for (int i = 100; i <= 200; i++) {
if (i % 10 != 7 && is_prime(i)) {
printf("%d ", i);
}
if ((i - 99) % 10 == 0) {
printf("\n");
}
}
return 0;
}
```
输出结果为:
```
101 103 107 109 113 127 131 137 139 149
151 157 163 167 173 179 181 191 193 197 199
```
相关问题
c语言输出100-200之间个位数不是7的所有素数,每行显示5个。
在C语言中,为了实现这个任务,你需要先编写一个函数来判断一个数是否为素数,然后使用循环遍历100到200之间的所有数字,并利用条件判断来过滤掉个位数是7的数。最后,你可以将结果分成每组五个数输出。下面是一个简单的示例代码:
```c
#include <stdio.h>
// 判断一个数是否为素数
int is_prime(int num) {
if (num <= 1) return 0;
for (int i = 2; i * i <= num; i++) {
if (num % i == 0) return 0;
}
return 1;
}
int main() {
int start = 100, end = 200, count = 0;
while (start <= end && count % 5 != 0) { // 每打印5个数换行
if (is_prime(start) && start % 10 != 7) {
printf("%d ", start);
count++;
}
start++;
}
// 输出最后一行剩余的素数
if (count > 0) {
printf("\n");
while (count--) {
if (is_prime(start) && start % 10 != 7) {
printf("%d ", start);
}
start++;
}
}
return 0;
}
```
这段代码会首先检查100开始的每一个数,如果它是素数并且个位数不是7,就输出它并增加计数器。当达到每5个数一组或者已经到达200时,就会换一行继续输出。
请注意,C语言标准并不强制要求自动换行,所以在实际运行中可能不会看到每五行输出一起,而是按顺序逐个输出。要实现每五行换行,你需要额外处理,比如添加`\n`到适当的位置。
用C语言输出100-200之间个位数不是7的所有素数,每行显示5个。
以下是实现该问题的C语言代码:
```c
#include <stdio.h>
int is_prime(int n) {
if(n < 2) {
return 0;
}
for(int i = 2; i * i <= n; i++) {
if(n % i == 0) {
return 0;
}
}
return 1;
}
int main() {
int count = 0;
for(int i = 100; i <= 200; i++) {
if(i % 10 != 7 && is_prime(i)) {
printf("%d ", i);
count++;
if(count % 5 == 0) {
printf("\n");
}
}
}
return 0;
}
```
该代码中,我们首先定义了一个函数 `is_prime` 用于判断一个数是否为素数。然后在主函数中,我们遍历100到200之间的所有数,判断其个位数是否为7,以及是否为素数。如果符合条件,我们就输出该数,并且计数器加1。当计数器模5等于0时,我们就换行。最后返回0表示程序执行成功。
阅读全文