2007年东莞市小学生程序设计竞赛镇区选拨赛上机试题

2007年东莞市小学生程序设计竞赛镇区选拨赛上机试题
2007年东莞市小学生程序设计竞赛镇区选拨赛上机试题

2007年东莞市小学生程序设计竞赛镇区选拨赛上机试题

注意事项:

1、本试题共四大题,每题100分,共400分;

2、本试题全部为上机编程题,三小时完成,以测试数据测试程序的形式进行测评;

3、严格按题目要求进行数据输入和结果的输出,否则将严重影响得分。

4、要求提交pascal源文件(或basic源文件)和编译后的EXE文件,以EXE 文件进行测试。

一、明明的幸运数

提交文件:number.pas / number.exe 或number.bas /number.exe

问题描述:

明明是1993年3月3日出生的,他出生的年份最后一个数字是3,月数、日期都是3,他认为数字3是他的幸运数,甚至凡是3的倍数的数他都非常喜欢,认为都是他的幸运数,现在给出一个正整数N,请你帮明明统计出1至N之间(包括1和N)有几个数字是明明的幸运数。

数据输入:

从文件number.in中读入数据,文件中只有一个数N(N<=32767)。

数据输出:

结果输出到文件number.out中,只有一个数,就是1至N之间明明的幸运数的个数。

输入输出样例:

Number.in

10

Number.out

3

二、最长数链

提交文件:link.pas / link.exe 或link.bas / link.exe

问题描述:

在数学上有个这样的猜想:任何一个大于1正整数N,经过下面的变换最终都能变为1,变换规则是:如果N是奇数,将它乘以3再加1,即N变为3*N+1,如果N是偶数,将它除以2,即N变为N/2;继续这样变换,直到变为1为止。如:N=22,则变换过程如下:22 11 34 17 52 26 13 40

20 10 5 16 8 4 2 1。对于给定的N,我们把显示出来的数的个数

称为N的链长,例如22的链长为16。现在你的任务是编写一个程序,对于任意给定的一对正整数k和j,给出K、j之间的最长链长,当然这个最长链长是由k、j之间的其中一个正整数产生的。这里的k、j之间即包括k也包括j。

数据输入:

