程序训练题目(一)
- 格式:doc
- 大小:47.50 KB
- 文档页数:2
单元3 拓展训练一、单项选择题1.表达式各运算量不能自动转换数据类型的下列选项是()。
A.char转换为intB.short转换为intC.unsigned char转换为unsigned intD.unsigned char转换为unsigned short2.定义int i;float a;double k;则下列表达式类型为double是().A.i*10+a+'k' B.i*10+a+(int)kC.i*10.0+a D.i*10+a+(float)k3.若x=2,y=3,则x&y的结果是()。
A.1 B.2 C.3 D.04.表达式0x13&0x17的值是是()。
A.0x17 B.1C.0x13 D.0x1f5.设有char x=3,y=6,z;z=x^y<<2;则z的二进制值是()。
A.00010100 B.00011000C.00011100 D.000110116.在位运算中,操作数每左移一位,其结果相当于是()。
A.操作数乘以2 B.操作数除以2C.操作数乘以4 D.操作数乘以47.设有定义语句:char c1=92,c2=92;则以下表达式中值为零的是()。
A.c1^c2 B.c1&c2C.~c2 D.c1|c28.设int b=2;表达式(b>>2)/(b>>1)的值是()。
A.4 B.2 C.0 D.89.整型变量x和y的值相等、且为非0值,则以下选项中,结果为零的表达式是()。
A.x || y B.x | y C.x & y D.x ^ y 10.设有int x=5;char z='a';则printf("%d\n",(x&1)&&(z<'z'));输出的结果是()。
A.0 B.1 C.2 D.311.在VC++6.0系统中,函数调用时实参的求值顺序是()。
按照给出程序框图计算专题题目特点:输入某个数值,按照图中给出的程序计算,若结果符合条件则输出;若结果不符合条件,则把结果重新输入再按照图中给出的程序第二次计算,如此下去,直到符合条件输出为止。
计算方法:设输入的数值为x ,先把图中给出的计算程序表示成一个算式,然后将给出的数值代入这个算式计算即可。
解此类题目的关键是:理解给出的程序图,并把把图中给出的计算程序表示成算式。
特别注意:程序框图中的运算是由前到后....依次进行的,不存在先乘除后加减的问题。
专题练习:1.如图是一个计算程序,若输入x 的值为5,则输出结果为( )A .11B .-9C .-7D .212.根据输入的数字,按图中程序计算,并把输出的结果填入表内:输入x-2输出-3+×3.根据输入的数字8,按图中程序计算,则输出的结果是()。
A.-0.125 B.-1.125 C.-2.125 D.2.93754.按如图的程序计算,若开始输入的值x为正整数,最后输出的结果小于20,则输出结果最多有()种.A.2个B.3个C.4个D.5个5.根据如图所示的程序进行计算,若输入x的值为-1,则输出y的值为.(2)÷-输入8 -6 2( 1.5)+- 1.59>-否输出是6.如图,是一个有理数混合运算程序的流程图,请根据这个程序回答问题:当输入的x 为-16时,最后输出的结果y 是多少?(写出计算过程)7.按下面的程序计算,如输入的数为50,则输出的结果为152,要使输出结果为125,则输入的正整数x 的值的个数最多有( ) A .0个 B .1个 C .2个 D .3个8.按下面的程序计算,若开始输入的值x 为正数,最后输出的结果为11,则满足条件的x 的不同值分别为 .结果是否大于-4YESNO输入右边的流程图,在输出圈的9.将下列分数32,45括号内依次填入输出的数.并写出计算结果.10.学习了有理数的运算后,小明设计了一种计算程序,如图所示,当小明输入-6时,则输出值y= .11.根据如图所示的计算程序,若输入的值x=-1,则输出的值y= .12.根据图中的程序,当输入x=5时,输出的结果y= .13.根据下面的运算程序,若输入|4|x=--时,输出的结果y= ;若输入113x=时,输出的结果y= 。
面向对象程序设计训练题目要求:1 每个同学选做一个题目作为本次训练题目。
2程序设计训练上交材料为两份:一份为纸质材料,写明题目、设计思路及实现代码,MFC 题目的设计思路可以写设计步骤。
排版合理,以A4纸打印。
在左侧装订两颗订。
封面在本网页下载。
另一份为电子档材料,每位学生完成后建立一个以自己学号为名的文件,将工程文件夹(可以将里面的Debug子文件夹删除)放在这个文件夹中,再拷贝给学委,最后统一刻成光盘上交。
注意:任何两位学生的相同题目如果纸质材料或电子档材料完全相同,则都被认定为不及格。
题目1 通信录的设计设计要求:一、定义人员(person)类,其中至少包括姓名、性别、电话、地址、邮政编码、邮箱、QQ号和类别(例如:同学、朋友、亲人等)。
二、实现下面的功能:1 设计菜单实现功能选择。
2 输入功能:输入人员信息,并保存到文件中;3 查询功能:1)能够根据姓名、电话精确查询人员信息;2)能够根据地址进行模糊查询人员信息。
3)根据人员类别查询人员信息。
4根据姓名对人员信息排序输出。
5根据姓名、电话修改人员信息。
6能根据姓名、电话删除人员信息。
题目2 学生成绩管理设计要求:一、定义学生类(student)类,其中至少包括姓名、性别、学号、班级和四门功课的成绩。
二、实现下面的功能1. 设计菜单实现功能选择;2. 输入功能:输入学生信息,并保存到文件中;3. 计算每个学生的总分与平均分并排序.4. 能根据学号修改学生信息;5. 能根据学号删除学生信息;6. 查询功能:1) 能够根据学号查询学生信息;2) 能够根据姓名、班级查询学生信息。
3)统计学生成绩,按照班级和科目计算平均分。
题目3 字符串类的设计设计要求:一、定义字符串(string)类,包含存放字符串的字符数组和字符串中字符的个数。
二、实现功能1 设计菜单实现功能选择;2 字符串的输入与赋值;3 字符串的运算,包括:1)连接 2)复制 4)交换 5)比较4 字符串的输出。
编程训练一、简单编程题目例如 如图所示的外圆切槽加工,其加工程序如下:例如:如图所示,圆柱螺纹加工,螺纹的螺距为 1.5mm ,车削螺纹前工件直径φ42mm ,第一次进给背吃刀量0.3mm ,第二次进给背吃刀量0.2mm ,第三次进给背吃刀量0.10mm ,第四次进给背吃刀量0.08mm ,采用绝对值编程。
基点坐标 :A(26,0) B(28,-1) C(28,-20) D(32,-20) E(42,-35) F(42,-50) G(45,-50)根据加工要求选用刀具:2号为外圆左偏精车刀。
切削用量表二、在GSK980-TD 数控车床上,加工如图所示零件,试编制精车加工程序。
U /2X三、在 FANUC O-TD数控车床上加工如图所示零件,试编制其加工程序。
已知条件:毛坯为φ60×95的棒料,材料为45钢。
从右端至左端轴向走刀切削;粗加工每次进给深度2.0mm,进给量为0.25mm/r;精加工余量X向0.4mm,Z向0.1mm;切槽刀刃宽4mm。
加工路线为:(1)粗车外圆。
从右至左切削外轮廓,采用粗车循环。
(2) 精车外圆。
右端倒角→φ20mm外圆→倒角→φ30mm外圆→倒角→φ40mm外圆。
(3)切断。
根据加工要求选用3把刀具:1号为外圆左偏粗车刀,2号为外圆左偏精车刀,3号为外圆切断刀。
答:设工件右端面为编程坐标原点。
(毛坯为锻件,余该零件的加工程序如下:程序说明答:该零件的加工程序如下:程序说明O0002;程序号G50 X100. Z50.;M03 S1000;T0100;N1;工序(一)外圆粗切削G00 G99 X44.0 Z1.0;G71 U2. R1.;外圆粗车循环点G71 P10 Q11 U1. W0.1 F0.15;X向精加工余量为0.5mm,Z向精加工余量0.1mm N10 G0 X0;工件轮廓程序起始序号(N10),刀具以G0速度至X0 G01 Z0 F0.1 ;进刀至Z0X20.0 K-1.0;切削端面,倒角1×45ºZ-20.0;切削φ20外圆,长20mmX30.0 K-1.0;切削端面,倒角1×45ºZ-50.0;切削φ30外圆,长50mmX40 K-1.0;切削端面,倒角1×45ºZ-84.0;切削φ40外圆,长84mmN11 G01 X43.0;工件轮廓程序结束序号(N11)G00 X100. Z50. T0100;X轴、Z轴回换刀点T0202;M03 S500;N2;工序(二)外圆精车G00 X44.0 Z1.0;外圆精车循环点G70 P10 Q11;精车外圆指令,执行N10至N11程序段G00 X100. Z50. T0200;刀具回换刀点T0303;M03 S300;N3;工序(三)切断G0 X42.0 Z-84.0;切断刀循环点G01 X-1.;切断G04 X2;G01 X45. F0.1;G00 X100. Z50. T0300;X轴、Z轴回换刀点M30;程序结束四、在FANUC O-TD数控车床上加工如图所示零件,试编制其加工程序。
按照给出程序框图计算专题题目特点:输入某个数值,按照图中给出的程序计算,若结果符合条件则输出;若结果不符合条件,则把结果重新输入再按照图中给出的程序第二次计算,如此下去,直到符合条件输出为止。
计算方法:设输入的数值为x,先把图中给出的计算程序表示成一个算式,然后将给出的数值代入这个算式计算即可。
解此类题目的关键是:理解给出的程序图,并把把图中给出的计算程序表示成算式。
特别注意:程序框图中的运算是由前到后....依次进行的,不存在先乘除后加减的问题。
专题练习:1.如图是一个计算程序,若输入x的值为5,则输出结果为()A.11 B.-9 C.-7 D.212.根据输入的数字,按图中程序计算,并把输出的结果填入表内:3.根据输入的数字8,按图中程序计算,则输出的结果是()。
A.-0.125 B.-1.125 C.-2.125 D.2.93754.按如图的程序计算,若开始输入的值x为正整数,最后输出的结果小于20,则输出结果最多有()种.A.2个B.3个C.4个D.5个(2)÷-输入8 -6 2( 1.5)+- 1.59>-否输出是输入x-2 输出-3+ ×5.根据如图所示的程序进行计算,若输入x的值为-1,则输出y的值为.6.如图,是一个有理数混合运算程序的流程图,请根据这个程序回答问题:当输入的x为-16时,最后输出的结果y是多少?(写出计算过程)7.按下面的程序计算,如输入的数为50,则输出的结果为152,要使输出结果为125,则输入的正整数x的值的个数最多有()A.0个B.1个C.2个D.3个8.按下面的程序计算,若开始输入的值x为正数,最后输出的结果为11,则满足条件的x 的不同值分别为.9.将下列分数32,45输入右边的流程图,在输出圈的括号内依次填入输出的数.并写出计算结果.结果是否大于-4YESNO10.学习了有理数的运算后,小明设计了一种计算程序,如图所示,当小明输入-6时,则输出值y= .11.根据如图所示的计算程序,若输入的值x=-1,则输出的值y= .12.根据图中的程序,当输入x=5时,输出的结果y= .13.根据下面的运算程序,若输入|4|x =--时,输出的结果y= ;若输入113x =时,输出的结果y= 。
数字反序的应用题训练题目一:颠倒数字请编写一个程序来颠倒输入的整数数字,并输出颠倒后的结果。
例如,对于输入的数字12345,输出应为54321。
解答:数字反序是一道常见的应用题,涉及到数值的操作与逻辑判断。
下面是一个简单的编程实例,实现了颠倒数字的功能。
```pythondef reverse_num(num):if num < 0: # 判断是否为负数num = -num # 将负数转为正数reversed_num = -int(str(num)[::-1]) # 将数字转为字符串,取反序,再转为整数else:reversed_num = int(str(num)[::-1]) # 将数字转为字符串,取反序,再转为整数return reversed_num# 测试num = int(input("请输入一个整数:"))reversed_num = reverse_num(num)print("颠倒后的数字为:", reversed_num)```题目二:颠倒列表元素请编写一个程序来颠倒输入列表中元素的顺序,并输出颠倒后的列表。
例如,对于输入的列表[1, 2, 3, 4, 5],输出应为[5, 4, 3, 2, 1]。
解答:除了颠倒数字,我们还可以对列表中的元素进行反序操作。
下面是一个简单的编程实例,实现了颠倒列表元素的功能。
```pythondef reverse_list(lst):reversed_lst = lst[::-1] # 利用切片操作,将列表元素进行反序return reversed_lst# 测试lst = input("请输入一个列表(元素之间用逗号分隔):").split(',') lst = [int(num) for num in lst] # 将输入的字符串列表转为整数列表reversed_lst = reverse_list(lst)print("颠倒后的列表为:", reversed_lst)```题目三:判断回文数请编写一个程序来判断输入的数字是否为回文数,并输出判断结果。
C语言程序编码训练题目一、程序设计题目:简单的学生成绩管理程序程序设计功能及要求:(1)总人数定义为宏,数据使用文件存放;(2)输入学生姓名学号,及五门成绩,并计算每个学生五门功课的平均分,并按平均分排列名次,若平均分相同则名次并列;结果写入文件并按格式打印在屏幕上。
⑶统计全班每门课程的平均分,并计算各分数段(60以下,60~69,70~79,80~89,90以上)的学生人数;结果写入文件,并按格式在屏幕上打印;⑷在屏幕上打印出所有不及格学生的下列信息:学号,不及格的课程名,该不及格课程成绩;⑸在开始画面加入简单的菜单便于选择各种功能。
例:1学生条目输入2成绩统计3分数段统计4不及格学生筛选⑹文件格式要求1.原始数据文件格式(具体数据和项目自行编写)学号姓名英语C语言高等数学…………..1张三7689782李四….….….2.输出数据文件(由程序自动生成)1)学生综合成绩文件。
2)学号姓名英语C语言高等数学…………….平均成绩名次1张三768978…………..2李四….….….3)统计结果文件。
4)分数段英语C语言高等数学………………….<602…60~698…70~795…80~8910…⑺加入优等生统计功能,要求按优等生条件筛选出优等生的条目存入单独文件,并输出到屏幕。
优等生标准(满足之一即可):1平均成绩上80。
2平均成绩及格但未上80,有单科成绩上90。
3平均成绩未及格,有单科满分。
二、程序设计题目:简单的同学通讯录程序设计[问题描述]具有数据插入、修改、删除、显示、查询和统计功能的电话簿管理程序。
[程序设计功能及要求]⑴人数不定,数据使用文件存放。
⑵记录每位同学的学号、姓名、性别、工作单位、电话号码和E-mail地址建立单独的条目,存入数据文件。
⑶可对记录中的姓名和电话号码等进行修改。
⑷可增加或删除记录⑸可显示所有保存的记录⑹加入统计功能,可以统计男女同学或总人数。
⑺加入查询功能,通过姓名、学号或电话号码查询到同学的条目。
Python程序阅读训练(一)1)已知列表a的各元素分别为70,53,57,28,30,77,1,76,执行下列Python代码,则列表a 的各元素值变为( C ):for i in range(0,2):min=ifor j in range(i+1,7-i):if a[j]>a[j+1] :a[j],a[j+1]=a[j+1],a[j]if a[j]<a[min]: min=jif min!=i: a[i],a[min]=a[min],a[i]A.53, 28, 30, 57, 1, 70, 76, 77B. 70, 53, 57, 28, 30, 1, 76, 77C.1, 28, 53, 30, 57, 70, 76, 77D.1, 28, 57, 53, 30, 77, 70, 762)运行程序,下列输入( C )则输出为”Yes”n=int(input())k=ni=0a=[0]*10while n>0:a[i]=n%10n=n//10i=i+1s=0for j in range(i):s+=a[j]**iif k==s:print('Yes')else:print('No')A. 21B. 90C. 153D. 4003)某算法部分流程图如右图所示,执行该流程,若输出k的值是4,则输入n的值可以为( C )A.24B.36C. 48D. 494)执行如下Python代码后,s的内容不可能...是( C )import random as rds=''t=int(rd.random()*26)for i in range(1,5):if i%2==1:s=s+chr((t+i)%26+65)else:s=s+chr((t-i)%26+65)print(s)A.TQVOB. MJOHC. CZEYD.YVAT5)指出如下Python程序的功能:s=input()y=0d=[0]*4for i in range(len(s)):ch=s[i]if 'a'<=ch<='z':x=0elif 'A'<=ch<='Z':x=1elif '0'<=ch<='9':x=2else:x=3d[x]+=1if d[x]==1:y+=1功能:先将输入字符串,再统计该字符串出现字符的种类。
程序综合训练(一)
共25题,请于两周内完成。
1、
2、 编写一个程序,键盘接收三个整数,给出这三个数的和数、乘积和平均值。
3、 编写一个程序,输入华氏温度,输出相应的摄氏温度。
转换公式是:c = (f - 32) / 1.8,c 表示摄氏度,f 表示华氏度。
/* 把华氏温度转换为摄氏温度,要求保留一位小数 */
4、 编写一个程序,键盘接收一个一位的整型数,经转换,用字符函数putchar 输出。
例如输入整数5,输出字符5。
5、 编写一个程序,输入半径,计算球体表面积(2
4r s ⋅=π)和体积(334r v ⋅=π)。
6、输入3个整数,输出其中的最小值。
7、输入一个字符,如果它是大写字母,则输出相应的小写字母;如果它是小写字母,需输出相应的大写字母;其它字符原样输出。
例如:输入F ,输出f ,输入b ,输出B ,输入7,输出7。
8、、函数
1 x>0
y= 0 x=0
-1 x<0
⑴ 用条件表达式求函数值y 。
y = x>=0 ? (x>0?1:0) : -1
⑵ 用if 语句编程,输入x ,输出y ,并给出你所使用的测试用例。
测试用例:(1)x =2,y =1 (2)x =0,y =0 (2)x =-2,y =-1
9、判断输入字符的种类,即区分空格、数字字符、大写英文字母、小写英文字母和其它字符。
10、输入三角形三条边的值,请判断它是等边三角形、等腰三角形还是不等边三角形。
请编写相应程序。
(提示:作为完整的考虑,应该判断三条边是否能构成一个三角形)
11、新闻记者都善于提问,请模仿记者:若输入1打印who ,输入2打印which ,输入3打印
where ,输入4打印why ,输入5打印what ,输入其它数打印don ’t know 。
请编写相应程序。
12、编写输出200以内所有能被7整除的数据的程序。
13、从键盘输入n 个数,找出其中最小值,请编写相应程序。
14、键盘输入正整数m 和n (m<n ),计算m~ n 之间所有奇数之和与偶数之和,请编写相应
程序。
15、编写程序,输入一个整数,求它的各位数之和及位数。
例如123的各位数之和是6,位数
是3。
16、编写程序,输入一行字符,分别统计出其中的英文字母、空格、数字和其他字符的个数。
17、有一个分数序列
12 ,23 ,35 ,58 ,813 ,……
编写程序求出这个序列的前n 项之和。
18、用一张一元票换1分、2分和5分的硬币(至少各一枚),问有哪几种换法?各几枚?
19、求1到10000之间所有满足各位数字的立方和等于它本身的数。
例如153的各位数字的
立方和是13+53+33=153
20、从键盘输入10个正整数进行求和,如果错误地输入了负数,则求和结束。
请分别用braek
和不用break 编写相应程序。
21、父亲今年30岁,儿子今年6岁,问多少年后父亲的年龄是儿子的2倍,请编写相应程序。
22、一天一只小猴子摘下一堆桃子,当即吃了一半,还觉得不过瘾,又多吃了一个。
第二天接
着吃了前一天剩下的一半,再又多吃了一个。
以后每天如此。
到第10天只剩下一个桃子。
问小猴一共摘了多少桃子,请编写相应程序。
程序采用递归法倒推:第10天剩一个,第九天=(1+1)×2,……依此类推
23、一个球从100米高度自由落体,反弹后回到原来高度的一半,按此规律,到第8次落地
时,反弹多少高度?行程共有多少米?
24、验证哥德巴赫猜想:任何一个大于6的偶数均可表示为两个素数之和。
例如6=3+3,
8=3+5,…,18=7+11。
要求将6~100之间的偶数都表示成两个素数之和,打印时一行打印5组。
25、输入一个长整数,从高位开始逐位分割并输出。
例如输入123456,逐位输出:1,2,3,
4,5,6。