谁有C++编程训练题,多多益善。

a类-简单问题

A1:设计一个菜单程序,选择数字键1~3分别输出屏幕中间的正三角形、倒三角形和菱形,选择数字4结束操作,返回操作系统状态。

A2:建立一个包含n个学生的通讯录的结构,将n个学生按名字排序。

A3:从键盘输入三个矩阵,输出三个矩阵的主对角线的和与积。

A4:字符的左右排序需要编译函数jsSort()以行为单位根据给定的条件对字符串进行排序,排序后的结果仍然逐行重新存储在字符串数组中。排序条件:字符串从中间分成两部分,左边部分按字符的ASCII码升序排序。排序后,左半部分与右半部分交换。如果原字符串长度为奇数,中间字符不参与处理,仍放在原位置。比如原字符串:dcbahgfe 432198765,处理后的字符串:hgfe abcd 876591234。

A5:新的完全平方数从三位整数(100 ~ 999)中找出合格的整数,从小到大存放在数组中。具体条件是既是完整的平方数,又有相同的两位数,如144,676等。要求通过编译后的函数返回满足该条件的整数及其个数。

A6:有一个一维数组,包含10个学生成绩,输出每个分数段的学生人数,平均分,最高分,最低分。

A7:写一个程序,求55555的除数中最大的三位数。

A8:写一个程序比较两个分数的大小。

A9:求这样一个三位数,等于每个位数的阶乘之和。

A10:找兔子问题。1年,有1对兔子。从出生后的第三年开始,每对兔子每年可以生下1对兔子。兔子的寿命是6年。n年有多少对兔子?

A11:用C实现时钟程序。

b类-中级问题

B1:设计一个菜单程序,选择数字键1生成10 [10,100]随机整数并排序(每行5个),选择数字2找出数组中是否有数字从键盘输出,选择数字3返回操作系统状态。

B2:从键盘输入一个字符串,将一个单词的首字母(两个空格之间的字符串)转换成大写字母,输出原字符串和所有转换后的单词,直到输出?*?结束转换和输出。

B3:四个操作问题。随机生成指定范围内的题目并统计分数,显示每道题的答题结果、分数和正确答案。(每次10通道,每个通道2分)

B4:输入几行文本,并输出包含给定单词的那些行。例如,输入文本是首先计算的表达式exprl。如果非零(真),那么表达式给定,但这是?是吗?输出是首先计算表达式exprl。

B5:写一个统计学生成绩的程序,需要输入五门课10学生的成绩,通过子函数计算每个学生的平均分:(1);(2)各门课程的平均成绩;(3)找出最高分对应的学生和作业。

B6:。从文本文件中读取文本,并计算每个数字和其他字符出现的次数。

B7:从文本文件中读取文本,将小写字母转换成大写字母,将大写字母转换成小写字母,其他字符不变,然后输出到另一个文本文件中保存。

B8:在C语言环境下开发一个简单的绘图程序。在C语言环境下开发一个简单的绘图程序,实现画点、线、图形。要求:能执行程序,能正确完成画点、线、图的功能。将一些函数分组并绘制图像。要有完整的开发文档,程序描述文件等。

B9:在C语言环境下实现复数运算。要求:编程实现复数的乘、除、幂运算。以程序包含的形式实现。包括功能分析文档、程序框图、程序描述文件等。它是可扩展的。

B10:在C语言环境中开发简单的结构化应用程序。要求:编程实现结构化应用,开发链表。它具有可扩展性和进一步的功能。包括功能分析文档、程序框图、程序描述文件等。

B11:在C语言环境下实现各种排序算法,比较排序程序的优缺点。要求:实现各种排序算法,比较排序程序的优缺点。完成比较报告。

B12。部分排序需要编程jsSort()函数,将1000 ~九千九百九十九之间的任意一个数按照每个数后三位的大小进行升序排列,然后取出满足这个条件的前五个数,依次存储在数组bb中。如果最后三位数相等,则按照原始值降序排列。比如治疗前:6012 5099 9012 7025 8088治疗后:9012 6012 7025 8088 5099。

