程序功能:统计数字出现的个数

例如:输入1 2 3 1 2 4 2 3 1

输出:1 3

2 3

3 2

4 1

能看懂吗?就是1出现3次,2出现3次,3出现2次,4出现1次

#define M 50

main()

{int a[M],c[5],i,n=0,x;

scanf("%d",&x);

while (x!=-1)

{if (x>=0&&x<=4)

{a[n]=x;

n++;

}

scanf("%d",&x);

}

for (i=0;i<5;i++)

c[i]=0;

for (i=0;i

c[a[i]]++;

printf("\n");

for (i=1;i<=4;i++)

printf("%d %d\n",i,c[i]);

}

先把帖子中的程序讲解一下:

a[M]存放输入的数据;

c[5]存放0,1,2,3,4的个数;

i为循环时使用的变量;

n=0为输入时的数据个数增量,也即a数据的下标增长量;

x为输入时的临时变量。

其程序思想为:

1、定义一个50个int型的数组a来存放输入的数据。

2、定义一个5个int型的数组c来存放0,1,2,3,4的个数。

3、先输入一个数。

4、进入while循环,在其中可以反复输入数据。

5、按要求统计打印出所统计的数据个数。

由上可知,程序具有以下限制:

1、输入的数据个数不能超过50个。

2、统计的数字中,0没有统计打印出来。

3、程序只能统计数字1~4的个数,就通用性而言,如果要增加统计数字个数,就会使程序变得较长,并且使用了for循环来实现。如果要统计从0~9的每个数字的个数,那么其后就要使用10次for循环来实现统计。显然还可以具有其他方法实现。

4、从程序的效率来考虑,输入数据和统计数字个数,两者是分离的。如果当程序较大时;或统计较多时(如银行系统),程序将变得难以忍受。

5、其优点是可以存放保留了输入的数据,但不能超过50个数据。

结论:以上程序只是适用于较小的应用软件,或者是定制的应用程序。

下面我再提出一种程序思想,大家可以编制对比一下,这里就不给出代码了。

1、定制一个int型数组,用于存放0~9的数据个数。

2、定制变量x,用于存放输入的临时变量。

3、使用while循环来实现数据输入。

4、在循环中留有出口,可以使用kbhit()函数来实现,看一看函数库就行。

5、此项可选,定义一个int型数组a,用于存放输入的数据。

6、在输入数据后就直接

计算出数字的个数。不再单独利用for循环来进行统计,把输入和统计放在一起来实现。

以上方法叫做:计算任务量平均分配,因为把每次需要计算的任务量都平均分配到了用户在输入数据时的时间片里,用户感觉不到;一旦输入完毕,就可以立即打印结果。此种方法适合于大的软件工程,例如银行系统的数据统计

c语言统计出现个数,C语言统计数字出现的个数相关推荐

  1. 输入一个字符串,统计个数,输出字符数字等的个数

    统计一串字符的数字,字符等的个数.先整理一下这个题目的思路,对于一个字符串,一般都以'\0'结束,从第一个字符开始统计,遇到字母时alpha++;遇到数字时,digit++;遇到空格时,digit++ ...

  2. ACMNO.26 C语言-字符统计2 编写一函数,由实参传来一个字符串,统计此字符串中字母、数字、空格和其它字符的个数,在主函数中输入字符串以及输出上述结果。 只要结果,别输出什么提示信息。

    题目描述 编写一函数,由实参传来一个字符串,统计此字符串中字母.数字.空格和其它字符的个数, 在主函数中输入字符串以及输出上述结果. 只要结果,别输出什么提示信息. 输入 一行字符串 输出 统计数据, ...

  3. c语言 统计数量用count_C语言编程中统计输入的行数以及单词个数的方法

    统计输入的行数 标准库保证输入文本流以行序列的形式出现,每一行均以换行符结束.因此,统计行数等价于统计换行符的个数. #include /* count lines in input */ main( ...

  4. c语言编程统计学生个数,c编程统计并显示500至800之间所有素数的总个数以及总和...

    编一个程序,输入10个整数,统计并输出其中正数.负数和零的个数.要求用C语言编程. #includemain(){intt,i,c0=0,c1=0,c2=0;for(i=0;i excel 统计某列数 ...

  5. python输入一个英文句子、统计单词个数_C语言编程求一个英文句子中的单词数和最长单词的位置、长度及输出这个单词。c++编程 从键盘输入一个英文...

    C语言编程求一个英文句子中的单词数和最长单词的位置.长度及输出这个单词. c++编程 从键盘输入一个英文 www.zhiqu.org     时间: 2020-11-23 我刚做了一关于英文句子里面每 ...

  6. 统计正数和负数的个数用C语言数组,输入10个整数统计其中的正数和负数的个数,用数组实现...

    编一个程序,输入10个整数,统计并输出其中正数.负数和零的个数.要求用C语言编程. #includemain(){intt,i,c0=0,c1=0,c2=0;for(i=0;i 输入10个整数,统计并 ...

  7. c语言6行6列元素奇数的个数,C语言任意输入n个整数,分别统计奇数的和.奇数的个数.偶数的和.偶数的个数....

    输入任意2个整数m和n,计算并输出这两个数(包括这2个数)之间所有奇数之和(C语言) //#includevoidmain(){intm,n,i,min,max;printf("Please ...

  8. 要求统计10个整数中的奇偶数的个数C语言,C语言:输入10个整数,求出它们的和,统计其中偶数的个数,输出其中的奇数....

    #include #defineN10 inti; voidsum(inta[]) { intsum_num=0; for(i=0;i { sum_num+=a[i]; } printf(" ...

  9. c语言中计算一个字母的序数,C语言编程 输入一串字符统计英文字母的个数

    C语言编程:输入一行字符,至少50个,统计其中英文字母,数字,其他字母个数 楼上那个不能统计空格个数,我这个可以#include#includeintmain(){intcnt_c=0,cnt_n=0 ...

  10. 5, 计算1~100中所有7的倍数的个数(c语言编程题,编写程式,分别统计1~100中,满足3的倍数,7的倍数各有多少个...

    编写程式,分别统计1-100中,满足3的倍数,7的倍数各有多少个以下文字资料是由(历史新知网www.lishixinzhi.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 编写程式 ...

最新文章

  1. input core input.c (1)
  2. 佛祖保佑 永无bug
  3. 创建表头固定,表体可滚动的GridView(转)
  4. MacOS 12.0.X系统提示“未能装载磁盘映像,错误代码为109”的临时解决方法
  5. python报错对象没有属性_属性错误:函数对象在python中没有属性
  6. delphi 登录界面 主窗体 切换_.NET CORE(C#) WPF 方便的实现用户控件切换(祝大家新年快乐)
  7. dell电脑计算机专业,戴尔Dell专用英语_电脑基础知识_IT计算机_专业资料.doc
  8. ARKit何以从同类技术中胜出?
  9. 文件服务器实验报告,Server 2008 R2 文件服务器资源管理器实验报告.docx
  10. python 服务器后台运行
  11. lecture9-提高模型泛化能力的方法
  12. android nexus 10 刷机,谷歌Nexus 10 recovery卡刷rom 刷机教程
  13. [ARC120F]Wine Thief
  14. 安卓非微信内置浏览器中的网页调起微信支付的方案研究
  15. Celery实现短信注册接口
  16. D. Sonya and Matrix
  17. python中polyfit、poly1d函数
  18. EZ-USB FX2 LP CY7C68013A 开发指南(1)--基本概念
  19. 蚂蚁金服若IPO 信贷业务或将得到长远发展
  20. 设计数据密集型应用——数据系统的未来

热门文章

  1. LabVIEW编程开发Agilent 34401A(Keysight 34401A)例程与相关资料
  2. matlab读取wav文件出错,MATLAB读取wav文件
  3. PS调整图片内存大小快捷键
  4. android 实现自动拍照,android实现定时拍照功能
  5. codeblock找不到pthread
  6. LVGL8.2学习笔记
  7. C# 操作Excel加水印
  8. Pandas DataFrame 使用技巧
  9. 二代身份证读取 中控ID180 二三代身份证阅读器 Vue版本
  10. android 联机游戏平台,游聚平台/街机平台/主机联网/街机对战平台/网络街机