从文件link.dat中读入数据,文件中有二行,第一行是正整数k,第二行是正整数j(0

数据输出:

结果输出到文件link.out中,只有一个数,就是k、j之间的最长链长。

输入输出样例:

Link.dat

1

10

Link.out

20

三、数的排列

提交文件:pailie.pas / pailie.exe 或pailie.bas / pailie.exe

问题描述:

任意给定三个不相同且不为0的一位整数,都可以构成六个不同的三位数,如给定的三个数为别是5,2,8,则可以构成不同的三位数按从小到大分别是:258,

285, 528, 582, 825,852。现在给定你不同的三个一位整数(且都不为0),要求你按从小到大输出构成的六个不同的三位数。

数据输入:

从文件pailie.in中读入数据,文件中有三行,每行一个一位不同的一位正整数。

数据输出:

结果输出到文件pailie.out中,共有六行,每行一个数,按从小到大的顺序输出构成的六个不同的三位数。

输入输出样例

Pailie.in

5

2

3

Pailie.out

235

253

325

352

523

532

四、分解质因数

提交文件:yinshu.pas / yinshu.exe 或yinshu.bas / yinshu.exe

问题描述:

分解质因数是小学数学中常见的问题,现在给定一个正整数N,请你编程序对N分解质因数,并将分解式输出来。

数据输入:

从文件yinshu.in中读入数据,文件中只有一个正整数N(N<=32767)。

数据输出:

结果输出到文件yinshu.out中,只有一行,就是N分解成质因子的连乘积的式子,并且要求按因子从小到大从左到右的格式输出。

输入输出样例:

样例一:

Yinshu.in

24

Yinshu.out

24=2*2*2*3

样例二:

Yinshu.in

13

Yinshu.out

13=13

宁波市第22届中小学生计算机程序设计竞赛决赛试题

宁波市第22届中小学生计算机程序设计竞赛决赛试题 (小学组) 考生须知: 1、考试时间为150分钟,满分300分。 2、考生不得携带任何存储设备。 3、考试开始前,请先确定D盘内容不会被还原,如有问题请监考老师解决。 4、上机考试时要随时注意保存程序。 5、每题都必须提交源程序和编译后的可执行程序(程序的命名办法见每题中的规定), 且必须存放到指定的文件夹内(放错位置的视为无效)。测试时,以源程序为准。 6、考试结束后,不得关机,否则后果自负。 试题一:最小数(100分) (源程序名:或或,编译后可执行程序名:) 【问题描述】 给定一个正整数n,请去掉其中的m个数字,使其剩下的数字按原先从左到右的相对次序组成一个新数,但该新数的值必须尽可能的小。 【输入】 输入文件中只有一行,共2个整数,分别是n和m的值,中间用一个空格分隔。 【输出】 输出文件中只有一行,该行只有一个整数,它是从n中去掉m个数字后所能得到的最小新数(注:如果新数的最高位是零,输出时请去掉这些零)。

【数据限制】 本题共有10组测试数据,每组10分,共100分。 50%的数据, 10≤n≤*109,另外50%的数据n不超过240位; 所有的数据m的值都小于n的位数。 试题二:等式(100分) (源程序名:或或,编译后可执行程序名:) 【问题描述】 有一个未完成的等式:1 2 3 4 5 6 7 8 9=N 当给出整数N的具体值后,请你在2,3,4,5,6,7,8,9这8个数字的每一个前面,或插入一个运算符号“+”号,或插入一个运算符号“-”号,或不插入任何运算符号,使等式成立,并统计出能使等式成立的算式总数,若无解,则输出0。 例如:取N为108时,共能写出15个不同的等式,以下就是其中的二个算式: 1+23+4+56+7+8+9=108 123-45+6+7+8+9=108 【输入】输入文件中只有1个数,即整数N的值。 【输出】输出文件只有一行,该行只有1个数,表示能使等式成立的算式总数。 【数据限制】 本题共有10组测试数据,每组10分,共100分,对于所有的n,-30000≤n≤1000000 试题三:旅行(100分) (源程序名:或或,编译后可执行程序名:) 【问题描述】 某趟列车的最大载客容量为V人,沿途共有n个停靠站,其中始发站为第1站,终点站

C语言程序设计竞赛题及其答案

数学与统计学院 第三届计算机程序设计竞赛题 竞赛需知: 1、答案必须写在答题纸上。 2、程序采用C/JAVA/VB/VFP语言实现均可。 3、考虑到各种因素,程序的键盘输入和结果输出可以用伪代码或者自然语言表示。但是必 须说明输入变量和输出变量。 4、题目最好能用完整、正确的语言程序来解决问题,如确实无法编写完整语言程序的,可 以写出程序主要框架和流程,必要时可以用伪代码或者自然语言描述算法(程序)。 一、玫瑰花数(20分) 如果一个四位数等于它的每一位数的4次方之和,则称为玫瑰花数。例如: + + 1634+ =, 4^4 4^3 4^6 4^1 编程输出所有的玫瑰花数。 #include void main() { int i,j,k,l,m; for(i=999;i<=9999;i++) { j=i/1000; k=i%10; l=i/100-10*j; m=i/10-100*j-10*l; if(i==j*j*j*j+k*k*k*k+l*l*l*l+m*m*m*m) printf("%d\n",i); } } 二、菱形图案(20分) 对给定的奇数n,编程打印菱形图案。 输入样例: 7 输出样例: * *** ***** ******* ***** *** * #include #include void main() {

int i,j,k; int n; scanf("%d",&n); for(i=0;i #include void main() { int i,j,x,y; float r; int a,b,count=0; printf("请输入矩阵的行列i,j:"); scanf("%d%d",&i,&j); printf("请输入圆心的坐标点及半径x,y,r:"); scanf("%d%d%f",&x,&y,&r); for(a=0;a

程序设计大赛致辞稿(精选多篇)

程序设计大赛致辞稿(精选多篇) 第二届涂鸦大赛领导致辞稿 各位老师、亲爱的同学们: 大家,下午好: 很高兴今天下午能够与大家相聚于校园文化广场,同时也很期待大家的涂鸦作品新鲜出炉,在这里,我想对在场的每一位同学说三句话。 我的第一句话:你们都是好样的。为什么这样讲?因为我觉得现在站在赛场上的,那些手拿笔墨纸砚的同学们,你们是勇敢与自信的;那些胸前挂着工作牌的同学们以及背后默默地工作者们,你们辛苦了;那些走在文化广场能停下脚步观看本次活动的同学们,我也要感谢你们的大力支持。 我的第二句话呢,我想谈一下我对涂鸦的认识。涂鸦,它起源于20世纪60年代美国的费城和宾夕法尼亚州的graffiti。听说制作者将自己的绰号以及自家门牌号之类涂绘于墙面等介质上,后来扩大到汽车、火车和车站站台等不同表面上做graffiti,墙不再是唯一的介质。而今,我们现在所在的现场是我院第二届涂鸦大赛现场,我认为本届“我的生活我涂鸦”第二届涂雅大赛不仅增强了我院大学生的创新意识和创新素养,而且激发了青年学生的创意资源与成果,引导大学生以创造的激情、创新的思

维、创意的形式描绘了我们多彩的交院生活,为搭建大学生创意能力的培养平台、为营造良好的校园文化氛围发挥了重要作用。 下面是我的最后一句话:预祝第二届涂鸦大赛取得圆满成功。 谢谢大家 全文结束》》xx程序设计大赛通讯稿 为进一步加强学校教学质量工程建设,提高学生的创造力及运用计算机技术解决实际问题的综合能力,培养学生的创新思维与合作精神,激发广大同学学习程序设计的热情与兴趣,xx年11月26日由淮南师范学院教务处主办,计算机与信息工程系承办,院计算机协会协办的第二届程序设计大赛在校图书馆六楼举行。本次比赛的组委会主任xxx老师,副主任xxx老师、xx老师,大赛组委会成员xx老师、xx老师、xx老师和组委会秘书xx老师出席了本次比赛。本次比赛的选手是来自我院各届学生共计77人。 本次比赛是以c语言和java语言为主要程序设计语言,共计5题,比赛时长为三小时,比赛强调参赛者计算机程序设计的专业素质,重点考察参赛者程序设计语言、计算理论等相关知识及综合应用能力。每人在规定时间内答题数量最多的人胜出,相同答题数量以最快完成答题的胜出,比赛过程中,选手们热情高涨,信心足地将一个个难题攻克,到了比赛的中间阶段,有的选手在为自己未能编出的程序而绞尽脑汁,有的

江北区第九届中小学生计算机程序设计竞赛

江北区第九届中小学生计算机程序设计竞赛 比赛时间:2016年1月9日下午13:30—16:00 题目一览 注意: 一、关于竞赛中编程语言使用的规定参照中国计算机学会公布的《关于NOI系列赛编程语言使用限制的规定》。 二、评测环境为windows。

1.数列(s.pas/cpp/c) 【问题描述】 有一列数:1,1,3,8,22,60,164,448……其中的前三个数是1,1,3,从第四个数起每个数都是这个数前面两个数之和的2倍。那么,你可以很容易地得到这个数列中的第K个数是多少。 【输入s.in】 只有一行,一个数k,表示要询问的是数列中的第k个数。 【输出s.out】 只有一行,一个数n,表示数列中的第k个数的值是n。 【输入样例】 5 【输出样例】 22 【数据规模】 30%的数据,1<=k<=8 100%数据,1<=k<=45

2.伙伴(friend.pas/cpp/c) 【问题描述】 近来,程序社团开始“创客”——用程序来开发一种“找伙伴的数字游戏”。这个伙伴游戏将玩家分为A和B二组。每组每个玩家可以得到一个数字号码。 游戏规则是这样的:A组里的每个人的数字与B组里每个人的数字进行“数字配对”——即加法运算,若运算的结果恰巧是B组内其他玩家手捏的数字号码,那么游戏就可以累计一个分值,这个分值就是B组内这个“恰巧”的数字号码。当然,在B组内“恰巧”的数字号码可能不止一个,游戏允许再次累计。 比如加法运算后的“恰巧”的数字是3,而B组内共有2个玩家捏有此数字,那么本组就可以得到6分。 你是游戏的开发者之一,你需要迅速计算出找伙伴游戏的最终得分。 【输入friend.in】 第一行有二个数字n和m,分别表示A组和B组的人数。 第二行有n个整数ai,每个整数之间有一个空格,表示n个玩家手中的数字号码。 第三行有m个整数bi,每个整数之间有一个空格,表示m个玩家手中的数字号码。 【输出friend.out】 只有一行,一个数字s,表示游戏的最终分数。 【输入样例1】 3 3

程序设计比赛试题

程序设计比赛试题 最少钱币数: 【问题描述】 这是一个古老而又经典的问题。用给定的几种钱币凑成某个钱数,一般而言有多种方式。例如:给定了6种钱币面值为2、5、10、20、50、100,用来凑15元,可以用5个2元、1个5元,或者3个5元,或者1个5元、1个10元,等等。显然,最少需要2个钱币才能凑成15元。 你的任务就是,给定若干个互不相同的钱币面值,编程计算,最少需要多少个钱币才能凑成某个给出的钱数。 【要求】 【数据输入】输入可以有多个测试用例。每个测试用例的第一行是待凑的钱数值M (1<=M<=2000,整数),接着的一行中,第一个整数K(1<=K<=10)表示币种个数,随后是K个互不相同的钱币面值Ki(1<=Ki<=1000)。输入M=0时结束。 【数据输出】每个测试用例输出一行,即凑成钱数值M最少需要的钱币个数。如果凑钱失败,输出“Impossible”。你可以假设,每种待凑钱币的数量是无限多的。 【样例输入】 15 6 2 5 10 20 50 100 1 1 2 【样例输出】 2 Impossible

Feli的生日礼物 【问题描述】 Felicia的生日是11月1日(和Kitty是同一天生的哦)。于是Feli请来Kitty一起过生日。Kitty带来了最新款的“Kitty猫”玩具准备送给Feli,不过她说,这份礼物可不是白送的。Feli要帮她一个忙,才能够得到心仪已久的玩具。Kitty说,“Kitty猫”玩具已经卖出了n!个,n<=10^100*_*,Kitty想知道确切的数字,而不是无聊的“一个数加个感叹号”。Feli听了大吃一惊。要知道,算出n!是一个无比艰巨的任务。Feli告诉Kitty,就算Feli算出n!,Kitty也看不下去,因为当n=20时,计算机的长整型已经存不下了(Kitty只能接受1-9之间的数字)。于是Kitty说,你只要告诉我n!最后一位非0的数就可以了。Feli想了想,立刻动手写了个程序算出了正确的答案。现在,请你也试试看!注意哦,AC的男生将会得到一个“Hello Kitty”计算器(可编程,CPU 1THz,Mem 1TMB),AC的女生将会得到一个仿真“Hello Kitty”宠物(善解人意,无须喂养,智商1101,附带写情书功能)。 【要求】 【数据输入】每行一个n,直到输入数据结束 【数据输出】对应输入的n,每行输出一个答案 【样例输入】 1101 【样例输出】 8

ACM国际大学生程序设计竞赛指南

ACM国际大学生程序设计竞赛指南 2008年09月29日星期一 01:01 一、ACM竞赛介绍及规则 ACM/ICPC(国际大学生程序设计竞赛)是由ACM(Association for Computing Machinery,美国计算机协会)组织的年度性竞赛,始于1970年,是全球大学生计算机程序能力竞赛活动中最有影响的一项赛事。ACM/ICPC采用赛区选拔的方式产生参加世界决赛学校的资格,2001年,来自全球超过25个地区1141所大学的2362支队伍参加了第26届ACM/ICPC的赛区竞赛。在2002年3月,来自世界各地的约60支队伍,200多名选手参加了夏威夷总决赛的角逐。可以说,ACM国际大学生程序设计竞赛是参赛选手展示计算机才华的广阔舞台,是著名大学计算机教育成果的直接体现,是信息企业与世界顶尖计算机人才对话的最好机会。在过去十几年中,世界著名信息企业 APPLE、AT&T、MICROSOFT和IBM分别担任了竞赛的赞助商。中国大陆高校从1996年开始参加ACM/ICPC亚洲预赛,前五届 ACM/ICPC亚洲区选拔赛在上海设有赛区,由上海大学主办。2002年,第六届ACM/ICPC亚洲预赛将该在北京设赛区,由清华大学主办。第七届竞赛将于2002年10月在清华园拉开帷幕,预计将有超过60所国内外著名大学的上百支队伍参加本次竞赛(这也是北京工业大学首次参加此项赛事)。 ACM 竞赛规定,教练是参赛队伍所代表学校的正式教师,每支队伍最多由三名参赛队员组成,每支队伍中至少有两名参赛队员必须是未取得学士学位或同等学历的学生,取得学士学位超过两年,或进行研究生学习超过两年的学生不符合参赛队员的资格,任何参加过两次决赛的学生不得参加地区预赛或者世界决赛。 二、竞赛组织 竞赛在由各高等院校派出的3人一组的队伍间进行,分两个级别。参赛队应首先参加每年9月至11月在世界各地举行的“区域竞赛(regional contest)”。各区域竞赛得分最高的队伍自动进入第二年3月在美国举行的“决赛(final contest)”,其它的高分队伍也有可能被邀请参加决赛。每个学校有一名教师主管队伍,称为“领队”(faculty advisor),他负责选手的资格认定并指定或自己担任该队的教练(coach)。每支队伍最多由三名选手(contestant)组成,每个选手必须是正在主管学校攻读学位并已读完至少一半时间的学生。每支队伍最多允许有一名选手具有学士学位,已经参加两次决赛的选手不得再参加区域竞赛。 三、竞赛形式与评分办法 竞赛进行5个小时,一般有6—8道试题,由同队的三名选手使用同一台计算机协作完成。当解决了一道试题之后,将其提交给评委,由评委判断其是否正确。若提交的程序运行不正确,则该程序将被退回给参赛队,参赛队可以进行修改后再一次提交该问题。程序运行不正确是指出现以下4种情况之一: (1)运行出错(run-time error); (2)运行超时〔time-limit exceeded); (3)运行结果错误(wrong answer); (4)运行结果输出格式错误(presentation error)。 竞赛结束后,参赛各队以解出问题的多少进行排名,若解出问题数相同,按照总用时的长短排名。总用时为每个解决了的问题所用时间之和。一个解决了的问题所用的时间是竞赛开始到提交被接受的时间加上该问题的罚时(每次提交通不过,罚时20分钟)。没有解决的问题不记时。美国英语为竞赛的工作语言。竞赛的所有书面材料(包括试题)将用美国英语写出,区域竞赛中可以使用其它语言。总决赛可以使用的程序设计语言包括pascal,c,c++及java,也可以使用其它语言。具体的操作系统及语言版本各年有所不同。 四、竞赛奖励情况 总决赛前十名的队伍将得到高额奖学金:第一名奖金为12000美元,第二名奖金为6000美元,第三名奖金为3000美元,第四名至第十名将各得到l500美元。除此之外还将承认北美冠军、欧洲冠军、南太平洋冠军及亚洲冠军 五、关于竞赛的题型分析

宁波市第25届中小学生计算机程序设计竞赛复赛试题(小学组)

中小学生计算机程序设计竞赛复赛试题(小学组) 题目一览 关于竞赛中不同语言使用限制的说明 一.关于使用Pascal语言与编译结果的说明 1.对于Pascal语言的程序,当使用IDE和fpc编译结果不一致时,以fpc的编译结果为准。 2.允许使用数学库(uses math子句),以及ansistring。但不允许使用编译开关(最后测试时pascal的范围检查开关默认关闭:{$R-,Q-,S-}),也不支持与优化相关的选项。 3.本次比赛允许使用64位整数类型:int64或qword。 1. 折纸(folding) 【题目描述】 小猪上幼儿园的时候,报名参加了折纸兴趣小组。他表现出了极大的热情,折出了n件折纸作品。他的作品只有3种,分别是长方形、正方形和三角形。 小猪很想知道他的n件折纸的周长之和。 【输入】 输入文件folding.in的第一行只有一个整数n,表示共有n件作品。 接下来n行,每行有若干个以空格分隔的整数,表示一件作品的情况。其中第一个整数k (k=1或2或3),表示小猪制作的这件作品的类型,1表示长方形,2表示正方形,3表示三 a b c 三边长度分别为 a,b,c的三角形, 周长为a+b+c 相邻边长度分别为a和b 的长方形,周长为2a+2b b 形,周长为4a a a

角形。 如果k为1,后面会跟二个正整数a和b,表示长方形的二条相邻边的长度分别为a和b; 如果k为2,后面会跟一个正整数a,表示正方形的四条边的长度均为a。 如果k为3,后面会跟三个正整数a、b和c,表示三角形三条边的长度分别为a、b和c(输入数据保证a,b,c能构成三角形,不需验证)。 【输出】 输出文件folding.out中仅有一行,该行只有一个整数,表示所有作品的周长之和。【样例输入】 3 1 2 3 2 4 3 6 7 8 【样例输出】 47 【样例说明】 共有3件作品: 第一件作品:二条相邻边长度分别为2和3的长方形; 第二件作品:边长为4的正方形; 第三件作品:三条边长度分别为6、7、8的三角形。 这3件作品的周长分别为10、16、21,它们的周长之和为47。 【数据规模】 50%的数据,1≤n≤50,所有边长为不超过100正整数。 100%的数据,1≤n≤100000,所有边长为不超过100000的正整数。 2. 方格稿纸(paint)

程序设计大赛试题及答案

试题 1、数学黑洞(程序文件名maths.c/maths.cpp) 【问题描述】 任给一个4位正整数,其各位数位上的数字不全相同,将数字重新组合成一个最大的数与最小的数相减,重复这个过程,最多7步,必得6174。对任给的4位正整数(各位数位上的数字不全相同),编程输出掉进黑洞的步数。 【输入】 一行,一个4位正整数n(1000< n<9999) 【输出】 掉进黑洞的步数 输入 1234 输出 3 2、进制转换(程序文件名conver.c/conver.cpp) 【问题描述】 任给一个十进制整数n,及正整数m(m<=16且m≠10), 将n转换成m进制并输出。 【输入】 一行,两个整数n,m(0 ≤ n ≤ 500000,2 ≤ m ≤ 16,且m≠10),中间用一个空格隔开,其中n 表示十进制数。 【输出】 转换后的数 【输入输出样例】 输入 255 8 输出 377 3、分数线划定(程序文件名score.c/score.cpp) 【问题描述】 公务员选拔工作正在 A 市如火如荼的进行。为了选拔优秀人才,A 市对所有报名的选手进行了笔试,笔试分数达到面试分数线的选手方可进入面试。面试分数线根据计划录取人数的150%划定,即如果计划录取m名公务员,则面试分数线为排名第m*150%(向下取整)名的选手的分数,而最终进入面试的选手为笔试成绩不低于面试分数线的所有选手。现在就请你编写程序划定面试分数线,并输出所有进入面试的选手的报名号和笔试成绩。 【输入】 第一行,两个整数n,m(5 ≤ n ≤ 5000,3 ≤ m ≤ n),中间用一个空格隔开,其中n 表示报名参加笔试的选手总数,m 表示计划录取的人数。输入数据保证m*150%向下取整后小于等于n。 第二行到第 n+1 行,每行包括两个整数,中间用一个空格隔开,分别是选手的报名号k(1000 ≤ k ≤ 9999)和该选手的笔试成绩s(1 ≤ s ≤ 100)。数据保证选手的报名号各不相同。 【输出】 第一行,有两个整数,用一个空格隔开,第一个整数表示面试分数线;第二个整数为进入面试的选手的实际人数。 从第二行开始,每行包含两个整数,中间用一个空格隔开,分别表示进入面试的选手的报名号和笔试成绩,按照笔试成绩从高到低输出,如果成绩相同,则按报名号由小到大的顺序输出。 【输入输出样例】 输入 6 3 1000 90 3239 88 2390 95 7231 84 1005 95 1001 88

2018年西门子杯中国智能制造挑战赛

2018年“西门子杯”中国智能制造挑战赛 (原全国大学生工业自动化挑战赛) 连续过程设计开发赛项决赛竞赛细则 一、总则 1.以公平、公正、公开为原则,以参赛队现场实施效果为考核标准。 2.全国竞赛组委会以甲方的身份发布工程项目招标需求,各参赛队以乙方的身份,根据甲方提出的 要求,进行项目方案设计,并以工程承包商的身份进入比赛现场实施。全国竞赛组委会将组织专家就项目方案设计、系统开发和现场实施等三个方面,对参赛队的系统设计方案和实施效果进行综合考察。 3.项目方案设计内容: (1)系统分析,包括需求分析、对象特性分析、安全分析等。 (2)控制系统设计,包括开车顺序、控制回路、控制PI&D图、控制算法、安全联锁、人机界面等。 (3)控制系统组成,包括控制器、IO卡件、通讯网络等。 (4)系统实施说明,包括系统连接、系统安装、系统组态、系统整定、系统调试、系统投运等。 (5)经济效益分析,包括产能、耗能、安全、环保等。 4.项目方案实施内容: (1)在SIMATIC S7-400 PLC上,完成硬件组态和控制程序开发;在SIMATIC WINCC上,完成监控画面组态与开发;建立PLC和WINCC之间的通讯连接。 (2)系统调试,包括控制器参数整定、故障排除、系统投运等。 (3)系统验收,包括项目方案设计书、现场实施报告,接受甲方对系统性能的评估。 5.全国竞赛组委会和决赛组委会只保证比赛设备正常可用,比赛现场不再对硬件组态、程序下载等 基础问题作技术支持。参赛队需要自行分析解决问题,全国竞赛组委会将此作为比赛考核内容之一。

6.参赛队需要自行携带电脑,作为系统的上位机,并自己负责设备的连接。全国竞赛组委会和决赛 组委会不再提供备用机。 7.决赛环节由“现场实施”与“方案答辩”两部分组成。 8.正式比赛期间,指导教师不得进入比赛现场。如有不听规劝者,将取消其所带领参赛队的比赛资 格。原则上不允许以任何原因离开赛场,如有特殊原因,需要边裁或巡检陪同。 9.在现场比赛过程中,主裁宣读完注意事项之后十五分钟内,指导教师可以通过手机通话的方式(只 能通话,不能视频、拍照)与参赛队员进行远程交流和指导,十五分钟后,所有参赛队员关闭手机。 二、决赛规则 1.各参赛队针对比赛题目自主构思控制方案,完成系统设计、控制算法及程序开发,并于指定日期 和地点参加决赛的现场比赛。 2.决赛环节由“现场实施”与“方案答辩”两部分组成(高职组只有上机,没有答辩,满分80分)。 分值分配如下: 3.“现场实施”环节包括:接线、系统实现(含WINCC画面组态与方案的调试实施)等,其中接线 分值5分、WINCC画面组态分值5分、方案调试实施分值70分(第一阶段30分,第二阶段40分)。 4.决赛报到的参赛队需在赛前参与抽签,以决定现场比赛的组别和顺序。 5.参赛队员须经大赛志愿者检录后进入赛场。如发现有冒名顶替者,将取消该参赛队的比赛资格。 【现场实施】 6.参赛队员全部入场后,主裁宣读比赛注意事项,并分发具体任务要求(赛题与竞赛规则)。主裁宣 读比赛注意事项期间,参赛队员不得进行任何操作。 7.“现场实施”环节总的时间为4小时(240分钟)。 8.主裁宣读完注意事项之后十五分钟内,参赛队员可以通过手机寻求场外指导教师的帮助,十五分 钟后,统一关闭手机。 9.接来下是接线环节,该环节总共40分钟,要求将PCS 7远程IO中的AI模块与SMPT-1000的仪 表测量输出模块进行接线,并确保通讯正常(至少确保一路TI1101能够接入到PCS 7远程IO中)。

2012年宁波市第27届中小学生计算机程序设计竞赛 小学组 初赛试题

2012年宁波市第27届中小学生计算机程序设计竞赛小学组初赛试题 小学组初赛试题 ●●所有答案都必须写在答题纸上,写在试卷上无效●● 一、选择题(每题2分,共30分。每小题只有唯一一个正确答案) 1)乐乐在记事本里打了“Happy Birthday!”,则它们在计算机内存储时采用的编码是:()。 A )区位码 B )ASCII 码 C )字形码 D )条形码 2)乐乐经常听MP3,由此他也学到了一些有关MP3的知识。下列有关MP3的信息中不正确的是:()。 A )表达同一首乐曲时,MP3格式的文件大小比WAVE 格式要小得多。 B )MP3声音是一种声音数字化之后经过压缩和编码技术处理得到的声音格式。 C )MP3音乐所采用的声音数据压缩编码的标准是JPEG 。 D )MP3之所以得以流行,是因为MP3声音的质量好,存储容量小,便于传输与存储。 3)下图所示是一个16×16点阵的发光LED 字幕模块,假如使用1表示点发光、0表示点熄灭,那么这个发光LED 字幕模块如果要在计算机内部完整地保存,在不进行压缩的前提下,最少需要的存储空间是:()。 A )8Byte B )32Byte C )8KB D )32KB 4)在计算机系统中,数值一律用补码来表示(存储)。主要原因:使用补码,可以将符号位和其他位统一处理;同时,减法也可按加法来处理。那么在PASCAL 系统中,-15用byte 变量类型存储在计算机内,其二进制编码为:()。 A )10001111 B )00001111 C )11110000 D )11110001 5)十进制数2012.25用二进制数表示的结果是:()。 A )(11111010101.1)2 B )(11111011100.01)2 C )(1111001000.01)2 D )(11111001000.1)2 6)乐乐在参加信息学奥赛的学习过程中,想在因特网上与他人进行即时讨论、交流,则下列工具中最适合的是:()。 A )E-mail (电子邮件) B )BBS (电子公告栏) C )QQ D )博客(Weblog ) 7)下列不属于程序设计三种基本控制结构的是:()。 A )顺序结构 B )递归结构 C )分支结构 D )循环结构 8)胡老师发送电子邮件时失败了,根据下图所示信息,导致发送失败的最有可能的原因是:()。 A )主题错误 B )没有附件 C )收件人地址错误 D )邮件正文太少 9)下面是乐乐对计算机的一些操作,能有效预防计算机病毒侵入的是:()。①对下载的文件马上杀毒②打开QQ 上陌生人信息中的链接补丁 ③及时升级杀毒软件和病毒防火墙④及时修复系统漏洞⑤随意打开来历不明的邮件 A )①②③ B )①③④ C )②③⑤ D )③④⑤ 10)设A=B=D=true,C=false,以下逻辑运算表达式值为真的是:()。 A )(not A and B )or ( C and D )B )(A or B or D )and C C )not A and (B or C or D )D )(A and B and C )or D 11)下列文件扩展名为图片格式的是:()。 A ).doc B ).jpg C ).txt D ).swf