B13。三重回文数查找并输出11 ~ 999之间的数m,满足m的平方和m的立方为回文。所谓回文数,是指数字对称的整数,如121、676、94249等。满足上述条件的数,如m=11,有121的平方,有1331的立方,都是回文。实现此功能需要函数int svalue(long m)。如果是回文,函数返回1,否则返回0。在主函数中输出三重回文。

B14。对满足特定条件的数字进行计数,从键盘上随机键入200个4位数,并将这些数字存储在数组A中..写一个函数,函数的作用是如果四位数字中每一位上的所有数字都是0或2或4或6或8,就统计出满足这个条件的数字cnt,并将这四位数字按降序存放在数组B中。

B15。统计40人四科(int)不及格人数,输出不及格学生名单。使用指针函数find(pr)判断是否有不及格分。Pr是(*pr)[4]。如果失败,返回当前行第一个课程的地址;如果失败,返回到下一行第一个课程的地址。

B16。用指针写字符串函数strcpy,strcmp,strcat,strlen。并编写程序来验证它。

B17。成绩管理系统使用文件和结构实现成绩的录入、查询、修改和排序。B18。地址簿管理使用文件、结构等。实现通讯录的数据录入、查找、更新、删除等功能。

B19。每天快速计算和口算练习题实现出题、评卷、重做错题、保存试卷的功能。可以选择问题中使用的数值范围和运算符号。

B20。学生成绩管理的功能需求:一个班级开设四门课程,分别是语文、数学、政治、英语。设计一个简单的学生成绩管理系统,需要简单的界面,程序段要分模块,有必要解释一下。实现班级学生名单和各科成绩的输入,统计总分和平均分,根据平均分以标准格式显示成绩,在指定位置插入学生,修改或删除指定学生的成绩。

B21。薪资管理的功能需求:薪资项目包括:部门、员工编号、姓名、基本工资、岗位津贴、工龄工资、水电费、已发工资等。设计一个简单的薪酬管理系统,需要简单的界面,程序段要分模块,所以有必要说明一下。输入各部门员工名单及其薪资,统计应付薪资,按照部门排序规范的格式显示薪资列表,插入指定岗位员工的薪资,或者修改、删除指定员工的薪资。

B22。通讯录管理功能需求:通讯录条目包括:序号、姓名、工作单位、电话号码、邮政编码、电子邮件等。设计一个简单的通讯录管理系统,需要一个简单的界面,需要区分程序段中的模块,并进行解释。输入通讯录数据,以工作单位排序的标准格式显示通讯录内容,在指定位置插入一个人的数据,或者修改或删除指定人的数据。

