用C语言编写程序本题要求统计一个整型序列中出现次数最多的整数及其出现次数。 输入格式: 输入在一行中给出序列中整数个数N(0<N≤1000),以及N个整数。数字间以空格分隔。 输出格式: 在一行中输出出现次数最多的整数及其出现次数,数字间以空格分隔。题目保证这样的数字是唯一的。 输入样例: 10 3 2 -1 5 3 4 3 0 3 2 输出样例: 3 4
时间: 2023-06-12 13:07:45 浏览: 81
```c
#include <stdio.h>
#define MAX_N 1000
int main()
{
int n;
int a[MAX_N];
int count[MAX_N] = {0}; //记录每个数出现的次数
int max_pos = 0; //出现次数最多的数的下标
int max_count = 0; //出现次数最多的数的出现次数
//读入数据
scanf("%d", &n);
for (int i = 0; i < n; i++)
scanf("%d", &a[i]);
//统计每个数出现的次数
for (int i = 0; i < n; i++)
for (int j = 0; j < n; j++)
if (a[j] == a[i])
count[i]++;
//找出出现次数最多的数及其出现次数
for (int i = 0; i < n; i++)
if (count[i] > max_count) {
max_count = count[i];
max_pos = i;
}
//输出结果
printf("%d %d\n", a[max_pos], max_count);
return 0;
}
```
相关问题
用c语言编写程序实现:统计一个整型序列中出现次数最多的整数及其出现次数。 输入格式: 输入在一行中给出序列中整数个数N(0<N≤1000),以及N个整数。数字间以空格分隔
以下是用C语言编写的实现:
```c
#include <stdio.h>
int main()
{
int n, num[1000], i, j, max_num = 0, max_count = 0;
scanf("%d", &n);
for (i = 0; i < n; i++)
{
scanf("%d", &num[i]);
}
for (i = 0; i < n; i++)
{
int count = 1;
for (j = i + 1; j < n; j++)
{
if (num[i] == num[j])
{
count++;
}
}
if (count > max_count)
{
max_count = count;
max_num = num[i];
}
}
printf("%d %d", max_num, max_count);
return 0;
}
```
程序首先读取整数序列的长度,然后读取具体的整数。接着程序使用两重循环来遍历整数序列,统计每个整数出现的次数,并记录出现次数最多的整数及其出现次数。最后输出结果即可。
用c语言表达本题要求编写程序,计算序列 1 + 1/3 + 1/5 + ... 的前N项之和。 输入格式: 输入在一行中给出一个正整数N。 输出格式: 在一行中按照“sum=S”的格式输出部分和的值S,精确到小数点后6位(提示:使用.format( )函数输出)。
好的,我的程序如下:
```c
#include <stdio.h>
int main()
{
int n;
double sum = 0.0;
scanf("%d", &n);
for (int i = 1; i <= n; i++)
{
sum += 1.0 / (2 * i - 1);
}
printf("sum=%.6f", sum);
return 0;
}
```
程序思路:
1. 定义一个整型变量n和一个双精度浮点型变量sum(保证精度)。
2. 通过scanf函数输入n的值。
3. 使用for循环计算序列的部分和,i从1到n,每次加上1/(2i-1)。
4. 使用printf函数输出sum的值,格式化字符串为"sum=%.6f",保留六位小数。
注意:这里的序列是从1开始的,而不是从0开始的。
阅读全文