用c语言实现组ch1字符个数就在数组2打印相同个数的#
时间: 2024-12-20 10:24:50 浏览: 8
在C语言中,如果你有一个字符数组`ch1`,你想统计其中某个特定字符(比如'#')的个数,并在另一个数组`array2`中打印出相同数量的该字符,可以按照以下步骤操作:
首先,你需要创建两个变量,一个用于存储字符 '#' 的计数,另一个用于遍历 `ch1` 数组。
```c
#include <stdio.h>
#define SIZE 100 // 假设 ch1 和 array2 都有100个元素
char ch1[SIZE];
int count = 0; // 初始化字符 '#' 的计数为0
char array2[SIZE]; // 定义第二个字符数组
// 函数来统计并复制 '#'
void printHashes() {
for (int i = 0; i < SIZE; i++) {
if (ch1[i] == '#') { // 检查每个字符是否是 '#'
count++; // 如果是,计数器加1
}
}
// 现在我们知道需要在 array2 中放置多少个 #
int index = 0;
while (count > 0) {
array2[index++] = '#'; // 将 '#' 添加到 array2
count--;
}
}
int main() {
// 填充 ch1 数组...
// ...
printHashes(); // 调用函数
printf("The number of '#' in ch1 is: %d\n", count);
printf("Array2 with same number of '#' is: ");
for (int i = 0; i < SIZE; i++) {
printf("%c ", array2[i]);
}
printf("\n");
return 0;
}
```
在这个例子中,我们假设 `ch1` 已经被填充了数据。`printHashes()` 函数会遍历 `ch1` 并统计 '#' 的数量,然后将这些 '#' 分配给 `array2` 直到所有的 '#' 都被复制完毕。`main()` 函数最后会打印出原始字符 '#' 的数量以及结果数组的内容。
阅读全文