




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、C语言12级期末考题讲解,2020/10/11,2020/10/11,1,2020/10/11,2,1植树问题,Description 某学校植树节开展植树活动,已知树苗有m株,参加植树的同学有n人(且mn),请问每位同学平均可以植树几株?还有几株剩余? Input 输入两个整数m和n,分别表示树苗的数量和学生的人数(mn) Output 输出每位同学平均植树的数量及剩余的树苗数量。 Sample Input 163 32 Sample Output 5 3,2020/10/11,3,1植树问题:code,#include main() int m,n; scanf(%d, ,m/b:求商 m
2、%n:求余数,2020/10/11,4,2工资问题,Description 某工厂规定一个工人正常工作时间为每个月160小时。若一个工人本月工作时间不超过160小时,则每小时工资为20元。若本月工作时间超出160小时,超出部分可算作加班时间,加班时间每小时30元。输入该工人当月的工作时间,请计算并输出该工人当月的工资。. Input 输入一个正整数n,表示该工人当月工作n个小时。 Output 输出一个整数,单独占一行,表示该工人当月的工资。 Sample Input 170 Sample Output 3500,2020/10/11,5,2工资问题code,#include main() i
3、nt n; scanf(%d, ,2020/10/11,6,3回文数,Description “回文数”是一个正读和反读都一样的数,编程判断一个5位数n是否是一个回文数。 Input 输入一个整数n,10000=n=99999 Output 判断n是否是一个回文数,如果是,输出yes,否则输出no Sample Input 15751 Sample Output yes,2020/10/11,7,3回文数:code,#include main() int n; scanf(%d, ,2020/10/11,8,4分数数列求和,Description 输入一个正整数,计算1 - 1/4 + 1/7
4、 - 1/10 + 1/13的前n项之和,输出时保留2位小数。 Input 输入正整数n,表示项数。 Output 输出前n项之和,保留2位小数。 Sample Input 3 Sample Output 0.89,2020/10/11,9,4分数数列求和:code,#include #include #include main() int i,n; double number=1.0; scanf(%d, ,2020/10/11,10,5画箭,Description 在冷兵器时代,弓箭是最可怕的致命武器。弓由弹性的弓臂和有韧性的弓弦构成;箭包括箭头、箭杆和箭羽。现在,我们想要用字符串表示箭,
5、箭羽用+表示,箭杆的长度用减号的个数表示,比如”+-”,这是一个长度为3,向右射的箭。”-+”,这是一个长度为2,向左射的箭。 Input 输入一个非零整数n,-100=n=100,正数表示向右射的箭,负数表述向左 Output 按描述输出箭的形状 Sample Input -2 Sample Output -+,2020/10/11,11,5画箭code,int i,n; scanf(%d, ,2020/10/11,12,6各位数字和,Description 从键盘任意输入一个整数n,编程计算n的每一位数字相加之和(忽略整数前的正负号)。例如,输入n为-1234,则有1+2+3+4=10,输
6、出10。 要求定义并使用函数DigitSum()求n的各位数字和,其余功能在main()函数中实现。 int DigitSum(int n) /函数返回n的各位数字之和 Input 输入一个int范围内的正整数n。 Output 输出一个整数,为n的各位数字之和。 Sample Input 2345111 Sample Output 17,2020/10/11,13,6各位数字和:code,#include #include #include main() int number=0,n; scanf(%d, ,将此处代码提取出来,按题目要求封装成函数DigitSum,2020/10/11,14
7、,7最勤奋的学生,Description 鉴于晚自习迟到早退现象比较严重,计算机学院出台一个鼓励政策,记下每位同学到达和离开自习室的时间,然后根据上晚自习的时间的长短评选出每个班当天最勤奋的学生,第二天张榜表扬。现有计科1班某天晚自习的签到记录,请选出计科1班该天最勤奋的学生。 Input 第一行输入n。表示一共有n个记录(n = 100 )。接下来n行,每行三个数据,分别是姓名,到达时间和离开时间(姓名长度不超过20)。姓名不含空格,且不会有相同姓名出现。 Output 自习时间最长的姓名。 Sample Input 3 Jim 6:22 9:22 Lucy 8:00 9:45 Kate 6
8、:45 9:30 Sample Output Jim,2020/10/11,15,7最勤奋的学生:code,#define N 100 typedef struct stu char name20; int startH; int startM; int endH; int endM; int priority; STU;,2020/10/11,16,7最勤奋的学生:code,int i,n,temp=0,stunumber=0;/temp临时变量,记录学生自习的最长时间(分钟为单位) stunumber记录最长自习时间的学生编号 STU sN; scanf(%d,2020/10/11,17,
9、8多种进制数的排序,Description 有n个数字串,这n个数字串的进制可能不同,每个数字串的进制由数字k指定,k=2且k=10, 如,k=2,则数字串1101表示一个二进制数,转化为10进制数为13将这n个数转化为十进制,然后按从小到大的顺序输出。 Input 首先输入整数n(1=n=10),然后是n行,每行包含一个整数k和一个数字串,用空格隔开,该数字串表示一个k进制数。所有输入均为非负数。输入的所有整数均在int范围内。 Output 按从小到大的顺序输出这n个数对应的十进制数。,2020/10/11,18,多种进制数的排序,Sample Input 4 2 1101 3 22121
10、 8 276 10 134 Sample Output 13 134 190 232 Hint 提示:将这四个数转化为10进制数分别是:13 232 190 134,故排序后为:13 134 190 232,2020/10/11,19,8多种进制数的排序:code,#include #include typedef struct system /进制 int basenumber;/基数 int digit;/数字 SYS; int change(int bnumber,int digit); int powint(int bnumber,int digit); void bubble(int
11、 a,int n);,2020/10/11,20,8多种进制数的排序:code,int main() int i,n,a10; SYS s10; scanf(%d, ,2020/10/11,21,8多种进制数的排序:code,int change(int bnumber,int digit)/转换函数 int dec=0; int i=0; while(digit0) dec+=(digit%10)*powint(bnumber,i); digit/=10; i+; return dec; ,Math中自带的pow()函数,返回值为double型,2020/10/11,22,8多种进制数的排序
12、:code,int powint(int bnumber,int n) int j,temp=1; for(j=0;jn;j+) temp*=bnumber; return temp; ,2020/10/11,23,void bubble(int a,int n) int i,j,temp=0; for(i=0;iaj+1) temp = aj; aj = aj+1; aj+1 = temp; for(i=0;in-1;i+) printf(%d ,ai); printf(%d,an-1); ,8多种进制数的排序:code,分两次打印输出。最后一个数后面没有空格,2020/10/11,24,8
13、多种进制数的排序:code,2020/10/11,25,补充:矩阵边界和(指针专题),题目描述 给定一个m行n列的二维矩阵,求其四周边元素和。1=m、n=100000,可能是1行100000列,也可能是10000行50列,但保证矩阵元素不多于500000。你可能不能预定义数组的大小了,你要学会使用动态内存分配哦。你可以动态申请m*n个内存单元,然后用一维数组来存储二维数组,二维数组元素aij对应一维数组ai*n+j,i、j均从0开始。 输入 输入第一行是m和n,然后是一个m行n列的矩阵。 输出 输出一个整数,表示矩阵所有边界元素的和。 样例输入 3 4 1 2 3 4 5 6 7 8 9 5
14、4 6 样例输出 47,2020/10/11,26,code,#include #include main() int m,n; int i,j; int *p=NULL; int sum=0; scanf(%d %d, ,2020/10/11,27,for(i=0;im;i+) for(j=0;jn;j+) if(i=0|j=0|i=m-1|j=n-1) sum+= pi*n+j; printf(%d,sum); free(p);,1174: 矩阵转置(指针专题),题目描述 给定一个m行n列的二维矩阵,输出其转置矩阵。1=m、n=100000,可能是1行100000列,也可能是10000行50列。你可能不能预定义数组的大小了,你要学会使用动态内存分配哦。 输入 输入第一行是m和n,然后是一个m行n列的矩阵。 输出 输出转置后的矩阵,2020/10/11,28
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 压桩行业深度研究报告
- 2024-2025学年高中英语Unit3Inventorsandinventions单元加餐练新人教版选修8
- 2024-2025学年高中历史课时作业5列强入侵与民族危机人民版必修1
- 2024-2025学年高中语文课时作业13在马克思墓前的讲话含解析新人教版必修21
- 2024-2025学年高中历史第二单元西方人文精神的起源及其发展第6课文艺复兴和宗教改革课时作业新人教版必修3
- 2024-2025学年高中历史第五单元近现代中国的先进思想第22课孙中山的民主追求课时作业岳麓版必修3
- 2022-2027年中国四川省印刷行业发展概况及行业投资潜力预测报告
- 2025年皮革防霉剂1号项目投资可行性研究分析报告
- 潍坊碳化硅器件项目可行性研究报告
- 2025年微小型轴承项目可行性研究报告
- 机械制造技术基础PPT(中职)全套教学课件
- (完整版)小学英语语法大全-附练习题,推荐文档
- 数学人教版六年级下册简便运算课件
- 非遗申请书范本
- 注塑参数表完整版
- 吊顶工程课件
- 山东大学出版社六年级上册传统文化第一单元宽仁厚爱备课教案
- 2023年金华职业技术学院高职单招(英语)试题库含答案解析
- GB/T 16492-1996光学和光学仪器环境要求总则、定义、气候带及其参数
- FZ/T 01010-2012涂层织物涂层剥离强力的测定
- 混凝土耐久性课件
评论
0/150
提交评论