当前位置:首页 » 编程语言 » 平面刚架程序c语言
扩展阅读
webinf下怎么引入js 2023-08-31 21:54:13
堡垒机怎么打开web 2023-08-31 21:54:11

平面刚架程序c语言

发布时间: 2022-08-16 17:53:09

‘壹’ c语言代码:将大量空间点(x,y,z也就是三维的数组) 拟合成一个平面的代码

您好,您这样:
#include<iostream>
#include<cmath>
using namespace std;
double solve(int x,int y,int z) //计算坐标到原点距离
{
return sqrt(x*x+y*y+z*z);
}
int main()
{
int i,x,y,z; //定义三维坐标 存x,y,z
double dis,maxdis=0; //定义最远距离
for(i=0;i<15;i++)
{
cin>>x>>y>>z; //输入
dis=solve(x,y,z); //计算
maxdis=dis>maxdis?dis:maxdis; //判断远近
}
printf("%lf\n",maxdis);//输出最远的
return 0;
}

‘贰’ 用C语言编写一个简单的程序

画菱形的代码:

#include <stdio.h>
void main() {
int i,j,k;
/*i控制要打印的行数,
*j控制要打印的空格数,
控制要打印的星号的个数*/

//先打印上边的4行
for(i=1;i<=4;i++) //控制要打印的行数
{
for(j=1;j<=4-i;j++) //控制每行要打印的空格数
printf(" ");
for(k=1;k<=2*i-1;k++) //控制打印第一个“*”到第二个“*”
{
if(k==1||k==2*i-1) //只在循环的边界值打印“*”,否则打空格
printf("*");
else
printf(" ");
}
printf("\n");
}

//然后打印下边的3行
for(i=1;i<=3;i++) //控制要打印的行数
{
for(j=1;j<=i;j++) //控制每行要打印的空格数
printf(" ");
for(k=1;k<=7-2*i;k++) //控制每行要打印的“*”的个数
{
if(k==1||k==7-2*i) //只在循环的边界值打印“*” ,否则打印空格
printf("*");
else
printf(" ");
}
printf("\n");
}
}

‘叁’ 什么是自考

自考是不是有15门课程?

不一定,自考的专业课程基本上最少在十五以上。

是不是自己买书回来自学,学好后去报名考试?

可以自己买书回来自学,也可参加社会上辅导班,不能等到学好后再去报名,因该在每年当地自考办规定的时间报考。

还有我如果在6月份报名,10月份考试的时候是15门一起考,还是考15门中的几门呢?

每次最多只能报4门,因为每次考试时间只有2天,上午下午各一门,所以最好只能报4门。

机械制造及自动化教育专业与机械制造及自动化区别?

其实区别不大,如果想从事教育事业的话当然最好学前者,如果是从事机械制造方面的工作的话2个专业都没有问题。

机械制造及自动化教育专业与机械制造及自动化专业课程?

机械制造及自动化教育专业(本科)介绍

序号课程代号课程名称学分 1 022 毛泽东思想概论 2 2 033 马克思主义政治经济学原理 3 3 656 物理(工) 6 4 301 英语(二) 14 302 日语 303 俄语 304 法语 5 474 概率论与数理统计 3 6 648 C语言程序设计 4 7 468 微机原理及接口技术 6 8 650 机械制造技术 7 9 651 液压传动与气动技术 4 10 463 数控技术及其应用 4 11 653 电器传动与可编程控制器(PLC) 4 12 654 特种加工 5 13 471 工程经济 3 14 644 职业教育与心理学 4 15 655 车钳操作技能 4 16 434 机械制图 6 17 436 材料力学 4 18 437 机械原理与机械零件 8 19 毕业设计

说明:16-18三门为加考课程。

(a)机械类专业专科毕业生可直接报考本专业;

(b)非机械类专业专科及以上毕业生报考本专业,需加考:“机械制图”、“材料力学”、“机械原理与机械零件”三门课程。

机械制造及自动化专业考试计划�

一、指导思想�

自学考试机械制造及自动化专业主要是为适应我国当前对机械制造及自动化专业人才的迫切需要而设置的。同时,根据高等教育自学考试的特点,注重考核应考者对本专业基本知识、基本理论和基本技能的掌握以及运用所学知识分析问题和解决问题的能力。�

二、学历层次与规格�

机械制造及自动化专业设专科与独立本科段,分别为专科与本科层次,其总体要求与全日制普通高等学校相同或相近专业的专科与本科水平一致。课程均采用学分计算。每门课程考试合格后发给单科合格证书,并取得相应学分。

凡按照本专业考试计划专科的规定,取得5门公共基础课,7门专业基础课和3门专业课合格成绩,累计不少于78学分,思想品德经鉴定符合要求者发给专科毕业证书。

凡按照本专业考试计划独立本科段的规定,本专业专科毕业或非本专业专科毕业取得规定的加考课程合格成绩后,再取得本科规定的4门公共基础课,6门专业基础课和3门专业课合格成绩,累计达到75学分,并且毕业设计合格,思想品德经鉴定符合要求者发给本科毕业证书;同时,其学业水平达到了国家规定的学位标准,按照《中华人民共和国高等教育法》第二十二条和《中华人民共和国学位条例》的规定,由具有学位授予权的主考学校授于学士学位。

三、专业培养目标和基本要求

专科层次培养从事机械制造工艺编制和工艺装备设计,机械制造设备选用、管理的应用型工程技术人才。

要求掌握本专业所必需的计算机应用、工程力学、机械设计、电工与电子技术、机械制造技术、数控技术等基础知识;具有初步的计算机绘图、编制机械加工工艺与设计工艺装备的能力,能够初步选用和管理机械制造设备,具备一定的经济分析能力。

独立本科段培养机械制造及自动化领域内设计制造、科技开发、应用研究、技术改造、经济管理方面的高等工程技术人才。

本科的专业基本要求是:掌握概率论与数理统计、计算机软件基础、工业用微型计算机、检测技术、可编程序控制器、现代设计方法、机械制造装备设计、精密加工、特种加工、自动化制造系统和经济管理等基础知识;具有机电、计算机相结合的初步设计能力和从事现代机械制造的能力。

四、考试课程与学分�

(一) 专科

考试课程及学分要求:本专业考试课程不得少于15门,总学分不得少于77学分。