程序设计竞赛常用算法

常用算法设计方法 要使计算机能完成人们预定的工作,首先必须为如何完成预定的工作设计一个算法,然后再根据算法编写程序。计算机程序要对问题的每个对象和处理规则给出正确详尽的描述,其中程序的数据结构和变量用来描述问题的对象,程序结构、函数和语句用来描述问题的算法。算法数据结构是程序的两个重要方面。 算法是问题求解过程的精确描述,一个算法由有限条可完全机械地执行的、有确定结果的指令组成。指令正确地描述了要完成的任务和它们被执行的顺序。计算机按算法指令所描述的顺序执行算法的指令能在有限的步骤内终止,或终止于给出问题的解,或终止于指出问题对此输入数据无解。 通常求解一个问题可能会有多种算法可供选择,选择的主要标准是算法的正确性和可靠性,简单性和易理解性。其次是算法所需要的存储空间少和执行更快等。 算法设计是一件非常困难的工作,常用的算法设计方法主要有迭代法、穷举搜索法、递推法、递归法、贪婪法、回溯法、分治法、动态规划法等。 一、迭代法 迭代法是用于求方程或方程组近似根的一种常用的算法设计方法。设方程为f(x)=0,用某种数学方法导出等价的形式x=g(x),然后按以下步骤执行:(1)选一个方程的近似根,赋给变量x0; (2)将x0的值保存于变量x1,然后计算g(x1),并将结果存于变量x0; (3)当x0与x1的差的绝对值还大于指定的精度要求时,重复步骤(2)的计算。 若方程有根,并且用上述方法计算出来的近似根序列收敛,则按上述方法求得的x0就认为是方程的根。上述算法用C程序的形式表示为: 【算法】迭代法求方程的根 { x0=初始近似根; do { x1=x0; x0=g(x1); /*按特定的方程计算新的近似根*/ } while ( fabs(x0-x1)>Epsilon); prin tf(“方程的近似根是%f\n”,x0); } 具体使用迭代法求根时应注意以下两种可能发生的情况: (1)如果方程无解,算法求出的近似根序列就不会收敛,迭代过程会变成死循环,因此在使用迭代算法前应先考察方程是否有解,并在程序中对迭代的次数给予限制; (2)方程虽然有解,但迭代公式选择不当,或迭代的初始近似根选择不合理,也会导致迭代失败。 【举例】求方程X2-X-1=0的正根,误差<0.05 解:(1)建立迭代公式 由于X=X2-1

