C语言:统计整型变量m中各数字出现的次数,-去掉一个最高分和一个最低分,然后求平均值,(注意最低分和最高分可能有多个数并列)
//统计整型变量m中各数字出现的次数,并存放在数组a中,其中,a[0]存放0出现的次数,a[1]存放1出现的次数。
#include <stdio.h>
void fun( int m, int a[])
{ int i;
for (i=; i<; i++)
/**********found**********/
a[i] = ;
while (m > )
{
/**********found**********/
i = m%;
a[i]++;
/**********found**********/
m = m/;
}
}
void main()
{ int m, a[],i;
printf("请输入一个整数 : "); scanf("%d", &m);
fun(m, a);
for (i=; i<; i++) printf("%d,",a[i]); printf("\n");
}
//将一组得分中,去掉一个最高分和一个最低分,然后求平均值,并通过函数返回,函数形参a所指存放得分的数组,形参n存放得分个数。
#include <stdio.h>
void NONO();
double fun(double a[ ] , int n)
{
double sum = ;
double min, max;
min = max = a[];
int c=,b=;
for (int i = ; i < n; i++)
{
if (a[i] > max) max = a[i];
if (a[i] < min) min = a[i];
}
for (int j = ; j < n; j++)
{
if (a[j] == max && c == ) { c++; continue; }//切记这里,需要设置标志位,因为最大数和最小数有可能有多个并列。
if (a[j] == min && b == ) { b++; continue; }
sum += a[j] / (n - );
}
return sum; } void main()
{ double b[], r; int i;
printf("输入10个分数放入b数组中 : ");
for (i=; i<; i++) scanf("%lf",&b[i]);
printf("输入的10个分数是 : ");
for (i=; i<; i++) printf("%4.1lf ",b[i]); printf("\n");
r = fun(b, );
printf("去掉最高分和最低分后的平均分 : %f\n", r );
NONO();
} void NONO()
{/* 本函数用于打开文件,输入数据,调用函数,输出数据,关闭文件。 */
FILE *fp, *wf ;
int i, j ;
double b[], r ; fp = fopen("in.dat","r") ;
wf = fopen("out.dat","w") ;
for(i = ; i < ; i++) {
for(j = ; j < ; j++) {
fscanf(fp, "%lf ", &b[j]) ;
}
r = fun(b, ) ;
fprintf(wf, "%f\n", r) ;
}
fclose(fp) ;
fclose(wf) ;
}
//错误解答:
double sum = ;
double min, max;
min = max = a[];
for (int i = ; i < n; i++)
{
if (a[i] > max) max = a[i];
if (a[i] < min) min = a[i];
}
for (int j = ; j < n; j++)
{
if (a[j] == max || a[j] == min) continue;//如果最大数最小数有多个时,会出现不准确现象。
sum += a[j] / (n - );
}
return sum;
//另一种解答:
double sum = ;
double min, max;
min = max = a[];
for (int j = ; j < n; j++)
{
if (a[j] > max) max = a[j];
if (a[j] < min) min = a[j];
sum += a[j];
}
sum = sum - max - min;
return sum/(n-);
C语言:统计整型变量m中各数字出现的次数,-去掉一个最高分和一个最低分,然后求平均值,(注意最低分和最高分可能有多个数并列)的更多相关文章
- python 统计工作簿中每个人名出现的次数
工作簿 需求:统计人名出现的次数 代码: # coding=gbk import pandas as pd import re def extract_chinese(txt): pattern = ...
- 笔试算法题(30):从已排序数组中确定数字出现的次数 & 最大公共子串和最大公共序列(LCS)
出题:在已经排序的数组中,找出给定数字出现的次数: 分析: 解法1:由于数组已经排序,所以可以考虑使用二分查找确定给定数字A的第一个出现的位置m和最后一个出现的位置n,最后m-n+1就是A出现的次数: ...
- 【Python】【demo实验18】【练习实例】【统计输入字符串中,数字的个数、英文字母的个数及其他符号的个数】
原题: 输入一行字符,分别统计出其中英文字母.空格.数字和其它字符的个数. (本题暂时不支持中文字符及汉字) 我的代码: #!/usr/bin/python # encoding=utf-8 # -* ...
- 计算1到N中各个数字出现的次数 --数位DP
题意:给定一个数n,问从1到n中,0~9这10个数字分别出现了多少次.比如366这个数,3出现了1次,6出现了2次. 题解:<剑指offer>P174:<编程之美>P132 都 ...
- Uva1640(统计数字出现的次数)
题意: 统计两个整数a,b之间各个数字(0~9)出现的次数,如1024和1032,他们之间的数字有1024 1025 1026 1027 1028 1029 1030 1031 1032 总共有10个 ...
- PHP array_count_values() 函数用于统计数组中所有值出现的次数。
定义和用法 array_count_values() 函数用于统计数组中所有值出现的次数. 本函数返回一个数组,其元素的键名是原数组的值,键值是该值在原数组中出现的次数. 语法 array_count ...
- STL 统计vector容器中指定对象元素出现的次数:count()与count_if()算法
1 统计vector向量中指定元素出现的次数:count()算法 利用STL通用算法统计vector向量中某个元素出现的次数:count()算法统计等于某个值的对象的个数. #include &quo ...
- 在论坛中出现的比较难的sql问题:16(取一个字段中的数字)
原文:在论坛中出现的比较难的sql问题:16(取一个字段中的数字) 所以,觉得有必要记录下来,这样以后再次碰到这类问题,也能从中获取解答的思路. 问题:取一个字段中的数字http://bbs.csdn ...
- 对字符串进行简单的字符数字统计 探索java中的List功能
题目: 统计一个字符串中数字和字符串的个数,并分别进行排列,要求 1.数字,字符串可以从键盘获取. 2.储存在list 3.统计数字个数,字符串个数 4.把数字和字符串按从小到大的顺序输出 5.不能使 ...
随机推荐
- python3练习100题——025
原题链接:http://www.runoob.com/python/python-exercise-example25.html 题目:求1+2!+3!+...+20!的和. 我的代码: s =[] ...
- 【牛客小白月赛21】NC201605 Bits
[牛客小白月赛21]NC201605 Bits 题目链接 题目描述 Nancy喜欢做游戏! 汉诺塔是一个神奇的游戏,神奇在哪里呢? 给出3根柱子,最开始时n个盘子按照大小被置于最左的柱子. 如果盘子数 ...
- TCP/IP详解,卷1:协议--链 路 层
引言 在 T C P / I P 协议族中,链路层主要有三个目的:(1)为 I P 模块发送和 接收 I P 数据报:(2)为 A R P 模块发送 A R P 请求和接收 A R P 应答:(3)为 ...
- Java-POJ1009-Edge Detection(未完成,有C++代码)
RLE编码,还不会,先搬运一下大佬的代码,理解之后再用Java自己实现 #include <map> #include <vector> #include <cstdli ...
- rpm命令怎么指定安装位置
rpm -ivh --prefix=路径 FILE.rpm
- Wx-公众号-关闭内置浏览器页面,返回公众号橱窗
方法一: pushHistory(); function pushHistory() { var state = { title: "title", url: "#&qu ...
- AndroidStudio3.3+OpenCV开发环境搭建
创建一个Android Studio普通项目 导入module 选择 File → New → Import Module 选择解压好的opencv-android-sdk下的sdk下的java,点O ...
- Codeforces Round #598 (Div. 3) C. Platforms Jumping
There is a river of width nn. The left bank of the river is cell 00 and the right bank is cell n+1n+ ...
- 【想见你】剧情解析byZlc
花两天时间刷完了想见你,精神有点恍惚. 要是刷题也能有这个尽头就好了... 下面给大家带来个人的剧(hu)情(bian)解(luan)析(zao) 穿越条件:一台老式随身听,一首last dance, ...
- 关于使用阿里云MAVEN镜像仓库
由于国内的某些不可明确的原因 国内连接google的时候十分慢,使得看github上的项目十分慢,这里我们可以修改build.gradle下的文件来使用阿里云仓库同步 会更快: // Top-leve ...