必设课程及学分:公共政治课2门(8)、大学语文(4)、外语(7)、高等数学(7)、计算机应用基础(4)、机械制图(7)、工程力学(机)(5)、机械设计基础(7)、电工与电子技术(6)、机械制造基础(5)、机械制造技术(7)、工程经济(3)、数控技术及应用(4)。

实践性环节及要求:

(1)实习:金工实习,了解铸造、锻压、焊接、车削、铣削、刨削、磨削和钳工的操作工艺。
(2)含实验的课程及实验所占学分:计算机应用基础<2>、机械制图<1>、电工与电子技术<2>、机械制造基础<1>、机械制造技术<1>、数控技术及应用<1>。
(3)含课程设计的课程及课程设计所占学分:机械设计基础<2>、机械制造技术<1>。

说明:
(1)机械制图含机械制图、计算机绘图、公差,1学分为计算机绘图上机。
(2)工程力学(机)含理论力学、材料力学。

(二)独立本科段�

考试课程及学分要求:本专业考试课程不得少于13门,总学分不得少于77学分。

必设课程及学分:公共政治课(4)、外语(14)、物理(工)(6)、概率论与数理统计(3)、现代设计方法(6)、传感器与检测技术(5)、经营管理(5)、微型计算机原理与接口技术(6)、电气传动与可编程控制器(PLC)(4)、机械制造装备设计(7)、自动化制造系统(7)、精密加工(5)、特种加工(5)。

实践性环节及要求:

(1)含实验的课程及实验的所占学分:物理(工)(1)、现代设计方法(1)、传感器与检测技术(1)、微型计算机原理与接口技术(2)、电气传动与可编程控制器(PLC)(1);
(2)含课程设计的课程及课程设计所占学分:机械制造装备设计(2)、自动化制造系统(2)任选1门;
(3)毕业设计(论文)并答辩。

说明:
(1)本专业专科毕业生可直接报考本专业;
(2)动力工程类专业专科毕业生报考本专业,须加考机械制造技术(7)、数控技术及应用(4);
(3)工科类其他专业专科毕业生报考本专业,须加考机械制图(7)、机械制造技术(7)、数控技术及应用(4)。

五、课程说明与自学教材

(1)专科�

1、政治经济学(略)�
自学教材:《政治经济学》(全国高等教育自学考试指导委员会组编)宁玉山主编,1993年出版,武汉大学出版社。�

2、哲学(略)
自学教材:《哲学原理》(全国高等教育自学考试指导委员会组编)肖明主编,1997年出版,经济科学出版社。

3、大学语文(专)�

该课程的主要内容精选了56篇古今优秀议论文、说明文、记叙文和诗歌,以及对这些作品的思想内容和写作方法的简要分析评价。学习的目的是为了使自学应考者在高中语文程度的基础上,进一步提高对汉语言文学文章的阅读理解的能力和对文学作品的初步分析评价能力,提高写作的能力和文化素养。�

自学教材:《大学语文》(全国高等教育自学考试指导委员会组编)徐中玉主编,1994年出版,华东师范大学出版社。

4、英语1�

课程目的是使应考者掌握英语的基本知识,具有3000以上的英语词汇,学会使用常用的语言工具书,具有初步的独立阅读能力和翻译能力。应考者在学完本课程后,能掌握基本阅读能力,能凭借工具书阅读与本专业有关的英文资料并能译成中文,译文基本通顺。�

自学教材:《大学英语自学教程》(上册)(全国高等教育自学考试指导委员会组编)高远主编,1998年出版,高等教育出版社。

5、高等数学(工专)�

课程要求:使应考者获得一元函数和微积分学和常微分方程,多元函数微积分学(包括空间解析几何)和级数的初步知识。掌握各有关内容的基本概念、基本理论和基本方法,具有比较熟练的运算能力和分析问题与解决问题的能力,同时培养抽象思维和逻辑推理能力,空间想象能力及抽象数学模型的初步能力。

自学教材:《高等数学》(上、下册)(全国高等教育自学考试指导委员会组编),陆庆乐、马知恩主编, 1991年出版,高等教育出版社。

6、计算机应用基础(略)�

自学教材:《微型计算机应用基础》(全国高等教育自学考试指导委员会组编)杨明福主编, 1996年出版,机械工业出版社。

7、机械制图�

本课程的其目的是培养应考者绘图、读图能力和初步的图解能力,同时学习公差与配合的基本知识。要求学会基本画法、能正确地绘制和阅读一般零件图和中等复杂程度的装配图。随着计算机绘图新技术的发展,要求了解计算机绘图的基本知识,熟悉计算机绘图系统的组成,并初步掌握用一种典型的绘图软件来绘制二维图形。�
自学教材:《机械制图》、《机械制图习题集》(全国高等教育自学考试指导委员会组编)虞洪述主编,2000年出版。

8、工程力学(机)�

课程的基本要求是:掌握力学的简化及物体平衡时作用力之间的关系,掌握物体运动的特征及作用于物体上的力与物体运动的变化之间的关系 ,掌握工程构件的强度,刚度和稳定性问题。

自学教材:《工程力学》(全国高等教育自学考试指导委员会组编),张德润主编,2000年出版, 出版社待定。

9、机械设计基础�

课程的基本要求是:掌握和了解机械构造、运动、受力和机械效率,以及按给定的运动要求和力学条件选择机构类型和设计其主要尺寸。掌握和了解机械零件的工作
原理、特点、失效形式、选用和计算方法。培养应考者具有运用标准、手册进行一般参数的通用零件和简单机械装置设计的初步能力。�

自学教材:《机械设计基础》(全国高等教育自学考试指导委员会组编)丁洪生主编, 2000年出版。

10、电工与电子技术�

本课程主要是研究电磁现象和电子技术在工程技术领域中的应用。要求应考者掌握电路、电机以及电子技术方面的基本理论、基本知识以及工程技术领域中应用的基本技能,着重于理解、掌握基本的实验技能。

自学教材:《电工与电子技术》(全国高等教育自学考试指导委员会组编) 赵积善主编, 1999年出版,中国电力出版社。

11、机械制造�

本课程是研究常用机械零件的制造方法,即研究零件从选择材料、毛坯制造和热处理方法,直到机械加工成成品的密切联系生产实践的综合性课程。包含金工实习,应考者需在生产现场观察铸造、锻压、焊接、热处理和切削加工。

自学教材:《机械制造基础》(全国高等教育自学考试指导委员会组编) 盛善权主编, 1999年出版,出版社待定。

12、工程经济�

课程主要内容包括:工程经济分析的基本经济要素,工程经济分析的基本原理,经济效益评价的基本方法,工程项目的可行性研究,新产品开发与价值工程、设备磨损的补偿及其经济分析、生产成本控制与分析等;通过学习,应掌握工程经济的基本知识和基本理论以及经济效益的评价方法,以市场为前提,经济为目标,技术为手段,对多种技术方案进行经济效益评价、判断,并作出决策。�

自学教材:《工程经济》(全国高等教育自学考试指导委员会组编)陈锡璞主编,2000年出版,出版社待定。

13、机械制造技术�

课程的基本要求是:了解切削过程,机床功用,典型零件机械加工工艺和现代机械制造技术的新发展。重点掌握机械加工工艺规程制订,夹具设计原理与机械加工质量,机器装配工艺等基本理论和基本技能。通过本课程的学习,使应考者具有制订工艺规程、设计专用夹具和分析、解决机械制造生产过程工艺技术问题的初步能力。为从事本专业的技术和管理工作奠定基础。�

自学教材:《机械制造技术》(全国高等教育自学考试指导委员会组编)董海森主编, 2000年出版。�

参考教材:《机械制造技术》黄鹤汀、吴善元主编 机械工业出版社。

14、数控技术及应用�

数控技术及应用是本专业专科的一门专业课。课程的基本内容为通过典型产品数控机床,学习设备的主体结构、计算机控制原理、伺服系统和反馈系统等方面的知识,并重点掌握两座标控制的编程技术,其中包括必要的数学计算。使应考者掌握数控机床的主要结构、工作原理、调试、检测、运行和维护方面的基本知识和技能。�
自学教材:《数控技术及其应用》(全国高等教育自学考试指导委员会组编) 林其骏主编, 2000年出版。�

(2)独立本科段�

1、中国革命史(略)�

自学教材:《中国革命史》(全国高等教育自学考试指导委员会组编)何沁主编, 1993年出版, 武汉大学出版社。

2、英语2�

本课程适用于完成了中学阶段英语课程的应考者。包括较系统的英语语法知识,英语单词约3800个(其中中学词汇约1600个)和词组约750个,阅读量为50000余词。本课程的重点为英语的基本词汇和语法,课程的主要目的为培养阅读能力。

自学教材:《大学英语自学教程》上、下册(全国高等教育自学考试指导委员会组编)高远主编, 1998年出版, 高等教育出版社。

3.物理(工)�

课程内容包括:力学、热学、电磁学、振动、波动、波动光学和近代物理学的基础理论;物理实验的理论基础和基本技能;现代物理主要分支学科发展介绍;及其在科学技术和生产实际中应用的初步知识。本课程是工科专业的一门重要基础课,可为高等工程技术人员掌握科学的思想方法、培养科研能力、开阔视野、激发探索和创新精神、提高科学素质及今后进一步学习新理论、新技术奠定必要的物理学基础。�

自学教材:《物理》(工)(全国高等教育自学考试指导委员会组编)丁俊华、祁有龙主编,1999年出版, 辽宁大学出版社。

4、概率论与数理统计�

课程内容包括:随机事件与概率、随机变量与概率分布、随机向量、随机变量的数学特征、极限定理、样本、统计量与抽样分布,参数估计、假设检验、回归分析和方差分析。

自学教材:《概率论和数理统计》(全国高等教育自学考试指导委员会组编)范金城主编,1999年出版,辽宁大学出版社。

5、计算机软件基础�
课程主要内容为:C语言与数据结构基础、数据库管理系统的应用,软件设计与开发的基本方法。本课程应有一定的上机实践。

自学教材:《计算机软件基础》(全国高等教育自学考试指导委员会组编)雷田玉主编,1999年出版,出版社待定。

6、工业用微型计算机�

课程主要内容为微机系统的组成原理以及在机电一体化工程中的典型应用。本课程的基本要求是:学习目前最通用的主流机型IBM-PC计算机的原理和组成,学习其指令系统,并能编制汇编语言程序,熟悉和初步掌握PC总线工控机接口技术、可编程控制器(PLC)的原理和应用,在此基础上,进一步学习计算机网络知识,为后续课程打下基础。本课程应有必要的上机(软件和硬件)实验。

自学教材:《工业用微型计算机》(全国高等教育自学考试指导委员会组编) 赵长德主编,1999年出版,机械工业出版社。

7、传感器与检测技术�

本课程研究的对象是机械工程中常用的传感器的工作原理及其特性,中间转换器及与微机接口,本课程对动态测试及其信号分析与处理也作简明介绍。通过学习,初步掌握传感检测技术、标定和校准方法,熟悉动态测试及其信号分析与处理的概念和方法。结合典型实例了解传感器在机电产品中的应用。本课程应有必要的实验。

自学教材:《传感器与检测技术》(全国高等教育自学考试指导委员会组编) 张建民主编, 2000年出版。�

8、电气传动与可编程控制器�

电气传动与可编程控制器是本专业本科段的一门专业基础课。它是研究机械制造中的电力拖动,电气自动控制问题的一门学科。课程的基本要求是:掌握特种电机的控制、驱动系统的工作原理、系统分析、设计方法及PLC可编程控制器的工作原理与应用。

参考教材:《机床电力拖动与控制》王光铨主编,机械工业出版社。

9、经济管理�

课程系统地阐述了工程技术人员所必需的有关企业的经济管理方面的知识,课程的基本要求是:了解企业生产管理、质量管理、设备和物资管理、人力资源管理以及财务成本管理等方面的基本知识,掌握其在市场预测、经营决策中的一般方法,以及在产品开发、工程项目投资中的技术经济分析评价和投资决策的具体方法。�

参考教材:《企业管理与技术经济》唐齐千等编,上海交通大学出版社。

10、现代设计方法�

课程以计算机辅助设计(CAD)为主线,将有限元法和优化设计贯穿起来,并选一个简单的计算机软件将有限元法和优化设计的方法加以综合应用。本课程的主要内容包括:发展中的现代设计方法、计算机辅助设计(CAD)、优化设计、有限元法,可靠性设计,平面刚架CAD设计和优化系统设计。通过学习,应初步掌握这些设计方法的基本原理和应用,为在工程中应用打下基础。�

自学教材:《现代设计方法》(全国高等教育自学考试指导委员会组编)应锦春主编,2000年出版,机械工业出版社。

11、精密加工与特种加工�

精密加工是研究其所用的技术、工作原理和方法的课程。
基本要求是:掌握精密加工和超精加工方法,加工误差与加工精度分析(热变形、振动、残余应力),精密元件加工,精密加工和超精密加工技术的展望。特种加工是有别于传统机械切削加工的一些新的加工技术和方法,它是直接利用电能、电化学能、声能、热能以及将机械能等能量形式对各种难加工材料和复杂型面进行加工,基本要求是:掌握电火花加工、线切割加工、电化学加工、激光加工、超声波加工、电子束和离子束加工等各种特种加工方法的基本原理、基本设备、工艺规律和主要特点及其应用范围。�
参考教材:《精密加工》袁哲俊主编。�《特种加工》刘晋春、陆纪培主编, 机械工业出版社。

12、机械制造装备设计�

课程介绍各类主要机械制造装备的用途、功能和工作原理及掌握主要机械制造装备的设计原理和方法。课程的基本要求是:掌握金属切削机床设计、工业机器人设计、物流系统设备设计。为今后分析与解决机械制造装备的设计、改装、运行、开发与维修等工作打下一定的基础。�

参考教材:《机械制造装备设计》冯辛安主编,机械工业出版社。

13、自动化制造系统�

自动化制造系统是学习现代制造技术中的各种生产自动化的加工方法和特点。课程的基本要求是:成组技术;CAPP、FMS、CAD/CAM、CIMS;现代制造管理技术及物流技术等现代先进制造系统。要求应考者运用过去所学知识和本课程基本知识相结合,来分析和处理机械制造自动化技术问题的初步能力。

参考教材:《先进制造技术》张根保等编,重庆大学出版社。

近日有不少网友来电来函咨询诸如何报名考试”、“自考有哪些专业”、“自考有什么要求?”。为了让大家对自考有个全面的了解,现将参加自学考试的步骤简单总结如下,供大家参考。

参加自学考试,基本上分为以下五个步骤:

第一步: 认识高等教育自学考试
第二步: 报名前的准备
第三步: 报名参加自学考试
第四步: 考试要注意的事项
第五步: 办理毕业

☆ 第一步:认识自考

要参加自学考试,首先就要对我国的高等教育自学考试制度有个初步的了解。

高等教育自学考试是我国高等教育的重要组成部分。是个人自学、社会助学和国家考试相结合的,有中国特色的高等教育形式。且参加自学考试的考生不受性别、年龄、民族、种族和已受教育程度的限制,不用经过入学考试,即可根据自己的情况选择相关的专业,参加该专业课程的学习。经过国家组织的统一考试,取得合格成绩。在通过教学计划规定的全部理论和实践课程的考试后,即可取得大学专科或本科的毕业证书。本科毕业生还可以申请学士学位。

自学考试的学历受到国家的承认,自学考试毕业生享有与普通高校同类毕业生相同的待遇。《中华人民共和国高等教育法》明确规定“国家实行高等教育自学考试制度,经考试合格的,发给相应的学历证书”。国务院颁布的《高等教育自学考试暂行条例》中也明确规定“高等教育自学考试毕业证书获得者的待遇与普通高校同类毕业生相同”。

☆ 第二步:报名前的准备

一、选择专业:

首先,要认真阅读本省(市)高教自学考试委员会公布的《报考简章》,了解本省(市)的报名时间、报名地点、报名手续、开考专业的情况和本次考试的课程安排,根据自己报考时的工作性质和实际情况,慎重选择一个专业报考。目前我们收集了部分省市开考的专业信息(点击查看)。

在选报专业时应注意,由于各省开考的专业较多,有些专业是面向社会开考,报考对象不限;有些专业是部门委托开考,仅限本系统在职人员报考;一些本科段专业和特殊专业(如医学类专业)对报考者的学历、职业等还有一些具体要求。

首先应该考虑自己的兴趣和爱好。兴趣是最好的老师,你只有感兴趣的东西,才会真正投入的去学。

其次,要选择与自己文化基础相适应的专业,以保证学习的顺利进行。比如你的数学基础比较好,逻辑思维比较灵活,则可以考虑选择理工类的专业;如果你的记忆力比较不错,可以选择识记性较强的专业。

第三,要充分考虑到社会的需要及该行业的发展状况,选择一些社会上已供大于求的专业,对今后的求职和就业会造成影响。高等教育自学考试现有专科、本科两个学历层次,专科、本科、独立本科段三种专业类型。 点击查看专业介绍(专科段 本科段 独立本科段)及 类型详解 。

在选择好专业的基础上,确定本次应考课程,并在规定的时间内办理报名手续。选定专业和本次应考课程后,应尽早购买该专业的《专业考试计划》,按有关课程的《课程自学考试大纲》和指定的必读教材进行自学。

二、选择辅导班及教材应注意的事项

1、辅导班的选择

社会助学是连接自学者与国家考试的中间环节,是帮助自学者走向成功的桥梁和纽带。社会助学的组织形式大致有以下几种类型:

(1)高等学校举办的自考助学。包括普通高等院校,也包括电视大学、各级党、团、干校等院校。这些学校助学多为可脱产学习的全日制办学形式,学校的教学设施比较齐全,师资力量雄厚,开办的助学专业也较多,比较适合高中毕业生和非业余学习人员继续接受高等教育的需要。

(2)委托开考部门和用人单位举办的自考助学。包括部门组织的学校、培训中心及各种形式的辅导站。

这种部门助学的最大优势是把自考助学的专业与发展所需要的人才培养方向有机结合起来,形成有系统有组织的助学活动,从参学职工的行业特点出发,学习的时间和方式灵活多样,有利于解决工学矛盾,因而更适合在职职工按照从事的工作选好专业,参加助学。

作者: kgdxk 封 2006-3-17 21:16 回复此发言 删除

--------------------------------------------------------------------------------

2 自考步骤参考

(3)社会力量助学。这种助学组织多数属于民办大学,有社会团体、民主党派举办的学校,也有社会有关部门的离退休人员依托有关单位举办的助学学校。

选择学习班时应注意以下问题:

(1)要选择经过教育行政部门审批,自考机构审查、备案的,具有正式办学资格的助学组织。

(2)学校开设的是否属于国家自考系列,与考生自己所选择的专业是否一致。在报考前,先看一下学校专业介绍和各省、市、自治区自考办的专业考试计划,将专业设置的课程目录浏览一遍,做到心中有数。