高级语言程序设计课程如何培养学生的问题求解能力

高级语言程序设计课程如何培养学生的问题求解能力 孙志岗 语言基础教研室,空间计算技术研究中心 摘要:教育的根本目标之一是培养学生的问题求解能力。本文结合作者在高级语言程序设计课程中的经验和构想,探讨如何培养学生的问题求解能力。文章总结了基于培养“自学、自主、自信、自乐”四个必备素质为目标的一系列教学方法,打破常规,启发学生独立自主、乐于创新、大胆实践,从而锻炼学生的问题求解能力。 关键词:问题求解;高级语言程序设计课程建设 0.引言 Gagné说过:“教育的中心目标就是教会人们思考,运用他们的理性,成为更好的问题解决者。”[1]现行的中国教育体系中,也强调培养问题求解能力,但实际中更注重的是知识的传授,和应用已有的知识解决已知问题(已经知道解决方法的问题)的能力。这种思路应用在中学教育还情有可原,但对高等教育来说,创造新知识、解决未知问题的能力才是教育的根本目标。因为大学的职责就是为社会培养具有这种能力的人才。 本科教育阶段,因为学生的专业知识结构尚未建立,基础知识比较薄弱,似乎应该以学习知识为主,不宜揠苗助长,去培养创新性的问题求解能力。但作者认为,本科阶段才是培养问题求解能力的最佳时机。这时的学生刚走出枯燥的高考,满怀憧憬地想走入全新的求学之路,其热情与求知欲都是空前的。他们虽然可能无知,但是也无畏,可以不受束缚地去迎接挑战、开拓创新。本文总结了作者在针对本科生的“高级语言程序设计”课程中的教学经验和新的构想,探讨如何培养学生的问题求解能力。 1.培养问题求解能力的根本途径 什么是问题求解能力?Jonassen总结了Gagné、Bloom、Merrill的观点和其它一些传统看法,认为: “问题求解必定包括各种各样的认知成分,如命题、概念、规则和原理(领域性知识),但它同时也包括学习者的结构性知识(信息网络、语义地图、概念网络和心智模式)、拓展技能(建构、辩论、分析和推理)、元认知技能(设定目标、收集认知资源、评价先前知识、评价进展、校正错误)。此外,问题求解还包括动机/态度因素(付出的努力、坚持性、有目的的投入),当然也包括自我知识(阐明先前知识、社会文化知识、个人策略、认知偏见/弱点)。”[2][3][4] 作者认为,结合当前实际情况,该能力可以定义为:面对一个新问题,运用所有资源将其解决的能力。“新问题”可能对所有人都是新问题,比如各种尚未解决的科学问题;也可能只对自己是新问题,比如尚未学过排序的学生面对排序问题。无论是哪种问题,其解决途径都是阅读资料,运用储备的知识,发挥智力与经验,再加上一点点运气和灵感,只不过前者的难度更高、结果更不确定。 求解能力是“教”不会,“学”不会,只能“练”会的。求解是一个复杂且综合的过程,口口相传的课堂教学无法表现其精髓,只可能教授求解知识和一点片面的求解经验。真正的求解能力是在求解的实践中锻炼、体会出来的。因此,教学中培养求解能力的根本途径是引出问题,激励学生的主动性,让学生自己动手解决问题。此过程能有效实施的关键是培养学生的四个必备素质:“自学、自主、自信、自乐”。

