假设10个整数存储在数组a中,要求把其中能被12 整除的数标记为T,其他标记为’F。标记存储在字符数组b中下标相同的对应位置,并输出两个数组。补充下面程序的执行部分,实现以上功能,将调试好的程序和运行结果抄写在下面。C语言
时间: 2024-12-21 07:25:53 浏览: 13
在C语言中,你可以使用for循环遍历数组,同时检查每个元素是否能被12整除。如果可以,就将对应的标记字符设置为'T',否则设置为'F'。以下是实现这个功能的代码示例:
```c
#include <stdio.h>
#define SIZE 10
void mark_numbers(int a[], char b[]) {
for (int i = 0; i < SIZE; i++) {
if (a[i] % 12 == 0) { // 检查是否能被12整除
b[i] = 'T'; // 标记为'T'
} else {
b[i] = 'F'; // 标记为'F'
}
}
}
// 主函数
int main() {
int a[SIZE] = {24, 9, 36, 5, 72, 18, 45, 15, 60, 2};
char b[SIZE];
// 先初始化字符数组b
for (int i = 0; i < SIZE; i++) {
b[i] = 'F';
}
mark_numbers(a, b); // 调用标记函数
// 输出原始数组a
printf("Original array a: ");
for (int i = 0; i < SIZE; i++) {
printf("%d ", a[i]);
}
printf("\n");
// 输出标记后的数组b
printf("Marked array b: ");
for (int i = 0; i < SIZE; i++) {
printf("%c ", b[i]);
}
printf("\n");
return 0;
}
```
当你运行这个程序,会得到如下输出结果(假设输入的数组`a[]`中的数字):
```
Original array a: 24 9 36 5 72 18 45 15 60 2
Marked array b: T F T T T T F F T T
```
阅读全文