(3)学校的助学方式和授课时间是否适应个人的情况,如全脱产、半脱产,业余、夜校和函授等等。考生可以根据自己的学习时间、学习计划,权衡哪种方式最适合自己。

(4)了解学校的办学质量,看一看学校的设施(硬件)和管理(软件)怎样?哪些教师任课?学生的课程统考及格比例在当地的水平如何?这些都是考生选择学校前应该了解清楚的。

(5)另外,自学考试的某些专业,或某个层次,对考生来说,还有具体报考条件的限制。

比如报考医药类的各个专业,就需要在职、专业对口等条件。专科接本科的考生,报考时还需要具备专科毕业资格,即使助学学校对学生入学时暂不作硬性规定,考生自己也要了解清楚具体的报考要求,免学到中途再走弯路。

(6)目前自学考试的多数专业都有实验课程和实践环节考核,考生选择的助学学校,是否具备较好的实验和实践环节考核条件,这也是考生完成学业必不可少的条件。

2、教材的选择

高等教育自学考试教材实行两级管理。凡是全国统考课程的教材由全国考委组织编写、出版,并作为全国考委指定教材向考生供应;凡是省统考课程由省考委编写或指定教材。

全国及各省自考办每年都要向社会公布开考计划,计划中对每门课程使用的教材都有明确规定,考生应注意所规定的教材的名称、作者、出版社等有关信息,以便按规定购买。

自考教材

‘肆’ C语言平面连杆机构计算机辅助设计

得所要求的输出。算法常常含有重复的步骤和一些比较或逻辑判断。如果一个算法有缺陷,或不适合于某个问题,执行这个算法将不会解决这个问题。不同的算法可能用不同的时间、空间或效率来完成同样的任务。一个算法的优劣可以用空间复杂度与时间复杂度来衡量。
算法的时间复杂度是指算法需要消耗的时间资源。一般来说,计算机算法是问题规模n 的函数f(n),算法执行的时间的增长率与f(n) 的增长率正相关,称作渐进时间复杂度(Asymptotic Time Complexity)。时间复杂度用“O(数量级)”来表示,称为“阶”。常见的时间复杂度有: O(1)常数阶;O(log2n)对数阶;O(n)线性阶;O(n2)平方阶。
算法的空间复杂度是指算法需要消耗的空间资源。其计算和表示方法与时间复杂度类似,一般都用复杂度的渐近性来表示。同时间复杂度相比,空间复杂度的分析要简单得多。

二、算法设计的方法
1.递推法
递推法是利用问题本身所具有的一种递推关系求问题解的一种方法。设要求问题规模为N的解,当N=1时,解或为已知,或能非常方便地得到解。能采用递推法构造算法的问题有重要的递推性质,即当得到问题规模为i-1的解后,由问题的递推性质,能从已求得的规模为1,2,…,i-1的一系列解,构造出问题规模为I的解。这样,程序可从i=0或i=1出发,重复地,由已知至i-1规模的解,通过递推,获得规模为i的解,直至得到规模为N的解。
阶乘计算
问题描述:编写程序,对给定的n(n≤100),计算并输出k的阶乘k!(k=1,2,…,n)的全部有效数字。
由于要求的整数可能大大超出一般整数的位数,程序用一维数组存储长整数,存储长整数数组的每个元素只存储长整数的一位数字。如有m位成整数N用数组a[ ]存储:
N=a[m]×10m-1+a[m-1]×10m-2+ … +a[2]×101+a[1]×100
并用a[0]存储长整数N的位数m,即a[0]=m。按上述约定,数组的每个元素存储k的阶乘k!的一位数字,并从低位到高位依次存于数组的第二个元素、第三个元素……。例如,5!=120,在数组中的存储形式为:
3 0 2 1 ……
首元素3表示长整数是一个3位数,接着是低位到高位依次是0、2、1,表示成整数120。
计算阶乘k!可采用对已求得的阶乘(k-1)!连续累加k-1次后求得。例如,已知4!=24,计算5!,可对原来的24累加4次24后得到120。细节见以下程序。
# include <stdio.h>
# include <malloc.h>
......
2.递归
递归是设计和描述算法的一种有力的工具,由于它在复杂算法的描述中被经常采用,为此在进一步介绍其他算法设计方法之前先讨论它。
能采用递归描述的算法通常有这样的特征:为求解规模为N的问题,设法将它分解成规模较小的问题,然后从这些小问题的解方便地构造出大问题的解,并且这些规模较小的问题也能采用同样的分解和综合方法,分解成规模更小的问题,并从这些更小问题的解构造出规模较大问题的解。特别地,当规模N=1时,能直接得解。
编写计算斐波那契(Fibonacci)数列的第n项函数fib(n)。
斐波那契数列为:0、1、1、2、3、……,即:
fib(0)=0;
fib(1)=1;
fib(n)=fib(n-1)+fib(n-2) (当n>1时)。
写成递归函数有:
int fib(int n)
{ if (n==0) return 0;
if (n==1) return 1;
if (n>1) return fib(n-1)+fib(n-2);
}
递归算法的执行过程分递推和回归两个阶段。在递推阶段,把较复杂的问题(规模为n)的求解推到比原问题简单一些的问题(规模小于n)的求解。例如上例中,求解fib(n),把它推到求解fib(n-1)和fib(n-2)。也就是说,为计算fib(n),必须先计算fib(n-1)和fib(n-2),而计算fib(n-1)和fib(n-2),又必须先计算fib(n-3)和fib(n-4)。依次类推,直至计算fib(1)和fib(0),分别能立即得到结果1和0。在递推阶段,必须要有终止递归的情况。例如在函数fib中,当n为1和0的情况。
在回归阶段,当获得最简单情况的解后,逐级返回,依次得到稍复杂问题的解,例如得到fib(1)和fib(0)后,返回得到fib(2)的结果,……,在得到了fib(n-1)和fib(n-2)的结果后,返回得到fib(n)的结果。
在编写递归函数时要注意,函数中的局部变量和参数知识局限于当前调用层,当递推进入“简单问题”层时,原来层次上的参数和局部变量便被隐蔽起来。在一系列“简单问题”层,它们各有自己的参数和局部变量。
由于递归引起一系列的函数调用,并且可能会有一系列的重复计算,递归算法的执行效率相对较低。当某个递归算法能较方便地转换成递推算法时,通常按递推算法编写程序。例如上例计算斐波那契数列的第n项的函数fib(n)应采用递推算法,即从斐波那契数列的前两项出发,逐次由前两项计算出下一项,直至计算出要求的第n项。
组合问题
问题描述:找出从自然数1、2、……、n中任取r个数的所有组合。例如n=5,r=3的所有组合为: (1)5、4、3 (2)5、4、2 (3)5、4、1
(4)5、3、2 (5)5、3、1 (6)5、2、1
(7)4、3、2 (8)4、3、1 (9)4、2、1
(10)3、2、1
分析所列的10个组合,可以采用这样的递归思想来考虑求组合函数的算法。设函数为void comb(int m,int k)为找出从自然数1、2、……、m中任取k个数的所有组合。当组合的第一个数字选定时,其后的数字是从余下的m-1个数中取k-1数的组合。这就将求m个数中取k个数的组合问题转化成求m-1个数中取k-1个数的组合问题。设函数引入工作数组a[ ]存放求出的组合的数字,约定函数将确定的k个数字组合的第一个数字放在a[k]中,当一个组合求出后,才将a[ ]中的一个组合输出。第一个数可以是m、m-1、……、k,函数将确定组合的第一个数字放入数组后,有两种可能的选择,因还未去顶组合的其余元素,继续递归去确定;或因已确定了组合的全部元素,输出这个组合。细节见以下程序中的函数comb。

