2017-2018夏季学期-计算机学院首页.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
2017-2018学年夏季学期 《计算机程序设计实训》(0830A033, 0869A001)安排 1 概述 确认过眼神,你们选对了计算机学院的两个专业。还确认过眼神,发现了你们中的大多数对C语言函数及指针的不解。本课程将在夏季学期第三周开展为期一周的C语言程序设计实训,该实训以C-字符串处理练习为主要内容,利用学院自行开发的在线自动判题系统( HYPERLINK / ),编号为94、96的比赛),重点训练大家的程序设计能力。 2 课程班 本课程属性为实践环节(必修),修课对象为2017级大类分流到计算机科学与技术专业、智能科学与技术专业全体同学。【请注意:计算机科学与技术专业的同学选编号为0830A033的课程,智能科学与技术专业的同学选编号为0869A001的课程】。 实训班 习题课教室 实训机房 指导教师 计算机专业 1-3班 D211 C422 李 青(计1113)主讲习题课 导生名单 C426 赵俊娟(计805) 计算机专业 4-6班 D213 C427 沈云付(计811)主讲习题课 C429 沈 俊(计403) 智能专业 1-2班 D309 D315 张博锋(计1109)主讲习题课 朱 颖(计505) 3 课程表 第三周 星期日 7月1日 星期一 7月2日 星期二 7月3日 星期三 7月4日 星期四 7月5日 星期五 7月6日 上午8:00-11:00 报到 习题课(1) 习题课(2) 上机 上机 上机 下午13:00-16:00 上机 上机 上机 上机 提交纸质 实训报告 4 考核办法 习题课及上机考勤(20%),在线自动判题系统解题情况(50%),个人实训报告(30%)。 5 在线自动判题系统解题参考 5.1 在线判题系统解题完整示例 【例题1】(包括题目、解题程序、自测方法的完整示例)阶乘尾部0的个数。 阶乘尾部0的个数 问题描述 给定一个正整数n,计算n!的尾部0的个数。 输入 输入数据有若干行。每行上有一个正整数n,对应一种情形。 输出 对于每一种情形,先输出“Case #: ”(#为序号,从1起),然后输出n的值,逗号,结果,换行。 输入样例 8 16 30 输出样例 Case 1: 8, 1 Case 2: 16, 3 Case 3: 30, 7 图1 题目示例 在线判题系统的后台服务器上,有实际使用的测试数据文件(假设Input01.txt及由标准程序产生的标准结果文件Output01.txt,它们的内容如下。当然,被测人员是无法获得这两个文件的)。 Input01.txt Output01.txt 8 16 30 4 5 24 25 50 150 200 0 10000 Case 1: 8, 1 Case 2: 16, 3 Case 3: 30, 7 Case 4: 4, 0 Case 5: 5, 1 Case 6: 24, 4 Case 7: 25, 6 Case 8: 50, 12 Case 9: 150, 37 Case 10: 200, 49 Case 11: 0, 0 Case 12: 10000, 2499 图2 实际测试数据文件及标准结果文件的内容 由此可见①题目中的样例数据仅是实测数据的一部分;②实测数据中存在一些特殊情况(如:0的阶乘,10000的阶乘)。我们知道,用unsigned long类型计算阶乘,13!就会溢出而出错。 【参考解答·C语言源程序──OJsample01.c】 由输入样例可知,测试数据每行的数据个数是明确已知的(每行一个整数),但行数未知。 C语言用于输入的函数scanf返回所读取到的数据个数。例如scanf(%d %d, m, n)返回2则表示正确地读取了两个整数;返回1则表示仅读取到一个有效数据;返回0则表明没有读取到有效数据。另一方面,当读到“文件结束标志”(Windows操作系统下,键盘输入为Ctrl+Z。Linux/UNIX操作系统下,键盘输入为Ctrl+D)。利用这些特性可判断是否读完所有测试数据。 // OJsample01.c 阶乘尾部0的个数 #include stdio.h int zeros(int n) { int m=0, p=5; while(p=n) { m += n/p; p *= 5; // p的变化规律为5的1,2,3,…次方 } return m; } int main() { int n, k=0; while(scanf(%d, n)==1) { printf(Case %d: %d, %d\n, ++k, n, zeros(n)); } return 0; } 图3 示例解题参考程序 【参考解答·C++语言源程序──OJsample01.cpp】 由输入样例可知,测试数

文档评论(0)

xiaowei110 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档