B23。图书信息管理系统的设计功能需求:设计一个简单的通讯录管理系统,要求有简单的界面,程序段要分模块,要有讲解。图书信息包括:书名、作者姓名、分类号、出版单位、出版时间、价格等。尝试设计一个图书信息管理系统,使其能够提供以下功能:系统以菜单方式工作(图书信息输入功能(图书信息以文件保存)-输入(图书信息浏览功能)-输出(查询和排序功能:(至少一种查询方式)-算法(按书名查询和按作者姓名查询(

B24:写一个程序从键盘输入一个字符串,将所有小写字母转换成大写字母,然后输出到一个磁盘文件“test”中保存。

B25:日常费用的辅助管理。利用C程序环境,开发学生日常费用管理软件。要求:(1)能管理有限的日常开支,完成收支平衡,费用预警等功能。(2)做好日常开支记录。(3)程序具有可扩展性。

B26:个人日常档案管理。应用C程序环境,开发学生日常档案管理软件。要求:(1)能管理有限的日常文件(如通讯录、个人信息库等。)并完成信息添加、查询等功能。(2)保存日常文件。(3)程序具有可扩展性。

B27:写一个学生成绩的程序,需要输入五门课10学生的成绩,输出按照选择的课程成绩排序。最多可以同时选择两个已排序的课程。

B28:模拟计算器通用C程序。

给定年、月、日,计算出一年中的某一天。需要编写一个计算闰年的函数和一个计算日期的函数。

B30输入五个学生四门课的成绩,然后计算:(1)每个学生的总分;(2)各门课程的平均成绩;(3)输出总分最高的学生的姓名和总分。

c类-难题

C1。员工档案和简明信息的生成。要求:以菜单形式提供以下四个功能:输入10员工数据、显示原始数据、生成简明员工数据(姓名和年龄)并显示输出、删除简明员工数据。这四个功能可以循环连续操作,直到输入0结束操作,返回操作系统状态。

C2。学生成绩管理。学生信息:姓名,性别,省份,电话。设计一个菜单程序,选择数字键1~3分别实现:输入学生信息,删除指定学生和信息并显示指定学生信息,选择数字4返回操作系统状态。(用文档完成)

C3。编程求任意对称正定矩阵的逆。

C4。从一个文本文件中读取文本,并将其输出到另一个文本文件。输出时,多个连续空格字符和水平制表符减少为一个字符,空行删除不输出。

C5。写一个加密文本文件的程序和一个解密它的程序。密码规则是:对于小写字母,A用X代替,B用Y代替,C用Z代替,D用A代替,E用B代替,...;对于大写字母,A用X代替,B用Y代替,C用Z代替,D用A代替,E用B代替,...;其他字符保持不变。

C6。在C语言环境中开发一个文本编辑器要求你能打开和保存文件。可以适当增加编辑功能或其他文件操作功能。提示:利用读写文件的操作实现打开和保存文件的功能。知识点:文件读写。

C7。C语言环境下开发简单四则运算的命令行计算器,要求通过命令行参数提供两个操作数和一个运算符,然后显示运算结果。因为命令行参数都是字符串,操作需要数值操作数,所以需要将字符串转换成对应的数值。函数的原型都在头文件stdlib.h中

C8。C语言环境下开发一个打字程序的要求:显示中文或英文文章示例后,用户可以对照着练习打字,输入后可以统计输入时间和正确率。提示:可以处理参考书中的字符串,需要进一步完善接口和功能。

C9。C语言环境下检索中文文本的要求:开发一个C语言环境下的中文文本(txt)检索程序,可以进行简单的统计(比如汉字在文本中出现的频率)。执行该程序可以正确完成词、词、短语的检索功能。应该有一个完整的开发文档。它是可扩展的。

C10。C语言环境下成绩管理要求:输入一个班级的学号,各门课程的成绩。用结构数组保存输入的信息,找出每个学生的平均分;然后按平均分排序,输出排序结果。它是可扩展的。

C11。在C语言环境下实现长整数的加减运算,需要输入两个长整数(100位)来实现加减运算。它是可扩展的。提示:可以处理参考书中的字符串,还需要进一步的功能。

C12。字符串倒置:从键盘以行为单位输入几个英文句子,将字符串中所有小写字母O左边的字符串内容移到字符串右边以行为单位存储,然后删除小写字母O,最后将处理后的字符串逐行重新存储在字符数组中。比如原文是:可以在任何字段上创建索引。你有正确的记录。结果是:n任何领域。余灿创建了一个索引rd。你有正确的记录。

C13。对一次考试的成绩进行统计,取M科(如六科、语文、政治、数学、物理、化学、外语),n人参加(如10000)。统计要求;大家的总(总)各科平均分按个人总成绩排序,最高分排第一。最终输出表如下所示。等级考试名称:外语总分:政治、数学、物理、化学-。-平均成绩:

C14。用array完成两个超长(小于100)正整数的相加。为了实现高精度加法,正整数m可以存储在一个n (n > 1)个元素的一维数组中,数组的每个元素存储一个十进制数,即第一个元素存储一位,第二个元素存储十位。,等等。这样,超长正整数的加法就可以通过数组中每个元素的按位加法来实现。

C15。写一个排名程序。根据学生序号输入学生成绩,从高到低依次输出学生排名、排名分数、同排名人数及其学号;同名学号同行输出,一行最多可输出10个学号。

C16。写一个程序,读取磁盘上的C语言源程序文件“test8.c”,删除程序中的注释后显示。