宁波市第25届中小学生程序设计竞赛(初中试题及答案)

宁波市第25届中小学生程序设计竞赛 初中组初赛试题 一、选择题(每题1.5分,共30分。每小题只有唯一一个正确答案) 1、在宁波市中小学生程序设计比赛复赛(上机编程)时,以下不能使用的编程语言是:(A)Turbo Pascal (B)Free Pascal (C)C (D)C++ 2、在Free Pascal中按功能键F7或F4时,以下叙述正确的是: (A)F4逐条语句执行(包括子程序),F7运行至光标位置 (B)F7逐条语句执行(包括子程序),F4运行至光标位置 (C)F4逐条语句执行(不包括子程序),F7运行至光标位置 (D)F7逐条语句执行(不包括子程序),F4运行至光标位置 3、使用高级语言编写的程序称之为: (A)源程序(B)编辑程序(C)编译程序(D)链接程序 4、如果自己的程序进入了死循环,应当按什么键终止? (A)Ctrl+C (B)Ctrl+D (C)Alt+C (D)Alt+D 5、参加宁波市中小学生程序设计比赛复赛(上机编程)时,以下哪种行为是允许的?(A)访问互联网或局域网(B)使用U盘或光盘 (C)使用自带的草稿纸(D)考试时发现机器有问题,举手示意监考人员处理 6、参加宁波市中小学生程序设计比赛复赛(上机编程)时,你有一个程序被判0分。你发现程序其实是正确的,但存在以下问题,提出申诉,以下哪个申诉会被接受? (A)源程序文件名和存放源程序的目录名错误 (B)只是存放源程序的目录名错误,源程序文件名是正确的 (C)存放源程序的目录名正确,源程序文件名是错误的 (D)根据比赛规则,以上申斥都不会被接受 7、在Free Pascal语言,以下关于各种数据类型占内存空间大小的描述错误的是: (A)每个integer型占2个字节(B)每个longint型占4个字节 (C)每个boolean型占2个字节(D)每个extended型占10个字节 8、使用数组逐层保存完全二叉树结构,则以下叙述正确的是: (A)逻辑结构为完全二叉树,物理结构为数组(B)物理结构为完全二叉树,逻辑结构为数组 (C)逻辑结构和物理结构均为完全二叉树(D)逻辑结构和物理结构均为数组 9、关键码相同的二个元素,原来在排在前面的还能保证排在前面,这种排序算法我们称它是稳定的。冒泡排序、选择排序、插入排序、快速排序中,一般意义上是稳定的有几种:(A)1 (B)2 (C)3 (D)4 10、在Free Pascal中编辑当前源程序时,可以使用快捷键Ctrl+F7增加调试程序时监视的变

