《c语言机试经典编程题重点全资料》由会员分享,可在线阅读,更多相关《c语言机试经典编程题重点全资料(47页珍藏版)》请在金锄头文库上搜索。
1、word本学期程序设计根底课程实行上机考核,现将考核有关事项通知如下:(1) 考核时间:本学期最后一次上机时间为机试。(2) 考核容:主要是算法设计与实现。考题来自本学期布置的作业、例题与一些补充的题目。(3) 考试形式:机试前进入机房时,每人随机抽取一道题同一个组的同学保证不抽到同一题,然后上机编程,调试通过后报告监考人员审核,审核通过后将源程序拷贝到监考人员U盘上,然后可以离开机房。源程序文件明必须是“学号.cpp,如“2012216827王梓丞.cpp。(4) 考试要求:机试时考试规如此同课堂考试一致,不允许带书、纸等。不能携带任何可用计算机处理的软件或数据(不允许任何私人携带的U盘、磁
2、盘或计算器) ,不能携带任何类型的通讯工具,包括无线电接收器、移动。(5) 考试成绩:本次机试成绩将在程序设计根底课程成绩中占25%的比重。(6) 其它有关事项由主考教师和监考人员负责处理。附:考试题集1. 学校曾经组织一次“程序设计大奖赛,规定本学期“程序设计课程的成绩可以因为在大奖赛上获奖而加5分,总分不超过100分。编程序,输入某同学的考试成绩,回答是否在竞赛中获奖,计算并输出该某同学的程序设计课成绩。#includevoid main()int m,n;printf(请输入考试成绩:n);scanf(%d,&m);printf(请选择获奖情况:1 获奖;2 未获奖n);scanf(%d
3、,&n);switch (n)case 1: m=m+5;break;case 2: m;if(m100)m=100;printf(你的最终成绩为:%dn,m);2. 编写一个程序,用户输入年份与月份两个数据,程序输出该月份的天数。提示:对2月要考虑是否闰年,闰年年份要么能被4整除且不能被100整除,要么能被400整除,除此之外都不是闰年。#includeint year,a;void main()printf(请输入年份 月份:);scanf(%d%d,&year,&a);if(a=1|a=3|a=5|a=7|a=8|a=10|a=12)printf(这个月有31天n);elseif(a=2
4、)if(year%4=0)&(year%100!=0)|(year%400=0)printf(这个月有29天n);elseprintf(这个月有28天n);elseprintf(这个月有30天n);3. 求一元二次方程ax2+bx+c=0的根。要考虑a、b、c三个系数不同的取值#include#includevoid main()float a,b,c,d;printf(请输入一元二次方程的三个系数a,b,c:n);scanf(%f%f%f,&a,&b,&c);if(a!=0)d=b*b-4*a*c;if(d0)printf(x1=%f,x2=%f,(-b+sqrt(d)/2*a,(-b-sq
5、rt(d)/2*a);elseif(d=0)printf(x1=x2=%f,(-b)/2*a);elseprintf(x1=%f+%fi,x2=%f-%fi,-b/2*a,sqrt(-d)/2*a,-b/2*a,sqrt(-d)/2*a);elseif(b!=0)printf(x=%fn,-c/b);elseif(c=0)printf(0=0!n);elseprintf(%f=0矛盾n,c);4. 学校曾经组织一次“程序设计大奖赛,规定本学期“程序设计课程的成绩可以根据大奖赛的成绩适度加分。加分规如此是:参赛者加5分,三等奖加15分,二等奖加20分,一等奖加30分,总分不超过100分。编程序,
6、输入某同学的考试成绩,回答在竞赛中获奖等级,计算并输出该某同学的程序设计课成绩。#includevoid main()int a,b;printf(请输入你的考试成绩:n);scanf(%d,&a);printf(请选择你程序设计情况:0 未参加 1 参赛 2 三等奖 3 二等奖 4 一等奖n);scanf(%d,&b);switch(b)case 0:break;case 1:a=a+5;break;case 2:a=a+15;break;case 3:a=a+20;break;case 4:a=a+30;if(a100)a=100;printf(你的最终成绩为:%d,a);5. 高速公路每
7、公里的收费标准按不同种类汽车如下:小汽车 car 0.50 元卡车 truck 1.00 元大客车 bus 1.50 元编程序,为某高速公路收费站计算各种车辆的收费额。#includevoid main()float a,c;int b;printf(请选择车辆类型:1 小汽车;2 卡车; 3 大客车n);scanf(%d,&b);printf(请输入车辆行驶的公里数:n);scanf(%f,&a);switch(b)case 1:c=0.5*a;break;case 2:c=1.0*a;break;case 3:c=1.5*a;printf(收费额为:%3f元,c);6. 设计一个模拟单步计
8、算器的程序,设该计算器只能作加、减、乘、除运算。用户输入形如 m#n的算式,其中m、n为运算数,#为运算符。需考虑运算符不合法,与除数为0的情况#includevoid main()float m,n;char ch;printf(请输入运算式:m#nn);scanf(%f%c%f,&m,&ch,&n);if(ch!=+)&(ch!=-)&(ch!=*)&(ch!=/)printf(您输入的运算符不合法!n);elseswitch(ch)case +:printf(%2f,m+n);break;case -:printf(%2f,m-n);break;case *:printf(%2f,m*n
9、);break;case /:if(n!=0) printf(%2f,m/n);elseprintf(分母为0无意义!n);7. 编写程序,输入一个4位自然数n,判断n是否是降序数。降序数是指对于n=d1d2dk有: d1d2dk#includevoid main()int n,a,b,c,d;printf(请输入一个四位自然数:n);scanf(%d,&n);a=n/1000;b=n%1000/100;c=n%100/10;d=n%10;if(ab&bc&cd)printf(该四位数为降序数!n);elseprintf(该四位数不是降序数!n);8. 编写程序,输入一个5位自然数n,判断n是
10、否对称数。对称数是指正序和反序读都相等的整数,如96769为对称数。#includevoid main()int n,a,b,c,d,e;printf(请输入一个五位数:n);scanf(%d,&n);a=n/10000;b=n%10000/1000;c=n%1000/100;d=n%100/10;e=n%10;if(a=e)&(b=d)printf(该五位数为对称数);elseprintf(该五位数不是对称数);9. 编写程序,判断给定的3位数是否为Armstrong数。Armstrong数是指其值等于它每位数字立方和的数,如153就是一个Armstrong数。#includevoid ma
11、in()int n,a,b,c;printf(请输入一个三位数:n);scanf(%d,&n);a=n/100;b=n%100/10;c=n%10;if(n=a*a*a+b*b*b+c*c*c)printf(该三位数为armstrong数);elseprintf(该三位数不是armstrong数);10. 编写程序,输入一个整数,判断它能否被3、5、7整数,并输出如下信息。(1) 能同时被3、5、7整数。(2) 能同时被两个数整数,并指明是被哪两个数整除。(3) 能被一个数整数,并指明这是哪个数。(4) 不能被所有3个数整除。#includevoid main()int x;printf(请输
12、入一个整数x:);scanf(%d,&x);if(x%3=0)&(x%5=0)&(x%7=0)printf(%d能同时被3、5、7整数n,x);if(x%3!=0)&(x%5=0)&(x%7=0)printf(%d能同时被5、7整数n,x);if(x%3=0)&(x%5!=0)&(x%7=0)printf(%d能同时被3、7整数n,x);if(x%3=0)&(x%5=0)&(x%7!=0)printf(%d能同时被3、5整数n,x);if(x%3!=0)&(x%5!=0)&(x%7=0)printf(%d能被7整数n,x);if(x%3=0)&(x%5!=0)&(x%7!=0)printf(%
13、d能被3整数n,x);if(x%3!=0)&(x%5=0)&(x%7!=0)printf(%d能被5整数n,x);if(x%3!=0)&(x%5!=0)&(x%7!=0)printf(%d不能被3、5、7整除n,x);11. 邮局寄包裹的费用是根据包裹的重量来收取的。一个重量为2kg或低于2kg的包裹收取3.25元。高于2kg的包裹,超出局部每千克收取1.05元,超出局部不足1kg按1kg计算。因此如果发件人发送重达5.63kg的包裹,就需要缴纳7.45元。编写程序,输入包裹的重量,计算并输出发件人须缴纳的费用。笔记本调试不成功#includevoid main()float m,n;int a;printf(请输入包裹的重量:n);scanf(%f,&m);if(m=2)n=3.25;elsea=m/1;if(m-a=0)n=3.25+(a-2)*1.05;el