C语言若干小朋友站成一个圈玩数数游戏,从1开始大声数数,要求小朋友数的数不能含有数字3,且不能是3的倍数,直到100为止。请编写程序,使之能模拟打印出小朋友应该正确喊出的所有的数
时间: 2024-10-27 19:04:26 浏览: 29
为了实现这个需求,我们可以创建一个循环,遍历从1到100的所有整数,并检查当前数字是否包含数字3或是否是3的倍数。如果满足条件,则打印这个数字。下面是一个简单的C语言程序示例:
```c
#include <stdio.h>
#include <stdbool.h>
bool isdigit3(int num) {
char str[10];
sprintf(str, "%d", num);
for (int i = 0; str[i]; i++) {
if (str[i] == '3') return true;
}
return false;
}
bool isMultipleOf3(int num) {
return num % 3 == 0;
}
void printNumbers() {
int count = 1;
while (count <= 100) {
if (!isdigit3(count) && !isMultipleOf3(count)) {
printf("%d ", count);
}
count++;
}
printf("\n");
}
int main() {
printNumbers();
return 0;
}
```
在这个程序中,`isdigit3()` 函数用于检查一个数字是否包含数字3,`isMultipleOf3()` 则判断数字是否是3的倍数。`printNumbers()` 函数负责遍历并打印符合条件的数字。在`main()` 函数中调用 `printNumbers()` 来运行整个过程。
阅读全文