用C语言写出以下代码:在一个长度小于1000的只有数字的字符串中输出能被15整除的数
时间: 2024-10-06 19:05:59 浏览: 26
上海2009年计算机二级考试题(c语言).pdf
你可以使用C语言编写如下的代码来实现这个功能。这里我们假设输入的字符串是一个字符数组,并且我们遍历该数组检查每个数字是否能被15整除:
```c
#include <stdio.h>
#include <stdbool.h>
#include <string.h>
bool is_divisible_by_15(char num[]) {
int n = strlen(num);
for (int i = 0; i < n && num[i] != '\0'; i++) {
if (num[i] >= '0' && num[i] <= '9') { // 检查是否为数字
int digit = num[i] - '0'; // 转换为整数值
if ((digit * 10 + (num[i+1]-'0')) % 15 == 0) { // 如果当前两位数能被15整除
printf("%d\n", digit * 10 + (num[i+1]-'0')); // 输出这个数字
}
}
}
}
int main() {
char input[1001]; // 假设字符串不超过1000个字符
printf("请输入一个只包含数字的字符串(长度小于1000): ");
fgets(input, sizeof(input), stdin); // 从用户输入读取字符串,忽略换行符
// 删除fgets产生的换行符
input[strcspn(input, "\n")] = '\0';
is_divisible_by_15(input);
return 0;
}
```
在这个程序中,`is_divisible_by_15`函数会检查连续的两个字符是否可以组成一个能被15整除的数字,并打印出来。注意,这里假设字符串中的数字都是相邻的。
阅读全文