第六届程序设计比赛题目与答案

一、鸡兔同笼 问题描述 一个笼子里面关了鸡和兔子(鸡有2只脚,兔子有4只脚,没有例外)。已经知道了笼子里面脚的总数a,问笼子里面至少有多少只动物,至多有多少只动物 输入数据 第1行是测试数据的组数n,后面跟着n行输入。每组测试数据占1行,包括一个正整数a (a < 32768)。 输出要求 n行,每行输出对应一个输入。输出是两个正整数,第一个是最少的动物数,第二个是最多的动物数,两个正整数用空格分开。如果没有满足要求的情况出现,则输出2个0。 输入样例 2 3 20 输出样例 0 0 5 10 解题思路 这个问题可以描述成任给一个整数N,如果N是奇数,输出0 0,否则如果N是4的倍数,输出N / 4 N / 2,如果N不是4的倍数,输出N/4+1 N/2。这是一个一般的计算题,只要实现相应的判断和输出代码就可以了。题目中说明了输入整数在一个比较小的范围内,所以只需要考虑整数运算就可以了。 参考程序 1.#include 2.void main( ) 3.{ 4.int nCases, i, nFeet; //nCases 表示输入测试数据的组数,nFeet表示输入的脚数。 5.scanf("%d", &nCases); 6.for(i = 0; i < nCases; i++){ 7.scanf("%d", &nFeet); 8.if(nFeet %2 != 0) // 如果有奇数只脚,则输入不正确, 9.// 因为不论2只还是4只,都是偶数 10.printf("0 0\n"); 11.else if (nFeet%4 != 0) //若要动物数目最少,使动物尽量有4只脚 12.//若要动物数目最多,使动物尽量有2只脚 13.printf("%d %d\n", nFeet / 4 + 1, nFeet / 2); 14.else printf("%d %d\n", nFeet / 4, nFeet / 2); 15.} 16.}

