




已阅读5页,还剩11页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
C基础编程实习报告(2010 2011 学年第二学期)实习名称:认识实习(C基础编程)专 业: 计算机应用 学 号: 20107903 姓 名: 侯松颢 实习地点: 机房 实习时间: 7月12日 7月 18日 实习成绩: 指导教师(签字): 西南交通大学峨眉校区年 月 日第 15 页注:后附纸若干,内容包括实习目的和要求、实习内容、实习方式和安排、实习完成情况、实习心得与体会等。一、 实习目的和要求巩固C语言编程基础知识加强C语言综合编程能力训练熟练掌握C语言程序上机调试过程学会编写C语言程序解决简单计算题、字符串处理问题、日期和时间处理问题、高精度数处理等问题 提高外文资料阅读理解的能力。二、 实习方式和安排7月12日 另见通知 第1组 实习动员 中412 张强锋、唐加胜7月13日 上午8:00-11:00 第1组 C基础编程上课 6107 杨华莉7月14日 上午8:00-11:00 第1组 C基础编程上机 校机房4楼 杨华莉、袁平、翟勇涛、江磊7月15日 上午8:00-11:00 第1组 C基础编程上机 校机房4楼 杨华莉、袁平、翟勇涛、江磊7月16日 8:00-11:00 第1组 C二级强化上课 6107 杨华莉7月17日 上午8:00-11:00 第1组 C二级强化上机 校机房4楼 杨华莉、袁平、翟勇涛、江磊7月18日 上午8:00-11:00 第1组 C二级强化上机 校机房4楼 杨华莉、袁平、翟勇涛、江磊三、 实习内容(一) C基础编程(共10题,必做)*第1题 start*1 题目解析题目编号 1001问题描述 输入一个百分制的成绩t,将其转换成对应的等级,具体转换规则如下:90100为A;8089为B;7079为C;6069为D;059为E;输入数据 输入数据有多组,每组占一行,由一个整数组成。输出要求对于每组输入数据,输出一行。如果输入数据不在0100范围内,请输出一行:“Score is error!”。输入样例5667100123输出样例EDAScore is error!解题思路本题要求成绩的转换,属于简单。使用个swith语句就行了。2 源程序/* Author: HSH 计应1班 */#include stdio.hvoid main()int n; while(scanf(%d,&n)=1) if(n100|n0&n60) printf(En); else switch(n/10) case 10:case 9: printf(An); break; case 8: printf(Bn); break; case 7: printf(Cn); break; case 6: printf(Dn); break; 3 本地计算机运行结果截图4 OJ提交结果截图(截图最后一行为自己的提交结果)5 实现中常见的问题1) 分数间的划分出错;2) 在每行输出末尾缺少换行符。*第1题 end*第2题 start*题目编号 1004问题描述给定两个正整数,计算这两个数的最小公倍数。输入数据 输入包含多组测试数据,每组只有一行,包括两个不大于1000的正整数.输出要求对于每个测试用例,给出这两个数的最小公倍数,每个实例输出一行。输入样例10 14输出样例70解题思路本题关键在于求到第一个公倍数时就停止6 源程序/* Author: HSH 计应1班 */#include stdio.hvoid main()int x,y,i;while(scanf(%d%d,&x,&y)=2)for(i=x;ix*y;i+) if(i%x=0&i%y=0) break; printf(%dn,i); 7 本地计算机运行结果截图8 OJ提交结果截图(截图最后一行为自己的提交结果)9 实现中常见的问题3) 找倍数的时候容易出错4) 在出现最小倍数时没停下来*第2题 end*(二) C强化编程(共10题,至少选做4题)*第1题 start*题目编号 1004问题描述I have a very simple problem for you. Given two integers A and B, your job is to calculate the Sum of A + B.输入数据 The first line of the input contains an integer T(1=T=20) which means the number of test cases. Then T lines follow, each line consists of two positive integers, A and B. Notice that the integers are very large, that means you should not process them by using 32-bit integer. You may assume the length of each integer will not exceed 1000.输出要求For each test case, you should output two lines. The first line is Case #:, # means the number of the test case. The second line is the an equation A + B = Sum, Sum means the result of A + B. Note there are some spaces int the equation. Output a blank line between two test cases.输入样例21 2112233445566778899 998877665544332211输出样例Case 1:1 + 2 = 3Case 2:112233445566778899 + 998877665544332211 = 1111111111111111110解题思路本题关键在于将数用数组储存10 源程序/* Author: HSH 计应1班 */#include void main() char s11000=0,s21000=0,s31001; int a,t,b,j=0,i,h=0,s,t1=0,t2=0; scanf(%d,&t); if(t20) return ; for(i=0;it;i+) scanf(%s%s,s1,s2); while(s1j+);a=j-2; j=0; while(s2j+); b=j-2; while(s10=0&s11!=0) for(t1=0;t1=a;t1+) s1t1=s1t1+1; s1a-=0; while(s20=0&s21!=0) for(t1=0;t1=10) s=s%10,j=j+1; s3h=s+48; h+; if(a!=0) a-;t1=s1a-48; else t1=0; if(b!=0) b-;t2=s2b-48; else t2=0; printf(Case %d:n,i+1); printf(%s + %s = ,s1,s2); for(j=h-1,a=0;j=0;j-) printf(%c,s3j); if(i!=t-1) printf(nn); else printf(n); for(h+;h=0;h-)s3h=0; for(j=0;j=a;j+) s1i=0; for(j=0;j=b;j+) s12=0; 11 本地计算机运行结果截图12 OJ提交结果截图(截图最后一行为自己的提交结果)13 实现中常见的问题5) 输出格式容易出错6) 算法容易出错*第1题 end*第2题 start*题目编号 1004问题描述Ignatius was born in a leap year, so he want to know when he could hold his birthday party. Can you tell him?Given a positive integers Y which indicate the start year, and a positive integer N, your task is to tell the Nth leap year from year Y.Note: if year Y is a leap year, then the 1st leap year is year Y.输入数据 The input contains several test cases. The first line of the input is a single integer T which is the number of test cases. T test cases follow.Each test case contains two positive integers Y and N(1=N=10000).输出要求For each test case, you should output the Nth leap year from year Y.输入样例32005 251855 122004 10000输出样例2108190443236解题思路本题关键在于判断此后的第一个闰年是多少14 源程序/* Author: HSH 计应1班 */#include stdio.hvoid main() int num,x,i,n,leap; scanf(%d,&num); for(i=0;inum;i+) scanf(%d%d,&x,&n); leap=0; while(1!=0) if(x%4=0&x%100!=0)|(x%400=0) leap+;break; else x+; if(leap=n) printf(%dn,x);continue; while(1!=0) x=x+4; if(x%4=0&x%100!=0)|(x%400=0) leap+; if(leap=n) printf(%dn,x);break; 15 本地计算机运行结果截图16 OJ提交结果截图(截图最后一行为自己的提交结果)17 实现中常见的问题7) 找到的第一个闰年出错8) 没有考虑能被4整除,不能被100整除的数*第2题 end*第3题 start*18 题目解析题目编号 1006问题描述不死族的巫妖王发工资拉,死亡骑士拿到一张N元的钞票(记住,只有一张钞票),为了防止自己在战斗中频繁的死掉,他决定给自己买一些道具,于是他来到了地精商店前.死亡骑士:我要买道具!地精商人:我们这里有三种道具,血瓶150块一个,魔法药200块一个,无敌药水350块一个.死亡骑士:好的,给我一个血瓶.说完他掏出那张N元的大钞递给地精商人.地精商人:我忘了提醒你了,我们这里没有找客人钱的习惯的,多的钱我们都当小费收了的,嘿嘿.死亡骑士:.死亡骑士想,与其把钱当小费送个他还不如自己多买一点道具,反正以后都要买的,早点买了放在家里也好,但是要尽量少让他赚小费.现在死亡骑士希望你能帮他计算一下,最少他要给地精商人多少小费.输入数据 输入数据的第一行是一个整数T(1=T=100),代表测试数据的数量.然后是T行测试数据,每个测试数据只包含一个正整数N(1=N=10000),N代表死亡骑士手中钞票的面值.注意:地精商店只有题中描述的三种道具输出要求对于每组测试数据,请你输出死亡骑士最少要浪费多少钱给地精商人作为小费.输入样例2900250输出样例050解题思路本题关键在于如何考虑钱的分配问题19 源程序/* Author: HSH 计应1班 */#include stdio.hvoid main() int t,n,i,a,b,j,k,min,m; scanf(%d,&t); for(k=0;kt;k+) scanf(%d,&n); a=n/150; b=n/200; min=n; for(i=0;i=a;i+) for(j=0;j=b;j+) if(i=j&i=0) m=n; else m=n%(150*i+200*j); if(mmin) min=m; printf(%dn,min); 20 本地计算机运行结果截图21 OJ提交结果截图(截图最后一行为自己的提交结果)22 实现中常见的问题9) 钱的分配问题出错*第3题 end*第4题 start*23 题目解析题目编号 1009问题描述 某天gameboy玩魔兽RPG。有一个任务是在一个富含金矿的圆形小岛上建一个基地,以最快的速度采集完这个小岛上的所有金矿。这个小岛上有n(0n1000000)个金矿,每个金矿的矿藏量是相等的。而且这个小岛的地势非常平坦,所以基地可以建在小岛的任何位置,每个金矿的采矿速度只跟矿藏到基地的路程长度有关。为了不让这个任务太无聊,游戏设计者对这个小岛施了个“魔法”,规定矿工在小岛上只能正南正北正西正东走。也就是说矿工不能斜着在岛上走。这个小岛在一个二维直角坐标系中描述。你的任务就是帮gameboy找一个建造基地的位置,使矿工能以最快的速度采完所有矿。输入数据 输入数据有多组。每组数据的第一行是一个正整数n(0n1000000),表示小岛上有n个金矿。在接下来的n行中,每行有两个实数x,y,表示其中一个金矿的坐标。n=0表示输入数据结束。输出要求每一组输入数据对应一行输出,输出两个实数x,y(保留小数点后两位),也就是你找到的建造基地的位置坐标。如果坐标不唯一,可以任选一个输出。输入样例41.0 1.03.0 1.03.0 3.01.0 3.00输出样例2.00 2.00解题思路本题关键在于用数组储存好两个坐标24 源程序/* Author: HSH 计应1班 */#include stdio.hdouble x1000000,y1000000;void quicksort(double a,int l,int r) int i= l,k= r; doub
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 校园急救知识培训
- 柑橘溃疡病防治培训课件
- 构型设计基础知识培训课件
- 松鼠和小熊课件
- 杨虎课件观看
- 部编版语文七年级上册第12课《论语十二章》听评课记录6
- 沪科版物理八年级6.5《科学探究 摩擦力》听评课记录
- 员工管理知识培训记录课件
- 村消防知识培训课件活动
- 鲁科版高中化学选择性必修2第3章不同聚集状态的物质与性质3.2.5关于晶胞结构的拓展分析与计算课件
- 锅炉作业考试试题及答案
- 临平社工招聘试题及答案
- 人文医疗提升患者体验的共情实践
- 手机媒体概论(自考14237)复习题库(含真题、典型题)
- 2025-2030中国直升机旅游行业市场深度调研及发展趋势与投资前景预测研究报告
- 幼儿园陶艺课课件
- 林业高级职称试题及答案
- 幼儿园保育员一日生活流程培训
- 钩针编织技术课件
- 2025年上海市新版房屋租赁合同范本
- 2024下半年教师资格证考试《高中语文学科知识与教学能力》真题
评论
0/150
提交评论