c语言n个数组成的新数,[2018年最新整理]C语言编程题目000.doc

[2018年最新整理]C语言编程题目000

题1. 统计字母的使用频率

一、题目:统计字母的使用频率

二、目的与要求

1. 目的:

通过编写程序统计字母的使用频率,培养学生综合利用C语言进行程序设计的能力,熟悉字符串的操作方法,加强函数的运用,提高软件系统分析能力和程序文档建立、归纳总结的能力。

2. 基本要求:

1)要求用C语言编程,在Visual C++环境下调试完成;

2)要求按照程序功能分成几个功能模块来实现,各个功能模块分别使用函数来完成;

3)要求应用本课所讲授的程序设计语言知识来解决问题

三、设计方法和基本原理

1. 课题功能描述

本程序的功能,就是要统计英文字母的使用频率。

2. 问题详细描述

为统计英文字母的使用频率,输入一个不包括空格的由英文字母组成的字符串,长度不超过200个字符。统计26个英文字母的使用频率,不区分大小写。最后按使用频率从大到小输出字母(小写字母)和使用频率(出现的次数)。

3. 问题的解决方案

按照程序要求,本程序应采用模块化设计方法,设计几个功能模块。例如(仅供参考):

l 将字符串中的大写字母转换为小写字母

l 统计输入的字符串中字母的使用频率

l 按使用频率从大到小进行排序

主函数中控制输入、函数调用和输出。

四、主要技术问题的描述

根据三的分析,主要问题在于:

1) 为统计字母的使用频率,定义一个长度为26的int数组存放所统计的各个字母的使用频率。

2) 在统计字母的使用频率时,不要使用if语句或switch语句,利用字母的ASCII码与数组元素下标之间的关系来求得。

3) 按使用频率从大到小进行排序时,建议使用指针数组更为方便。

五、创新要求

实现程序功能后,可进行创新设计:

1) 使用多文件,即主函数和各个函数分别存放在不同的.c文件中,在头文件中进行函数原型声明。

2) 读入一篇英文文档,并对其进行字母频率分析。

题2.指示灯控制

问题描述:

N盏灯排成一排,从1到N按顺序依次编号。有N个人也从1到N依次编号。第一个人(1号)将灯全部关闭。第二个人(2号)将凡是2和2的倍数的灯打开。第三个人(3号)将凡是3和3的倍数的灯做相反的处理(如果该灯为打开的,则将它关闭;如果该灯为关闭的,则将它打开)。以后的人都和3号一样,将凡是与自己编号相同的灯,以及是自己编号倍数的灯做相反处理。请编写程序实现。要求:程序中要显示每一个人所做工作的过程,例如:当第i个人操作时,则显示将i和i的倍数的灯做相反的处理过程;当第N个人操作之后,显示灯的最后状态。(建议:采用图形法,显示每一盏灯,并为每一盏灯加边框,用不同的颜色显示开灯或关灯)。

例如:当输入N为7时;

当第一个人操作时

则输出结果为:

第1盏灯是黑的

第2盏灯是黑的

第3盏灯是黑的

第4盏灯是黑的

第5盏灯是黑的

第6盏灯是黑的

第7盏灯是黑的

当第二个人操作时

则输出结果为:

第1盏灯是黑的

第2盏灯是亮的

第3盏灯是黑的

第4盏灯是亮的

第5盏灯是黑的

第6盏灯是亮的

第7盏灯是黑的

当第三个人操作时

则输出结果为:

第1盏灯是黑的

第2盏灯是亮的

第3盏灯是亮的

第4盏灯是亮的

第5盏灯是黑的

第6盏灯是黑的

第7盏灯是黑的

… … …

当第七个人操作时

则输出结果为:

第1盏灯是黑的

第2盏灯是亮的

第3盏灯是亮的

第4盏灯是黑的

第5盏灯是亮的

第6盏灯是亮的

第7盏灯是亮

题3.进制转换

课程设计任务书

一、题目:自然数的进制转换

二、目的与要求

1. 目的:

通过编写对自然数进行不同进制转换程序,培养学生综合利用C语言进行程序设计的能力,熟悉字符串的操作方法,加强函数的运用,提高软件系统分析能力和程序文档建立、归纳总结的能力。

2. 基本要求:

1)要求用C语言编程,在Visual C++环境下调试完成;

2)要求按照程序功能分成几个功能模块来实现,各个功能模块分别使用函数来完成;

3)要求应用本课所讲授的程序设计语言知识来解决问题.

三、设计方法和基本原理

1. 课题功能描述

本程序的功能,就是实现自然数的十进制、二进制、八进制、十六进制转换。即根据用户选择的进制和输入的数据,转换得到该数所对应的十进制、二进制、八进制

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值