




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、一、统计与计数问题方法:计数变量c的初值为0,每输入一个数据,进行必要判断后,若输入的数据满足统计条件,则计数变量c自加1,这样当对所有输入进行判断后,计数变量c的值就是统计的结果。例1:输入若干非0实数,直到输入0时停止,要求输入的实数最多不超过20个,统计其中正数的个数,负数的个数。分析:设三个计数变量:n统计输入的数据总个数(为什么有必要?)posn统计正数的数目negn统计负数的数目#include "stdio.h"void main() int n,posn,negn; double a;
2、n=posn=0; printf("Input real numbers:n"); while(1) /*典型循环结构(一)*/ scanf("%lf",&a); if(a=0) break; if(a>0) posn+;
3、0; n+; if(n>=20) break; negn=n-posn; printf("posn=%d,negn=%dn",posn,negn);用典型循环结构(二)改写例1程序#include "stdio.h"void main() int n,posn,negn; double a;
4、 n=posn=0; printf("Input real numbers:n"); scanf("%lf",&x); while(a!=0&&n<20) if(a>0) posn+; n+; if (n<20)
5、0; scanf("%lf",&a); negn=n-posn; printf("posn=%d,negn=%dn",posn,negn);例2:输入一行字符,统计其中的英文字母个数。提示:即输入到字符'n'时停止输入#include "stdio.h"void main() char ch; int n = 0; printf("
6、Input a string:n"); while(1) ch=getchar(); if(ch ='n') break; if(ch >='a'&&ch<='z'|ch>='A'&&ch<='Z')
7、160; n+; printf("Number of letters is %d.n",n);二、数列求和求积:累加累乘递推法1.基本累加累乘问题累加法:求和变量初值一般为0,每循环一次,求和变量自加一个数据,这样循环结束后,求和变量的值即为这些数据的和。累乘法:累乘变量初值一般为1,每循环一次,累乘变量自乘一个数据,这样当循环结束的时候,累乘变量的值即为这些数据连乘的积。例1.输入n个100分制成绩(用整型),计算并输出平均成绩,要求输出精确到两位小数。#include "stdio.h"#
8、define n 10void main() double av = 0; printf("Input %d int numbers:",n); for(i = 1;i< = n;i+) scanf("%d",&score); av += score; av /= n; printf("av=%.2fn"
9、;,av);2.数列计算,求和求积例2:教材P116例题6.6点评:该题数列通项比较简单,仅对分母进行递推计算,直接计算通项,累加通项;注意数列正负交叉项的控制方法。例3:计算下面的级数,直到最后一项的绝对值小于106时停止计算,输出计算结果。分析:令有#include "stdio.h"#include "math.h"void main() double x,s,a;int k; printf("Input x="); scanf("%lf"
10、;,&x); a=1; s=0; k=0; while(fabs(a)>1e-6) s+=a; k+; a=x/k*a; printf("s=.2fn",s);例4:输入x计算以下算式,要求计算到最后一项小于是106时停止计算,输出计算结果。分析:#include
11、 "stdio.h"#include "math.h"void main() double s,x,a; int k; printf("Input x ="); scanf("%lf",&x); s = 0; a = 1; k = 0; while(fabs(a) > 1e-6)
12、0; s += a; k += 2; a *= -x * x / k / (k-1); printf("s=%.6fn",s);例5 计算fibonacci数列。例6 教材P116 例6.7例6输入n,m,计算组合数P=C(n,m) 。#include "stdio.h"void main() double p = 1.0; int m,n,k
13、; printf("Input n,m:"); scanf("%d%d",&n,&m); if(n < 0 | m < 0 | m > n) printf("Input data aren't correct.n"); return; if(n-m<m) m = n-m; /*这句有何作用?*/
14、 for(k = 1;k <= m;k+) p *= (double)(n-m+k)/k; /*此处为什么要强制类型转换?*/ printf("c(%d,%d)=%.0fn", n,m,p);#include "stdio.h"void main() int n,i; double a,x,y; printf("Inp
15、ut x,n:"); scanf("%lf%d",&x,&n); printf("Input a0,a1,a%dn,n); y=0; for(i = 0;i < n;i+) scanf("%lf",&a); y= y * x + a; printf("
16、;y=%.2fn",y);/*输入一行16进制字符串,变成长整数输出*/#include "stdio.h"void main() long y=0; int x=16,a; char c; printf("Input a hex number:"); while(1) c=getchar(); if(c ='n
17、9;) break; if(c >='0'&&c <='9') a=c-48; else if(c >='a'&&c <='z') a=c-87; &
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025至2030年中国高效燃油燃烧添加剂市场分析及竞争策略研究报告
- 2025至2030年中国镭射热转印膜市场分析及竞争策略研究报告
- 2025至2030年中国计测仪表市场分析及竞争策略研究报告
- 2025至2030年中国粗纹棉麻油画布市场分析及竞争策略研究报告
- 2025至2030年中国牵引轴承座市场分析及竞争策略研究报告
- 2025至2030年中国流量检测仪器市场分析及竞争策略研究报告
- 2025至2030年中国橡塑印章市场分析及竞争策略研究报告
- 2025至2030年中国无氧紫铜棒市场分析及竞争策略研究报告
- 2025至2030年中国扁脚电源线市场分析及竞争策略研究报告
- 2025至2030年中国崩解剂市场分析及竞争策略研究报告
- 2024年马鞍山含山县招聘高中教师笔试真题
- 高中数学第九、十章统计与概率章节测试卷-2024-2025学年高一下学期数学人教A版(2019)必修第二册
- 【真题】五年级下学期数学期末试卷(含解析)四川省成都市高新技术产业开发区2023-2024学年
- 种植质量安全管理制度
- 2025至2030中国大型发电机行业发展趋势分析与未来投资战略咨询研究报告
- 中国歌剧舞剧院管理制度
- 2025年炉外精炼工职业技能理论知识考试题库(含答案)
- 外墙真石漆修补方案(3篇)
- 2025年安徽省中考数学试卷真题(含标准答案)
- 道路养管协议书
- 2025年河北省专技人员公需课《人工智能时代的机遇与挑战-预训练大模型与生成式AI》答案
评论
0/150
提交评论