(较难)通讯的小程序,支持文件传输,并支持断点传输。
1、 【中】编写一段程序,找出小于500 的所有符合勾股定理的三角形的三条边长,并统计
执行的循环次数和三角形总数,写入文件。
如:3 4 5;4 3 5 ;5 12 13;…;475 132 493 ;…; 483 44 485; 5912 loops are executed ;
772 triples are found.
2、 【易】请编写一段程序,帮助小学生学习乘法。应用 rand 生成 100 以内的两个整数,
程序利用这两个整数输出如下的问题:How much is 16 times 27?然后由学生来计算答案。
如果正确,输出“very good !”并提问另一个问题,直到答对5 题结束。如果答案错误,
输出“No,please try again.”让学生重新计算这个问题,直到答案正确则进入下一题。
3、 【中】编写程序实现 “筛选法”求2-999 之间的所有质数。“筛选法”操作过程如下:
(1) 创建一个数组,将其所有元素都初始化为 1 (true )。下标为质数的元素保持
为1 不变,其它元素都逐一设置为0.
(2 ) 从数组下标为2 的数开始,每次发现值为1 的数组元素时,遍历数组中的剩
余元素,把其中下标是它的倍数的那些元素置为0.如对于数组下标2 来说,
4,6,8…等下标的数组元素都置为 0 ;对于数组下标 3 来说,6,9,12…等下标的
数组元素都置为0 ;依次类推。
(3 ) 完成这一工作后,数组元素为1 的下标即为质数。
4 、 【易】编写一段简单的用户密码保护程序。
(1) 输入用户密码不超过20 个字符,如果超过,则截断;
(2 ) 提示重新输入用户密码以确认前次输入的正确性,如果两次输入不一致,则要
求重新输入,直至输入正确;
(3 ) 对用户密码进行加密,函数encrypt 将一个字符指针作为参数,通过指针加1 实
现加密;
(4 ) 对用户密码进行相反过程的解密,函数decrypt 实现解密后的输出。
输出举例:
Enter your password: this is a secret
Re-enter your password:hello
Invalid password
Enter your password again: this is a secret
Re-enter your password: this is a secret
Your encrypted password: uijt!jt!b!tfdsfu
5、 【中】编写一段程序描述农场里的猫 Cat,每次出生一只小猫,就将猫放到围栏里,这
个围栏可以容纳7 只猫:
(1) 每只小猫出生时都会随机赋予一种皮毛颜色 (black/gray/brown),还将被随机赋
予一种眼睛颜色(green/blue/brown )。对于这两种属性,都要有get 和set 方法。
(2 ) 将猫放到围栏中时,某些组合会引起争斗,如果灰猫比棕色猫多,会打架;如
果有一只黑色棕眼睛的猫,同时至少一直黑色绿眼睛猫和至少一只黑色蓝眼睛
猫,也会发生争斗,编写check 的非成员函数确定猫是否会打架。
6、 【中】创建一个IntSet 类,使其能够存储一个整数集合。
(1) 应用new 和delete 操作符进行动态内存分配;
----------------------- Page 2-----------------------
(2 ) 定义UnionSet 成员函数,实现两个已有集合的“并”操作;
(3 ) 定义InterSet 成员函数,实现两个已有集合的“与”操作;
(4 ) 重载输出运算符<< ,实现集合元素的打印,每个数字之间用空格分开,所有数
字包含在{}中。
7、 【中】编写一个简易计算器,对两个double 型变量进行加、减、乘、除和指数操作,并
得到结果:
(1) 应用继承,使得每个算术运算互相分离,互不影响
(2 ) 设计工厂类,随机调度操作类型
(3 ) 应用多态,使得主程序对任意运算的调用方式都一致
8、 【易】开发一个交通工具Vechile 的层次体系。创建四个类Vechile 、Ship 、Car、Truck 。
(1) Vechile 类有名称、颜色、型号三个属性,有print()和horn()// 鸣笛 两个方法
(2 ) Ship 和car 从vechile 类继承而来,Truck 从Car 继承而来
(3 ) 实例化的派生类对象插入到一个Vechile 容器中,对于容器内的每个对象,输出
喇叭声和基本信息。
9、 【易】采用合成的方式编写Point、Square 和Cube 类,即Square 包含Point 对象,Cube
包含Square 对象,要求输出三种对象的类型、信息和面积。
10、 【易】请编写一段程序实现一个向量的排序
11、 【易】编写程序实现文件的合并功能。
12、 【易】有n 个整数,使前面各数顺序向后移动m 个位置,最后n-m 个数变成最前
面的数。编写一个函数实现。
13、 【易】编写一个模板函数,实现一个整数、长整数、浮点数和双精度数除以2 的计
算。动态生成各种类型的数据测试该模板函数。
14、 【中】编写一个用户登录程序:
(1) 输入用户名和用户密码,如果用户名不存在,或者密码错误,提示重新输入;
(2 ) 根据用户类型 (管理员、注册用户、游客),输出不同的操作菜单;
(3 ) 用户信息保存在文件中
15、 【中】编写超市收银程序,要求根据商品单价、数量和促销方式计算总价:
(1) 促销方式有打折 (不同折扣率)、直降 (不同降价)和全价三种方式;
(2 ) 随机生成促销方式;
(3 ) 从键盘输入单价、数量和促销方式,输出应收价 (不促销)和实收价
(4 ) 可重复计算,直到用户输入end 结束程序。