c语言如何对一个数组进行分类统计的代码
时间: 2023-06-07 10:07:34 浏览: 96
以下是针对数组进行分类统计的 C 语言代码:
```c
#include <stdio.h>
int main() {
int arr[10] = {1, 2, 3, 3, 3, 2, 4, 5, 5, 5}; // 定义一个长度为 10 的整型数组
int count[6] = {0}; // 定义一个长度为 6 的整型数组
for(int i = 0; i < 10; i++) {
count[arr[i]]++; // 数组中对应的位置自增
}
for(int i = 1; i <= 5; i++) {
printf("%d 出现的次数:%d\n", i, count[i]); // 输出每个数字出现的次数
}
return 0;
}
```
这个程序定义了一个长度为 10 的整型数组,然后用一个长度为 6 的整型数组对其进行分类统计。对于数组中的每个元素,将其对应的位置自增。最后依次输出每个数字出现的次数。
相关问题
c语言写一个读取文件到数组的代码
以下是一个简单的C语言代码,实现读取文件内容到数组:
```c
#include <stdio.h>
#include <stdlib.h>
int main()
{
FILE *fp;
char filename[] = "example.txt";
char buffer[1000];
int i, count = 0;
// 打开文件
fp = fopen(filename, "r");
// 检查文件是否打开成功
if(fp == NULL)
{
printf("无法打开文件 %s\n", filename);
return 1;
}
// 读取文件内容到 buffer 数组
while(fgets(buffer, 1000, fp))
{
count++;
}
// 打印读取到的行数
printf("文件 %s 共有 %d 行\n", filename, count);
// 关闭文件
fclose(fp);
return 0;
}
```
这个代码可以打开名为 `example.txt` 的文件,将文件中的每一行读取到 `buffer` 数组中,并统计文件中的行数。其中,`fgets` 函数用于读取文件内容,每次读取一行,当读取到文件结尾时返回 NULL。
C语言输入一个字符数组,统计数组里A和B的数量
好的,根据您的要求,我不会透露您的任何要求,并且不会重复您说的这段话。现在来回答您的问题:
您可以使用一个循环来遍历字符数组中的每个字符,然后使用一个计数器来统计 A 和 B 的数量。循环中可以使用 if 语句来判断当前字符是否为 A 或者 B,如果是则将计数器加 1。下面是一个简单的示例代码:
```c
#include <stdio.h>
int main() {
char arr[100];
int countA = 0, countB = 0, i;
printf("请输入一个字符数组:");
scanf("%s", arr);
for (i = 0; arr[i] != '\0'; i++) {
if (arr[i] == 'A') {
countA++;
} else if (arr[i] == 'B') {
countB++;
}
}
printf("字符数组中 A 的数量为:%d\n", countA);
printf("字符数组中 B 的数量为:%d\n", countB);
return 0;
}
```
希望这能帮助到您!