# include <stdio.h>
# define MAXN 100
int a[MAXN];
void comb(int m,int k)
{ int i,j;
for (i=m;i>=k;i--)
{ a[k]=i;
if (k>1)
comb(i-1,k-1);
else
{ for (j=a[0];j>0;j--)
printf(“%4d”,a[j]);
printf(“\n”);
}
}
}

void main()
{ a[0]=3;
comb(5,3);
}
3.回溯法
回溯法也称为试探法,该方法首先暂时放弃关于问题规模大小的限制,并将问题的候选解按某种顺序逐一枚举和检验。当发现当前候选解不可能是解时,就选择下一个候选解;倘若当前候选解除了还不满足问题规模要求外,满足所有其他要求时,继续扩大当前候选解的规模,并继续试探。如果当前候选解满足包括问题规模在内的所有要求时,该候选解就是问题的一个解。在回溯法中,放弃当前候选解,寻找下一个候选解的过程称为回溯。扩大当前候选解的规模,以继续试探的过程称为向前试探。

组合问题
问题描述:找出从自然数1,2,…,n中任取r个数的所有组合。
采用回溯法找问题的解,将找到的组合以从小到大顺序存于a[0],a[1],…,a[r-1]中,组合的元素满足以下性质:
(1) a[i+1]>a,后一个数字比前一个大;
(2) a-i<=n-r+1。
按回溯法的思想,找解过程可以叙述如下:
首先放弃组合数个数为r的条件,候选组合从只有一个数字1开始。因该候选解满足除问题规模之外的全部条件,扩大其规模,并使其满足上述条件(1),候选组合改为1,2。继续这一过程,得到候选组合1,2,3。该候选解满足包括问题规模在内的全部条件,因而是一个解。在该解的基础上,选下一个候选解,因a[2]上的3调整为4,以及以后调整为5都满足问题的全部要求,得到解1,2,4和1,2,5。由于对5不能再作调整,就要从a[2]回溯到a[1],这时,a[1]=2,可以调整为3,并向前试探,得到解1,3,4。重复上述向前试探和向后回溯,直至要从a[0]再回溯时,说明已经找完问题的全部解。按上述思想写成程序如下:

# define MAXN 100
int a[MAXN];
void comb(int m,int r)
{ int i,j;
i=0;
a=1;
do {
if (a-i<=m-r+1
{ if (i==r-1)
{ for (j=0;j<r;j++)
printf(“%4d”,a[j]);
printf(“\n”);
}
a++;
continue;
}
else
{ if (i==0)
return;
a[--i]++;
}
} while (1)
}

main()
{ comb(5,3);
}

4.贪婪法
贪婪法是一种不追求最优解,只希望得到较为满意解的方法。贪婪法一般可以快速得到满意的解,因为它省去了为找最优解要穷尽所有可能而必须耗费的大量时间。贪婪法常以当前情况为基础作最优选择,而不考虑各种可能的整体情况,所以贪婪法不要回溯。
例如平时购物找钱时,为使找回的零钱的硬币数最少,不考虑找零钱的所有各种发表方案,而是从最大面值的币种开始,按递减的顺序考虑各币种,先尽量用大面值的币种,当不足大面值币种的金额时才去考虑下一种较小面值的币种。这就是在使用贪婪法。这种方法在这里总是最优,是因为银行对其发行的硬币种类和硬币面值的巧妙安排。如只有面值分别为1、5和11单位的硬币,而希望找回总额为15单位的硬币。按贪婪算法,应找1个11单位面值的硬币和4个1单位面值的硬币,共找回5个硬币。但最优的解应是3个5单位面值的硬币。
装箱问题
问题描述:装箱问题可简述如下:设有编号为0、1、…、n-1的n种物品,体积分别为v0、v1、…、vn-1。将这n种物品装到容量都为V的若干箱子里。约定这n种物品的体积均不超过V,即对于0≤i<n,有0<vi≤V。不同的装箱方案所需要的箱子数目可能不同。装箱问题要求使装尽这n种物品的箱子数要少。
若考察将n种物品的集合分划成n个或小于n个物品的所有子集,最优解就可以找到。但所有可能划分的总数太大。对适当大的n,找出所有可能的划分要花费的时间是无法承受的。为此,对装箱问题采用非常简单的近似算法,即贪婪法。该算法依次将物品放到它第一个能放进去的箱子中,该算法虽不能保证找到最优解,但还是能找到非常好的解。不失一般性,设n件物品的体积是按从大到小排好序的,即有v0≥v1≥…≥vn-1。如不满足上述要求,只要先对这n件物品按它们的体积从大到小排序,然后按排序结果对物品重新编号即可。装箱算法简单描述如下:
{ 输入箱子的容积;
输入物品种数n;
按体积从大到小顺序,输入各物品的体积;
预置已用箱子链为空;
预置已用箱子计数器box_count为0;
for (i=0;i<n;i++)
{ 从已用的第一只箱子开始顺序寻找能放入物品i 的箱子j;
if (已用箱子都不能再放物品i)
{ 另用一个箱子,并将物品i放入该箱子;
box_count++;
}
else
将物品i放入箱子j;
}
}
上述算法能求出需要的箱子数box_count,并能求出各箱子所装物品。下面的例子说明该算法不一定能找到最优解,设有6种物品,它们的体积分别为:60、45、35、20、20和20单位体积,箱子的容积为100个单位体积。按上述算法计算,需三只箱子,各箱子所装物品分别为:第一只箱子装物品1、3;第二只箱子装物品2、4、5;第三只箱子装物品6。而最优解为两只箱子,分别装物品1、4、5和2、3、6。
若每只箱子所装物品用链表来表示,链表首结点指针存于一个结构中,结构记录尚剩余的空间量和该箱子所装物品链表的首指针。另将全部箱子的信息也构成链表。以下是按以上算法编写的程序。
}

