数据结构课程设计纸牌游戏 - 范文中心

数据结构课程设计纸牌游戏

06/17

攀枝花学院

学生课程设计(论文)

题 目: 纸牌游戏

学生姓名: 00000 学 号:[1**********]0 所在院(系) : 数学与计算机学院 专 业: 网络工程 班 级: 2012级1班 指 导 教 师: 李世文 职称: 教授

2014年 01月 03日 攀枝花学院教务处制

攀枝花学院本科学生课程设计任务书

课程设计(论文)指导教师成绩评定表

摘 要

数据结构课程是计算机专业中必修的核心课程之一,也是一门理论性很强的一门课程,同时也是一门锻炼程序涉及能力的实践课程,“数据结构”成为计算机程序设计的重要理论技术基础,它不仅是计算机学科的核心课程,而且已成为其它理工专业的热门选修课。主要包括线性表、树和二叉树以及图等基本类型的数据结构。数据结构是一门研究非数值计算的程序设计问题中计算机的操作对象以及它们之间的关系和运算等的学科,包括数据的逻辑结构、数据的存储结构和数据的运算这三个方面的内容,其中逻辑结构可分为线性结构和非线性结构;存储结构可分为顺序存储和链式存储两类,图则属于逻辑结构中的非线性结构。广度优先搜索(BFS)用的队列一步一步完成的,从而找到的是最短路径。

纸牌游戏课程设计包括纸牌信息的建立、了解其翻拍的原理、并简明阐述翻牌的具体步骤与流程、最后输出与打印翻牌结果,整个过程使学生进一步理解和掌握课堂上所学各种基本抽象数据类型的逻辑结构、存储结构和操作实现算法,以及它们在程序中的使用方法。掌握一般软件设计的基本内容和设计方法,培养学生进行规范化软件设计的能力。而且使学生掌握使用各种计算机资料和有关参考资料的方法,提高学生进行程序设计的基本能力。

关键词:数据结构,纸牌游戏,BFS ,遍历

Abstract

Data structure course is one of required core curriculum in computer major, course is a very practical, is also an exercise program involves the ability to practice curriculum, "has become an important theoretical and technical foundation of computer program design data structure", it is not only the core course of computer science, and has become a hot elective course for other science majors. Mainly includes the basic data structure type linear table, tree and binary tree and graph of two. Data structure is a research of non computer program of numerical calculation design problems in operating the objects and their relationships and operations and other disciplines, including logic structure, storage structure and data operation data of the three aspects of content, the logical structure can be divided into linear and nonlinear structures; storage structure can be divided into sequential storage and chain store two, graph belongs to nonlinear structure in the logical structure. Breadth first search (BFS) with cohort completed step by step, so as to find the shortest path.

A card game Solitaire, curriculum design includes information about its principle, and expounds the flop remake of the concrete steps and processes, the final output and print flop results, the whole process to enable students to understand and master the various basic abstract data type science class logical structure, storage structure and operation of the realization of algorithm, and their in the process of using the method. To master the basic content and the general design method of software design, training students' ability of design software specification. And to make the students master the use of various computer data and methods for reference, to improve the students' basic ability of program design.

Key words: data structure, card games, BFS, traversal

目录

摘 要 ............................................................................................................................... I Abstract ...........................................................................................................................II

1 前言 .............................................................. 2

1.1 课题背景 ............................................................. 2

1.2 课程设计目的 ......................................................... 2

2 相关技术分析 ...................................................... 3

2.1概要设计 . ............................................................. 3 2.2设计原始数据的输入及输出格式 .......................................... 4 2.3算法流程图 . ........................................................... 5

3 设计与实现 ........................................................ 6

3.1 数据结构 ............................................................. 6 3.2详细设计和编码 ........................................................ 6

3.2.1 定义全局变量: . ........................................................................................................ 6 3.2.1主要程序代码与分析如下: . ..................................................................................... 6 3.3 上机调试过程 ......................................................... 9

5 测试结果及其分析 ................................................. 10 6 用户使用说明 ..................................................... 17 7 源代码 ........................................................... 17 结论 . .............................................................. 18 参考文献 ........................................................... 19 附录 . .............................................................. 20

1 前言

