C语言 求一串数字的平均值
来源:互联网 发布:超级玛丽java版 编辑:程序博客网 时间:2024/06/05 04:06
对上一篇求累加运算的程序修改一下就好啦:
/**输入一串加法:1+2+3+4+23+34+....输出总和*/#include<stdio.h>//#include<stdlib.h>#include<string.h>int isNumber(char c){ return (c>='0'&&c<='9');}int isAdd(char c){ return (c=='+');//如果是加号的话}void main(){ int flag=1; int *pflag=&flag; int count=1; int *pcount=&count; int sum=0; while(flag) { sum=add(pflag,pcount); printf("---sum=%d\n",sum); printf("---avg=%.2lf\n",(double)sum/(count-1)); }}int add(int* pflag,int *pcount){ int sum=0; int temp=0; int this_Num=0; char ch;//读入一个字符 int again; printf("-----------------------------累加求和运算------------------------------------\n"); printf(" 输入“回车”返回结果,并进行下一趟求和(例:1+2+3...\"回车\")\n"); printf(" 输入“#” 返回结果,并结束求和运算 (例:1+2+3...#)\n"); printf("-----------------------------------------------------------------------------\n"); printf("输入累加公式:\n"); while(1)//如果读入的是一个数字 { ch=getchar(); if(isNumber(ch)) { this_Num=((int)ch-48);//把字符转换成数字// printf("this_Num=%d\n",this_Num);// printf("temp*10=%d\n",temp*10); temp=temp*10+this_Num;//存放到temp中// printf("temp=%d\n",temp); } if(isAdd(ch)||ch=='\n'||ch=='#')//如果读入的是加法 { sum+=temp;//求和 *pcount=(*pcount)+1;//求和计数,也就是元素的个数// printf("*pcount=%d\n",*pcount); temp=0;// printf("sum=%d\n",sum); if(ch=='\n') break; if(ch=='#') *pflag=0;//函数内通过指针来控制外部的循环变量,把外部循环控制符改变,使得循环终止 } } //输出结果// printf("---sum=%d\n",sum); return sum;}
测试:
-----------------------------累加求和运算------------------------------------ 输入“回车”返回结果,并进行下一趟求和(例:1+2+3..."回车") 输入“#” 返回结果,并结束求和运算 (例:1+2+3...#)-----------------------------------------------------------------------------输入累加公式:1+2+3+4---sum=10---avg=2.50-----------------------------累加求和运算------------------------------------ 输入“回车”返回结果,并进行下一趟求和(例:1+2+3..."回车") 输入“#” 返回结果,并结束求和运算 (例:1+2+3...#)-----------------------------------------------------------------------------输入累加公式:1+2+3+4+5+6+7+8+9+10---sum=55---avg=3.93-----------------------------累加求和运算------------------------------------ 输入“回车”返回结果,并进行下一趟求和(例:1+2+3..."回车") 输入“#” 返回结果,并结束求和运算 (例:1+2+3...#)-----------------------------------------------------------------------------输入累加公式:1+2+3+4+5+6+7+8+9+10#---sum=55---avg=2.20Process returned 0 (0x0) execution time : 112.445 sPress any key to continue.
阅读全文
1 0
- C语言 求一串数字的平均值
- C语言求平均值
- C语言求平均值
- c语言下求平均值的几种思路
- C语言 java 求整形数组平均值
- 求一串数字中的最大数C程序
- 求一串数字中的最大数C程序
- (c语言)输入一串数字,输出字符串
- C/C++求两个数的平均值
- 给定一串数字求连续的最大和
- C语言求矩阵偶数的平均值和程序输出某数的问题
- [C语言]求有效数字的C语言算法
- c语言:不使用(a+b)/2这种方式,求两个数的平均值。
- 【C语言】不使用(a+b)/2这种方式,求两个数的平均值。
- 【C语言】求二维数组最大值最小值平均值
- [C语言]利用可变参数列表求平均值。
- PAT Basic 1054. 求平均值 (20)(C语言实现)
- C语言代码-可变参数(1)求平均值
- HttpClient学习总结
- 找工作这几个月
- [USACO15OPEN]被困在haybales(金)
- 消息队列实例
- fortran 知识点集合
- C语言 求一串数字的平均值
- 自定义View selector无效
- Android选择器类库,包括日期时间选择器、单项选择器、地址选择器、颜色选择器、文件目录选择器、数字选择器、星座选择器等
- mongoDB问题合集(持续更新)
- 思科路由模拟器 -- (1)路由配置
- 工程中特征选择
- BZOJ3504 危桥 [最大流]
- 2017年大数据和业务分析收入将超1500亿美元
- 手动用asp.net写TreeGrid