5.分治法
任何一个可以用计算机求解的问题所需的计算时间都与其规模N有关。问题的规模越小,越容易直接求解,解题所需的计算时间也越少。例如,对于n个元素的排序问题,当n=1时,不需任何计算;n=2时,只要作一次比较即可排好序;n=3时只要作3次比较即可,…。而当n较大时,问题就不那么容易处理了。要想直接解决一个规模较大的问题,有时是相当困难的。
分治法的设计思想是,将一个难以直接解决的大问题,分割成一些规模较小的相同问题,以便各个击破,分而治之。
如果原问题可分割成k个子问题(1<k≤n),且这些子问题都可解,并可利用这些子问题的解求出原问题的解,那么这种分治法就是可行的。由分治法产生的子问题往往是原问题的较小模式,这就为使用递归技术提供了方便。在这种情况下,反复应用分治手段,可以使子问题与原问题类型一致而其规模却不断缩小,最终使子问题缩小到很容易直接求出其解。这自然导致递归过程的产生。分治与递归像一对孪生兄弟,经常同时应用在算法设计之中,并由此产生许多高效算法。
分治法所能解决的问题一般具有以下几个特征:
(1)该问题的规模缩小到一定的程度就可以容易地解决;
(2)该问题可以分解为若干个规模较小的相同问题,即该问题具有最优子结构性质;
(3)利用该问题分解出的子问题的解可以合并为该问题的解;
(4)该问题所分解出的各个子问题是相互独立的,即子问题之间不包含公共的子子问题。
上述的第一条特征是绝大多数问题都可以满足的,因为问题的计算复杂性一般是随着问题规模的增加而增加;第二条特征是应用分治法的前提,它也是大多数问题可以满足的,此特征反映了递归思想的应用;第三条特征是关键,能否利用分治法完全取决于问题是否具有第三条特征,如果具备了第一条和第二条特征,而不具备第三条特征,则可以考虑贪心法或动态规划法。第四条特征涉及到分治法的效率,如果各子问题是不独立的,则分治法要做许多不必要的工作,重复地解公共的子问题,此时虽然可用分治法,但一般用动态规划法较好。
分治法在每一层递归上都有三个步骤:
(1)分解:将原问题分解为若干个规模较小,相互独立,与原问题形式相同的子问题;
(2)解决:若子问题规模较小而容易被解决则直接解,否则递归地解各个子问题;
(3)合并:将各个子问题的解合并为原问题的解。
6.动态规划法
经常会遇到复杂问题不能简单地分解成几个子问题,而会分解出一系列的子问题。简单地采用把大问题分解成子问题,并综合子问题的解导出大问题的解的方法,问题求解耗时会按问题规模呈幂级数增加。
为了节约重复求相同子问题的时间,引入一个数组,不管它们是否对最终解有用,把所有子问题的解存于该数组中,这就是动态规划法所采用的基本方法。以下先用实例说明动态规划方法的使用。
求两字符序列的最长公共字符子序列
问题描述:字符序列的子序列是指从给定字符序列中随意地(不一定连续)去掉若干个字符(可能一个也不去掉)后所形成的字符序列。令给定的字符序列X=“x0,x1,…,xm-1”,序列Y=“y0,y1,…,yk-1”是X的子序列,存在X的一个严格递增下标序列<i0,i1,…,ik-1>,使得对所有的j=0,1,…,k-1,有xij=yj。例如,X=“ABCBDAB”,Y=“BCDB”是X的一个子序列。
考虑最长公共子序列问题如何分解成子问题,设A=“a0,a1,…,am-1”,B=“b0,b1,…,bm-1”,并Z=“z0,z1,…,zk-1”为它们的最长公共子序列。不难证明有以下性质:
(1) 如果am-1=bn-1,则zk-1=am-1=bn-1,且“z0,z1,…,zk-2”是“a0,a1,…,am-2”和“b0,b1,…,bn-2”的一个最长公共子序列;
(2) 如果am-1!=bn-1,则若zk-1!=am-1,蕴涵“z0,z1,…,zk-1”是“a0,a1,…,am-2”和“b0,b1,…,bn-1”的一个最长公共子序列;
(3) 如果am-1!=bn-1,则若zk-1!=bn-1,蕴涵“z0,z1,…,zk-1”是“a0,a1,…,am-1”和“b0,b1,…,bn-2”的一个最长公共子序列。
这样,在找A和B的公共子序列时,如有am-1=bn-1,则进一步解决一个子问题,找“a0,a1,…,am-2”和“b0,b1,…,bm-2”的一个最长公共子序列;如果am-1!=bn-1,则要解决两个子问题,找出“a0,a1,…,am-2”和“b0,b1,…,bn-1”的一个最长公共子序列和找出“a0,a1,…,am-1”和“b0,b1,…,bn-2”的一个最长公共子序列,再取两者中较长者作为A和B的最长公共子序列。
代码如下:
# include <stdio.h>
# include <string.h>
# define N 100
char a[N],b[N],str[N];

int lcs_len(char *a, char *b, int c[ ][ N])
{ int m=strlen(a), n=strlen(b), i,j;
for (i=0;i<=m;i++) c[0]=0;
for (i=0;i<=n;i++) c[0]=0;
for (i=1;i<=m;i++)
for (j=1;j<=m;j++)
if (a[i-1]==b[j-1])
c[j]=c[i-1][j-1]+1;
else if (c[i-1][j]>=c[j-1])
c[j]=c[i-1][j];
else
c[j]=c[j-1];
return c[m][n];
}

char *buile_lcs(char s[ ],char *a, char *b)
{ int k, i=strlen(a), j=strlen(b);
k=lcs_len(a,b,c);
s[k]=’’;
while (k>0)
if (c[j]==c[i-1][j]) i--;
else if (c[j]==c[j-1]) j--;
else { s[--k]=a[i-1];
i--; j--;
}
return s;
}