acm程序设计大赛题目

The Mailboxes Manufacturers Problem Time Limit:1000MS Memory Limit:65536K Total Submit:299 Accepted:227 Description In the good old days when Swedish children were still allowed to blowup their fingers with fire-crackers, gangs of excited kids would plague certain smaller cities during Easter time, with only one thing in mind: To blow things up. Small boxes were easy to blow up, and thus mailboxes became a popular target. Now, a small mailbox manufacturer is interested in how many fire-crackers his new mailbox prototype can withstand without exploding and has hired you to help him. He will provide you with k(1 ≤ k≤ 10) identical mailbox prototypes each fitting up to m(1 ≤ m≤ 100) crackers. However, he is not sure of how many firecrackers he needs to provide you with in order for you to be able to solve his problem, so he asks you. You think for a while and then say, “Well,if I blow up a mailbox I can’t use it again, so if you would provide me with only k = 1 mailboxes, I would have to start testing with 1 cracker, then 2 crackers, and so on until it finally exploded. In the worst case, that is if it does not blow up ev en when filled with m crackers, I would need 1 + 2 + 3 + … + m = m ×(m+ 1) ? 2 crackers. If m = 100 that would mean more than 5000 fire-crackers!” “That’s too many,” he replies. “What if I give you more than k = 1 mailboxes? Can you find a strategy that requires less crackers?” Can you? And what is the minimum number of crackers that you should ask him to provide you with? You may assume the following: 1.If a mailbox can withstand x fire-crackers, it can also withstand x? 1 fire-crackers. 2.Upon an explosion, a mailbox is either totally destroyed (blown up) or unharmed, which means that it can be reused in another test explosion.