《数据结构》是软件工程专业的必修课之一,是一门综合性的专业基础课。本课程较系统地介绍了软件设计中常用的数据结构以及相应的实现算法,如线性表、栈、队列、树和二叉树,图、检索和排序等,并对性能进行分析和比较,内容非常丰富。

1.1 课题背景

“数据结构”旨在使学生学会分析研究数据对象的特性,学会数据的组织方法,以便选择合适的数据逻辑结构和存储结构,以及相应的运算,把现实世界中的问题转化为计算机内部的表示和处理,这是一个良好的程序设计技能训练的过程。“数据结构”课程设计不仅可以帮助学生充分理解、巩固所学的基本概念、原理和方法,更重要的是能够针对实际问题来选择数据结构,设计相应的存储结构并加以实现,从而最终解决问题。结合数据结构所学知识,要求学生用C 语言编程实现一个简单的纸牌游戏设计。

1.2 课程设计目的

(1)使学生进一步理解和掌握课堂上所学各种基本抽象数据类型的逻辑结构、存储结构和操作实现算法,以及它们在程序中的使用方法。

(2)使学生掌握软件设计的基本内容和设计方法,并培养学生进行规范化软件设计的能力。

(3) 使学生掌握使用各种计算机资料和有关参考资料,提高学生进行程序设计的基本能力。

2 相关技术分析

2.1概要设计

按照题目的要求,首先,应对52张牌进行编号并且保存它们的编号信息,编号的类型为整型,而对于这样固定的数据,使用整型数组是最好的,因此,我们需要在程序的开始定义一共整型的数组,同时,为了方便对翻转过程的记录,在定义记录编号信息的同时,定义一个与之相对应的标记数组,数组类型为整型。该程序的核心为一个嵌套的循环,所以定义两个变量i,j 作为循环条件。

接着开始对变量进行初始化,首先是编号信息数组,使用for 循环对数组进行1到52的赋值,代表52张纸牌,然后对标记数组赋值,将数组内的所有的值初始化为零,方便在接下来的循环中统计每张牌的翻牌数。数据初始化结束后,开始按照要求对纸牌进行翻转,在嵌套循环中,定义了一个全局变量Flag ,值为-1,负数定义为向下,正数定义为向上,这样,翻转一次,即乘以Flag ,同时,符合翻转条件时,标记数组相应的编号的纸牌翻牌次数+1。

当每个号码每次遇到是某个数的倍数时,都会相应的翻一次,这样,每张牌会翻的次数就各不一样,可能很多次,也可能只有一两次,结果就只是要输出在经过各个不同次数的翻牌后,正面向上的牌都有哪几个。举例说明一下,比如24,第一次它是2的倍数时要从正面翻到背面,当进行到3时,就又要从背面翻回来,而到4时还要在翻,同理呢,到6.8.12„它都要来回的翻。如果它在多次的翻牌后,正面还向上了,那么它就是要输出的结果之一。

循环结束后,编号数组中的数据已经更新,因此对数组进行扫描,大于零的即为正面向上的纸牌,输出其编号即可,同时,输出标记数组中的值,显示每张牌的翻牌记录,方便观察或者寻找规律。到此,整个题目结束。

2.2设计原始数据的输入及输出格式

原始数据要求输入纸牌的基础编号,编号的输入为整型。输出的是经过规律翻转后正面向上的纸牌的编号。 输入的数据信息如下: 纸牌:1、2、3„„、51、52。

问题直观分析表:

(注:图中“√”表示翻转一次。)

2.3算法流程图

3 设计与实现

3.1 数据结构

按照题目要求,整个主体包括一个嵌套的循环,外循环控制从2开始每张纸牌都作为基数进行翻牌,内循环控制对所有纸牌进行判断,如果是当前循环中基数的倍数,则对其进行翻转操作。具体代码如下:

for(i=2;i

3.2详细设计和编码 { } for(j=1;j

3.2.1 定义全局变量:

作为判断纸牌是否向上的依据,我们需要定义一个全局变量Flag=-1,在循环中对所有纸牌进行操作。

3.2.1主要程序代码与分析如下:

#define Flag -1

(考虑到最后要判断哪些纸牌是正面向上的,所以必须要有一共判断条件,因此定义一个全局变量作为正反面的判断条件。)

void main()

{

int i,j,data[52],flag[52];

char m;

(在程序开始,建立了两个数组,一个存放52张牌的编号,另外一个存放相应编号的纸牌的翻牌记录,便于后面对翻牌次数的输出。)

for(i=1;i

{

data[i-1]=i;

(通过for 循环,向数组中录入1-52个数,作为52张牌的编号,以便进行接下来的操作)

flag[i-1]=0;

(将flag 数组中的相应编号纸牌的翻牌数初始化为0,在接下来的循环中,需要对翻牌次数进行统计。)

}

for(i=2;i

(嵌套循环的外循环,保证基数的循环。)

{

for(j=1;j

(嵌套循环的内循环,对每张纸牌进行基数的倍数条件判断)

{

if(j%i==0)

{

data[j-1]=data[j-1]*Flag;

flag[j-1]++;

(翻牌一次,则相应的标记数组中该编号的位置数值+1,即将翻牌次数记入flag 数组中。)

}

}

}

printf("最后所有正面向上的牌有:");

for(i=0;i

{

if(data[i]>0)

(该题目中将大于零的编号定义为正面向上的纸牌的编号)

printf("第%d张牌 ",i+1);

}

printf("\n");

}

以上为程序主要代码的分析。

在程序中,主要还包括功能界面,如下:

printf("\t-----------------------------------------------------------\n");

printf("\t-----------------------------------------------------------\n"); printf("\t--------- 欢迎进入纸牌游戏 -----------\n"); printf("\t--------- 1.查看题目 -----------\n"); printf("\t--------- 2.查看所有纸牌的翻牌次数 -----------\n"); printf("\t--------- 3.查看指定编号纸牌翻牌记录 -----------\n"); printf("\t--------- 4.查看最终正面向上的纸牌编号 -----------\n"); printf("\t--------- 5.制作人信息 -----------\n"); printf("\t--------- 0.按0键结束 -----------\n"); printf("\t-----------------------------------------------------------\n"); printf("\t-----------------------------------------------------------\n"); 同时,整个功能实现由do-while 语句和switch 语句组合而成,do-while 语句可以保证界面最少运行一次,switch 语句保证每个功能独立实现,通过choice 的输入来进入不同的功能,同时在每个小的独立功能内,我都添加了独立判断是否回到主菜单的语句,如下:

printf("是否回到主菜单?(Y/N):");

n=getchar(); n=getchar(); if(n=='Y')break; else if(n=='N') choice=0; else printf("***********(提示:输入错误,默认为继续。)******\n"); 整个do-while 语句的结束条件为:choice=0,所以如果用户输入为N ,则直接将0赋值给choice ,则符合循环结束的条件,则直接结束程序,如果输入为Y ,则break ,继续循环,输入错误,没有对choice 任何的赋值操作,即不能满足结束条件,则无论输入什么都默认为继续,break 后继续循环。由于程序默认的将回车操作通过getchar()赋值给n, 导致不能正常的实现下面的判断,而直接显示为输入错误,所以加入两个n=getchar()语句,保证第二句能够正确的实现功能,

让用户自行输入条件,进行下一步的操作。在整个程序中,存在着大量的输入判断条件,如下:

if(num52)

printf("\t输入错误!\n");

这两句代码就是对输入的num 值进行判断,由于纸牌序号为1-52,所以不在这个范围的值都为错误值,需要有一个错误信息的反馈,所以需要对输入的信息进行判断,然后通过不同的值对数据进行相应的操作,这对于程序的正确运行,有着至关重要的作用。

3.3 上机调试过程

该程序任务相对比较简单,思路较明确。

在一开始编写代码的时候,在嵌套循环中,外循环for 的条件(i=2;i

在每个case 中加入独立的判断是否回到主菜单的语句,一开始getchar ()总是不能正确录入,没有输入就直接运行下一个语句,在加入控制语句后经过调试发现,程序把上一个输入的回车直接默认赋值给getchar(),导致没有输入,直接进行下一个语句,后来使用了两个连续的getchar()语句,第一个getchar()语句默认为回车,但是后面一个getchar()语句可以正确的重新输入判断值,经过重新的调试,运行正常,问题解决,但是希望能找到更完善的答案。在判断是否继续输入纸牌编码的功能中,同样遇到了这个问题,按照相同的解决办法解决。

整个程序由一个大的do-while 语句和switch 语句组合实现界面的不同功能,do-while 语句通过choice=0作为结束的条件,在case 3中,有一个小的do-while 语句实现纸牌编号的重复输入,在整个程序中有很多信息的输入,需要根据输入的信息正确与否来反馈信息,否则会导致程序出错,所以在调试的过程中加入了很多判断条件,可以解决信息输入错误的情况,但是仍然存在输入非整型值程序出错的问题,所以在输入条件中加入提示信息,以保证信息类型输入正确。

5 测试结果及其分析

1. 测试结果如下图5.1-5.11;

2结果分析以注释的形式写在图的下方;

图5.1:MessageBox 制作的一个欢迎提示

5.2:纸牌游戏程序的主功能界面

5.3:纸牌游戏程序功能1:查看题目

5.4:纸牌游戏程序功能2:查看所有纸牌的翻牌次数

5.4.1:续

5.4

第一章 题目与要求

5.4.2:续5.4

5.5:纸牌游戏程序功能3:查看指定编号纸牌翻牌记录

5.6:纸牌游戏程序功能4:查看最终正面向上的纸牌编号

5.7:纸牌游戏程序结束画面

5.8:主界面输入错误提示

5.9:功能3输入错误提示以及判断是否需要继续查询纸牌编码

5.10:回主菜单判断以及输入错误提示

5.11:功能5输出制作人信息

6 用户使用说明

用户运行程序,按操作提示进行操作。程序运行环境VC++6.0。

见附录

7 源代码

结论

这个学期是我第一次接触《数据结构》,在完成设计的过程中,我遇到了一系列的问题,能明显感觉到自己在很多方面的不足,但另一方面,问题是要分析解决的,找出问题以便为完善学习计划,改变学习内容与方法提供实践依据。所以在整个过程中,我不断加深了对数据结构的理解与一些程序写书时要注意的事项,体会了《数据结构》这门课程在解决现实生活问题上的可行性,也更进一步地激发了我的学习热情。

做一个课程设计要注意很多方面,无论是格式,还是书写的内容和要表达的思想都得严格要求自己,所以做起来真的不算容易。本次课程设计涉及了很多知识,由于往日没有学得很扎实,对某些问题仍然比较疑惑,所以要进行充足的补习。期间,我翻阅了很多书籍,知识总是联系很紧密的,解决完这个问题又发现了新的问题,之后,为了解决新问题又发现了更多的问题,就这样,我得等到一个一个把问题处理完。

问题越多,明白的也就会越来越多,做一次课程设计就像从头到尾做了一次系统的复习,从基础到难点,从轮廓到每个知识点,数据结构的研究内容在我的脑海里就再也不像以前那么模糊了。设计程序来解决现在存在的问题,把理论知识付诸于实践,对于我们这些计算机专业的本科生来说,实际能力的培养至关重要,而这种实际能力的培养单靠课堂教学是远远不够的,必须从课堂走向实践,这也是我们学习的目的。做完设计,我已深刻体会到了学习这门课程的重要性与必要性了,同时,它留给我很多思考:学习是思考一个的过程,我们应该主动去想学习一门知识后怎么去运用,而不是一味地被动地接受。

数据结构及其算法在解决现实生活中的常见问题和书写软件设计方面上都有着重要的意义,我们应该好好掌握它的相关知识,在以后的学习过程中,更多的去学会如何运用知识。

参考文献

[1].王昆仑、李红 《数据结构与算法》 北京:中国铁道出版社

[2].宁国正 《数据结构(C 语言版)》 南京:东南大学出版社

[3].严尉敏 《数据结构(C 语言版)》 北京:清华大学出版社

[4].吴乃陵 《C ++程序设计》 北京:高等教育出版社

[5] 谭浩强,张基温,唐永炎编著. C 语言程序设计教程. 北京:高等教育出版社,1992

[6] 谭浩强编著. C 语言程序设计. 北京:清华大学出版社, 2007

[7] 严蔚敏,吴伟民编著. 数据结构(C语言版) . 北京:清华大学出版社,2008

[8] 严蔚敏,吴伟民,米宁编著. 数据结构题集(C 语言版)北京:清华大学出版社,2008

[9] 刘爱民编著. 离散数学. 北京; 北京邮电大学出版社,2008

附录

程序源代码:

#include

#include

#define Flag -1//定义一个全局变量作为正反面的判断条件。

void main()

{

int i,j,data[52],flag[52],choice,num;//建立两个数组,一个存放52张牌的编号,另外一个存放相应编号的纸牌的翻牌记录。

char m,n;

MessageBox(NULL,"欢迎进入纸牌游戏程序!"," 温馨提示",MB_ICONASTERISK);//添加了一个MessageBox 欢迎对话框

for(i=1;i

{

data[i-1]=i;//录入52张牌的编号。

flag[i-1]=0;//将相应编号纸牌的翻牌数初始化为0。

}

for(i=2;i

{

for(j=1;j

{

if(j%i==0)

{

data[j-1]=data[j-1]*Flag;//将翻转后的结果更新data 中的数据。 flag[j-1]++;//翻牌一次,即记入flag 数组中。

}

}

}

do{

printf("\t-----------------------------------------------------------\n");

printf("\t-----------------------------------------------------------\n");

printf("\t--------- 欢迎进入纸牌游戏 -----------\n"); printf("\t--------- 1. 查看题目 -----------\n"); printf("\t--------- 2. 查看所有纸牌的翻牌次数 -----------\n"); printf("\t--------- 3. 查看指定编号纸牌翻牌记录 -----------\n"); printf("\t--------- 4. 查看最终正面向上的纸牌编号 -----------\n"); printf("\t--------- 5. 制作人信息 -----------\n");

printf("\t--------- 0. 按0键结束 -----------\n"); printf("\t-----------------------------------------------------------\n");

printf("\t-----------------------------------------------------------\n");

printf("请输入您的选择(数字0-5):"); //主界面

scanf("%d",&choice);

switch(choice)//通过switch 语句进行功能的选择

{

case 1:{

printf("---题目---\n");

printf("**************************************************************\n");

printf("编号为1-52张牌,正面向上,从第2张开始,以2为基数,是2的倍数的牌翻一次,");

printf("直到最后一张牌;然后,从第3张开始,以3为基数,是3的倍数的牌翻一次,");

printf("直到最后一张牌;直到以52为基数的翻过,输出:这时输出正面向上的牌有哪些?\n");

printf("****************************************************************");

printf("\n");

printf("\n");

printf("是否回到主菜单?(Y/N):");//在每个独立功能后添加了独立的判断语句,从而可以选择性的回到主菜单。

n=getchar();

n=getchar();

if(n=='Y')break;

else if(n=='N')

choice=0;//0作为整个界面的循环结束条件,所以直接将choice=0,即可结束循环。

else printf("**********(提示:输入错误,默认为继续。)***********\n"); }break;

case 2:{

printf("以下为翻牌记录:\n");

printf("\t----第1张牌翻过0次。----\t");

printf("\n");

printf("\n");

for(i=1;i

{

printf("\t----第%d张牌翻过%d次。----\t",i+1,flag[i]);

if(i%2==0)

printf("\n");

}

printf("\n");

printf("是否回到主菜单?(Y/N):");

n=getchar();

n=getchar();

if(n=='Y')break;

else if(n=='N')

choice=0;

else printf("**********(提示:输入错误,默认为继续。)*********** **\n"); }break;

case 3:{

do{

printf("\t请输入您想查询的纸牌编码:");

scanf("%d",&num);

if(num52)//纸牌的序号为1-52,所以其他数值都为输入错误。

printf("\t输入错误!\n");

else

{

printf("\t纸牌翻转记录如下:\n");

printf("\t纸牌翻转次数为%d\n",flag[num-1]);

for(j=2;j

{

if(num%j==0)

{

printf("\t在以编号%d为基数时此纸牌有一次翻转。\n",j); }

}

}

printf("需要继续查询纸牌编码吗?(Y/N):");//独立的判断语句,作为do-while 的结束条件,从而可循环的查询纸牌编码。

m=getchar();

m=getchar();

if(m!='Y'&&m!='N')

printf("************(提示:输入错误,默认为跳过。)******** **\n");

}while(m=='Y');

printf("是否回到主菜单?(Y/N):");

n=getchar();

n=getchar();

if(n=='Y')break;

else if(n=='N')

choice=0;

else printf("**************(提示:输入错误,默认为继续。)***** *****\n");

}break;

case 4:{

printf("\t最后所有正面向上的牌有:\n");

for(i=0;i

{

if(data[i]>0)//所有大于0的数即为正面向上的纸牌。

printf(" 第%d张牌 ",i+1);

}

printf("\n");

printf("是否回到主菜单?(Y/N):");

n=getchar();

n=getchar();

if(n=='Y')break;

else if(n=='N')

choice=0;

else printf("***************(提示:输入错误,默认为继续。)**** ******\n");

}break;

case 5:{

printf("\t\t\t制作人: \n");

printf("\t\t\t班级: \n");

printf("\t\t\t指导老师: \n");

printf("是否回到主菜单?(Y/N):");

n=getchar();

n=getchar();

if(n=='Y')break;

else if(n=='N')

choice=0;

else printf("***************(提示:输入错误,默认为继续。)****** *****\n");

}

case 0:break;

default:printf("\t输入错误,请重新输入!\n");

}

}while(choice!=0);//0作为整个循环的结束条件。

printf("*******************程序结束,谢谢使用********************\n"); }


相关内容

  • 电大幼儿园课程与活动设计作业
    幼儿课程与活动设计 作业1 一.名词解释 1. 幼儿园课程 幼儿园课程的定义是:影响幼儿的所有与幼儿园有观的经验,具体表现为帮助幼儿获得有益的学习经验.促进其身心全面和谐发展的各种教育活动的总和 2. 幼儿园游戏活动 游戏活动是儿童自主自愿 ...
  • 幼儿园游戏化教学
    幼儿园课程游戏化的组织策略 上传: 彭湘晖 更新时间:2012-12-29 21:04:58 <幼儿园教育指导纲要(试行)>明确规定:幼儿园"以游戏为基本活动".这一命题确定了游戏在幼儿园教育活动中的地位,对 ...
  • [幼儿园语言教育专题]课程作业评讲
    <幼儿园语言教育专题>课程作业评讲(1) 责任教师张莉 <幼儿园语言教育专题>作业评讲(1)主要针对<幼儿园语言教育专题>平时作业(1) (教材第一.二章语言功能篇的内容)中的部分简答题和论述题进行评讲. ...
  • 数据结构课程设计18二十四点游戏2
    一.课程设计概述: 人工输入是个1-9的数字.计算机输出所有的算法.并输出计算机运算出这些算法索花费 的时间. 使用语言:C++ 编译环境:TC3.0 / VC6.0 二.课程设计题目一 [实验内容] 计算四个数如何变成二十四的所有算法 [ ...
  • 幼儿英语教学法大纲
    <幼儿英语教育活动指导>课程教学大纲 课程编码:XQJY0101 适用专业:应用英语专业(学前教育方向) 学时:72学时 一.编写说明 (一)本课程的性质.地位和任务 本课程是高职高专学前教育专业学生必修的专业基础课.通过本课程 ...
  • 幼儿园课程与活动设计01
    试卷代号:1 335 中央广播电视大学2011-2012学年度第二学期"开放本科"期末考试 幼儿园课程与活动设计 试题 一.单项选择题 1."课程是指学生体验到的意义",对课程的这种定义是认为( ). ...
  • [学前教育学原理]考试复习重点
    <学前教育学原理>考试复习重点 第一章 1. 学前教育:指旨在促进入学前儿童(0-6.7岁)的身心全面.健康与和谐发展的各种活动与措施的总和.P2 2. 学前公共教育:是指由家庭之外的社会(包括国家.社区.单位.私人)指派专人组 ...
  • 20**年美术新课程标准
    义务教育美术课程标准(2011年版) 第一部分 前言 美术以视觉形象承载和表达人的思想观念.情感态度和审美趣味,丰富人类的精神和物质世界.美术教育具有悠久的历史,近代以来,美术课程更以其丰富的教育价值列入中小学课程体系中.当代社会的发展对国 ...
  • 红河县职称论文发表网-信息技术小学体育论文选题题目
    云发表,专业论文发表网站!http://www.yunfabiao.com/ 面向作者直接收稿,省去中间环节,价格更低,发表更快,收录更快! 红河县职称论文发表网-信息技术|小学体育论文选题题目 红河县职称论文发表网-以下是信息技术|小学体 ...
  • 20**年幼儿园教师招考试题
    2012幼儿教师招考试题 2012-07-15 19:36 2010年教师资格证考试幼儿教育学模拟试题及答案解析一 一.单项选择题(每题2分,共30分) 1.( )国家教委正式颁布的<幼儿园工作规程>中规定:"幼儿园是 ...