void main()
{ printf (“Enter two string(<%d)!\n”,N);
scanf(“%s%s”,a,b);
printf(“LCS=%s\n”,build_lcs(str,a,b));
}
7.迭代法
迭代法是用于求方程或方程组近似根的一种常用的算法设计方法。设方程为f(x)=0,用某种数学方法导出等价的形式x=g(x),然后按以下步骤执行:
(1) 选一个方程的近似根,赋给变量x0;
(2) 将x0的值保存于变量x1,然后计算g(x1),并将结果存于变量x0;
(3) 当x0与x1的差的绝对值还小于指定的精度要求时,重复步骤(2)的计算。
若方程有根,并且用上述方法计算出来的近似根序列收敛,则按上述方法求得的x0就认为是方程的根。上述算法用C程序的形式表示为:
程序如下:
迭代法求方程组的根
{ for (i=0;i<n;i++)
x=初始近似根;
do {
for (i=0;i<n;i++)
y = x;
for (i=0;i<n;i++)
x = gi(X);
for (delta=0.0,i=0;i<n;i++)
if (fabs(y-x)>delta) delta=fabs(y-x); } while (delta>Epsilon);
for (i=0;i<n;i++)
printf(“变量x[%d]的近似根是 %f”,I,x);
printf(“\n”);
} 具体使用迭代法求根时应注意以下两种可能发生的情况:
(1)如果方程无解,算法求出的近似根序列就不会收敛,迭代过程会变成死循环,因此在使用迭代算法前应先考察方程是否有解,并在程序中对迭代的次数给予限制;
(2)方程虽然有解,但迭代公式选择不当,或迭代的初始近似根选择不合理,也会导致迭代失败。
8.穷举搜索法
穷举搜索法是对可能是解的众多候选解按某种顺序进行逐一枚举和检验,并从众找出那些符合要求的候选解作为问题的解。
将A、B、C、D、E、F这六个变量排成如图所示的三角形,这六个变量分别取[1,6]上的整数,且均不相同。求使三角形三条边上的变量之和相等的全部解。如图就是一个解。
程序引入变量a、b、c、d、e、f,并让它们分别顺序取1至6的整数,在它们互不相同的条件下,测试由它们排成的如图所示的三角形三条边上的变量之和是否相等,如相等即为一种满足要求的排列,把它们输出。当这些变量取尽所有的组合后,程序就可得到全部可能的解。程序如下:
按穷举法编写的程序通常不能适应变化的情况。如问题改成有9个变量排成三角形,每条边有4个变量的情况,程序的循环重数就要相应改变。

‘伍’ 用C语言编程求平面汇交力系的合力

#include

struct Student
{
char ID[5];
char Name[10];
float Score;
}stu[5], max_score;

int main()
{
float sum = 0, ave = 0; //定义两变量计算平均绩
//变量意思:总绩平均绩

for (int i = 0; i < 5; i++)
{
scanf("%s %s %f", stu[i].ID, 5, stu[i].Name, 10, &stu[i].Score);
sum += stu[i].Score; //输入同计算总绩
}

ave = sum / 5; //平均绩总绩 除 5

max_score = stu[0]; //初始化存放绩同结构体变量
for (int i = 1; i < 5; i++)
{
if (max_score.Score < stu[i].Score)
{
max_score = stu[i]; //遍历搜索绩同并存结构体变量
}
}

printf("绩:%s %s %.2f平均绩:%.2f\n", max_score.ID, max_score.Name, max_score.Score, ave);

return 0;
}

‘陆’ C语言程序设计复平面作图

建模后用gotoxy移动光标位置,然后打印出东西,就可以。我搞过类似的,现在没有环境。

‘柒’ C语言程序设计3

#include "stdio.h"
#include "conio.h"

main()
{
float x,y;
printf("please enter two number x,y.\nx:");
scanf("%f",&x);
printf("\ny:");
scanf("%f",&y);
printf("\n");
if(x==0 && y==0)
{
printf("in the origin");
}
else if(x==0&&y!=0)
{
printf("int the X_line");
}
else if(x!=0&&y==0)
{
printf("int the Y_line");
}
else if(x>0&&y>0)
{
printf("in the first area"); /*第一象限*/
}
else if(x<0&&y>0)
{
printf("in the second area");/*第二象限*/
}
else if(x<0&&y<0)
{
printf("in the third area");/*第三象限 */
}
else if(x>0&&y<0)
{
printf("in the forth area");/*第四象限 */
}
getch();
}

第二题:

#include "stdio.h"
#include "conio.h"

main()
{
int num;
char result;
scanf("%d",&num);
printf("\n");
while(num<0||num>100)
{
printf("You've enter a error!\n");
scanf("%d",&num);
printf("\n");
}
if(num>=85)
{
result='A';
}
else if(num>=75)
{
result='B';
}
else if(num>=60)
{
result='C';
}
else
{
result='D';
}
printf("\nthe result is: %c",result);
getch();
}

‘捌’ C语言编程序

PT moveR()函数每调用一次,质子随机移动一次,返回移动后的位置值(注意返回的是值,不是地址,在main函数中修改坐标值是没用的)。

由于是一次一次的随机移动,r的数字不要太大,会跑很长时间。即使是同一个数值,不同次运行结果也会相差很多。

#include <stdio.h>

#include <stdlib.h>

#include <time.h>

typedef struct point

{

int x;

int y;

}PT;

PT moveR();//每调用一次,随机移动一次,返回移动后的坐标值

int main()

{

int r,cnt=0;

PT p={0,0};

srand(time(NULL));

printf("请输入R的值:"),scanf("%d",&r);

while(1)

{

if(p.x*p.x+p.y+p.y==r*r)

break;

p=moveR();

cnt++;

}

printf("游动结束,共游动了%d次 ",cnt);

return 0;

}

PT moveR()

{

static PT p={0,0};

int rn;

rn=rand()%4+1;//随机数1~4,分别表示上下左右

switch(rn)

{

case 1:printf("质子向上移动 ");p.y++;break;

case 2:printf("质子向下移动 ");p.y--;break;

case 3:printf("质子向左移动 ");p.x--;break;

case 4:printf("质子向右移动 ");p.x++;break;

}

printf("移动后坐标:(%d,%d) ",p.x,p.y);

return p;

}