c语言简单计数问题_简单计数器c语言

其他范文 时间:2020-02-27 15:08:32 收藏本文下载本文
【www.daodoc.com - 其他范文】

c语言简单计数问题由刀豆文库小编整理,希望给你工作、学习、生活带来方便,猜你可能喜欢“简单计数器c语言”。

一、统计与计数问题

方法:计数变量c的初值为0,每输入一个数据,进行必要判断后,若输入的数据满足统计条件,则计数变量c自加1,这样当对所有输入进行判断后,计数变量c的值就是统计的结果。

例1:输入若干非0实数,直到输入0时停止,要求输入的实数最多不超过20个,统计其中正数的个数,负数的个数。分析:

设三个计数变量:

n-统计输入的数据总个数(为什么有必要?)posn-统计正数的数目 negn-统计负数的数目 #include “stdio.h” void main(){

int n,posn,negn;

double a;

n=posn=0;

printf(“Input real numbers:n”);

while(1){ /*典型循环结构(一)*/

scanf(“%lf”,&a);

if(a==0)

break;

if(a>0)

posn++;

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;

n=posn=0;

printf(“Input real numbers:n”);

scanf(“%lf”,&x);

while(a!=0&&n

if(a>0)

posn++;

n++;

if(n

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(“Input a string:n”);

while(1){

ch=getchar();

if(ch =='n')

break;

if(ch >='a'&&ch='A'&&ch

n++;

}

printf(“Number of letters is %d.n”,n);}

二、数列求和/求积:累加/累乘/递推法 1.基本累加/累乘问题

累加法:求和变量初值一般为0,每循环一次,求和变量自加一个数据,这样循环结束后,求和变量的值即为这些数据的和。累乘法:累乘变量初值一般为1,每循环一次,累乘变量自乘一个数据,这样当循环结束的时候,累乘变量的值即为这些数据连乘的积。

例1.输入n个100分制成绩(用整型),计算并输出平均成绩,要求输出精确到两位小数。#include “stdio.h” #define n 10 void main(){ double av = 0;printf(“Input %d int numbers:”,n);

for(i = 1;i

scanf(“%d”,&score);

av += score;}

av /= n;

printf(“av=%.2fn”,av);}

2.数列计算,求和/求积 例2:教材P116例题6.6 点评:该题数列通项比较简单,仅对分母进行递推计算,直接计算通项,累加通项;注意数列正负交叉项的控制方法。

例3:计算下面的级数,直到最后一项的绝对值小于10-6时停止计算,输出计算结果。

分析:令

有#include “stdio.h” #include “math.h” void main(){

double x,s,a;int k;

printf(“Input x=”);

scanf(“%lf”,&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计算以下算式,要求计算到最后一项小于是10-6时停止计算,输出计算结果。

分析:#include “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)){

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;

printf(“Input n,m:”);

scanf(“%d%d”,&n,&m);

if(n n){ printf(“Input data aren't correct.n”);

return;

}

if(n-m

for(k = 1;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(“Input x,n:”);

scanf(“%lf%d”,&x,&n);

printf(“Input a0,a1,…,a%dn,n);

y=0;

for(i = 0;i

scanf(”%lf“,&a);

y= y * x + a;

}

printf(”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')break;

if(c >='0'&&c

a=c-48;

else if(c >='a'&&c

a=c-87;

else if(c >='A'&&c

a=c-55;

else

break;

y=y*x+a;

}

printf(”y=%ldn",y);}

dd12秋06sp11计数问题二

第十一讲 计数问题二排列组合是计数问题中的常见题型,要利用好这部分知识,先要对乘法原理有一个深刻的认识。大家一定要区分清:排列计顺序,组合不计顺序。有些题往往要把这两个......

第一讲 几何图形中的计数问题教案

第一讲 几何图形中的计数问题(一)姓名:__________ 【教学目标】1、经历解题理解图形计数的规律及特点。2、通过学习体会线段计数的原理并能推广到角、共顶点的三角形,能够解决一......

小班语言简单教案

小班语言简单教案在教学工作者开展教学活动前,常常要写一份优秀的教案,借助教案可以有效提升自己的教学能力。那么大家知道正规的教案是怎么写的吗?下面是小编为大家收集的小班......

中班语言简单教案

刀豆文库小编为你整合推荐8篇中班语言简单教案,也许这些就是您需要的文章,但愿刀豆文库能带给您一些学习、工作上的帮助。......

c语言简单计算器

C语言小程序之简单计算器实现简单四则运算/*时间:2013年7月7日功能:实现简单计算器四则运算功能 */# include //# include int main(void){float a,b,result;char sym;int i;A......

下载c语言简单计数问题word格式文档
下载c语言简单计数问题.doc
将本文档下载到自己电脑,方便修改和收藏。
点此处下载文档

文档为doc格式

热门文章
点击下载本文