C语言程序设计大赛题目

C语言程序设计大赛题 目 Company Document number:WTUT-WT88Y-W8BBGB-BWYTT-19998

1.角谷猜想 日本一位中学生发现一个奇妙的“定理”,请角谷教授证明,而教授无能为力,于是产生角谷猜想。猜想的内容是:任给一个自然数,若为偶数除以2,若为奇数则乘3加1,得到一个新的自然数后按照上面的法则继续演算,若干次后得到的结果必然为1。请编程验证。 *问题分析与算法设计 本题是一个沿未获得一般证明的猜想,但屡试不爽,可以用程序验证。 题目中给出的处理过程很清楚,算法不需特殊设计,可按照题目的叙述直接进行证。 *程序说明与注释 #include<> intmain() { intn,count=0; printf("Pleaseenternumber:"); scanf("%d",&n);/*输入任一整数*/ do{ if(n%2) { n=n*3+1;/*若为奇数,n乘3加1*/ printf("[%d]:%d*3+1=%d\n",++count,(n-1)/3,n); } else { n/=2;/*若为偶数n除以2*/ printf("[%d]:%d/2=%d\n",++count,2*n,n); } }while(n!=1);/*n不等于1则继续以上过程*/

}

2.四方定理 数论中着名的“四方定理”讲的是:所有自然数至多只要用四个数的平方和就可以表示。 请编程证此定理。 *问题分析与算法设计 本题是一个定理,我们不去证明它而是编程序验证。 对四个变量采用试探的方法进行计算,满足要求时输出计算结果。 #include<> #include<> intmain() { intnumber,i,j,k,l; printf("Pleaseenteranumber="); scanf("%d",&number);/*输入整数*/ for(i=1;i intmain() { inta,b,c,d; printf("Pleaseenteranumber:"); scanf("%d",&a);/*输入整数*/

相关文档
最新文档