b);}//vector练习voidOUTV(vectorv){vector::iteratorit=v.begin();for(;it!=v.end();" />

合工大 程序设计艺术与方法 实验一

合工大 程序设计艺术与方法 实验一
合工大 程序设计艺术与方法 实验一

《程序设计艺术与方法》课程实验报告

#include"stdafx.h"

#include

#include

#include

#include

#include

using namespace std;

bool comper(int a, int b)

{

return (a > b);

}

//vector练习

void OUTV(vector v)

{

vector::iterator it = v.begin();

for (; it != v.end(); ++it)

{

cout << (*it) << " ";

}

cout << endl;

}

void FindV(vector &exp)

{

int x;

vector::iterator L;

cout << "请输入你要查找的数:" << endl;

cin >> x;

L = find(exp.begin(), exp.end(), x);

if (L != exp.end())

{

cout << "查找成功!" << endl;

cout << "该数为:" << *L << endl;

}

else

{

cout << "无该数!" << endl;

exp.push_back(x);

cout << "输出结果:";

OUTV(exp);

}

}

void SortV(vector &exp)

{

cout << "升序:" << endl;

sort(exp.begin(), exp.end());

OUTV(exp);

cout << "降序" << endl;

sort(exp.begin(), exp.end(),comper);

OUTV(exp);

}

void DeldetV(vector &exp)

{

cout << "删除最后一个元素" << endl;

exp.pop_back();

OUTV(exp);

}

void V()

{

vector exp1;

srand((int)time(0));

cout << "vector练习:" << endl;

for (int i = 0; i < 10; i++)

exp1.push_back(rand());//插入10个随机数OUTV(exp1);

exp1.insert(exp1.begin(), rand());

OUTV(exp1);

FindV(exp1);

SortV(exp1);

DeldetV(exp1);

cout << "最大值:" << exp1[0] << endl;

cout << "最小值:" << exp1[exp1.size()-1] << endl;

exp1.clear();//清空迭代器

}

//List练习

void OUTL(list v)

{

list::iterator it = v.begin();

for (; it != v.end(); ++it)

{

cout << (*it) << " ";

}

cout << endl;

}

void FindL(list &exp)

{

int x;

list::iterator L;

cout << "请输入你要查找的数:" << endl;

cin >> x;

L = find(exp.begin(), exp.end(), x);

if (L != exp.end())

{

cout << "查找成功!" << endl;

cout << "该数为:" << *L << endl;

}

else

{

cout << "无该数!" << endl;

exp.push_back(x);

cout << "输出结果:";

OUTL(exp);

}

}

void SortL(list &exp)

{

cout << "排序:" << endl;

exp.sort();

OUTL(exp);

}

void DeldetL(list &exp)

{

cout << "删除最后一个元素" << endl;

exp.pop_back();

OUTL(exp);

}

void L()

{

list exp2;

srand((int)time(0));

cout << "List练习:" << endl;

for (int i = 0; i < 10; i++)

exp2.push_back(rand());//插入10个随机数OUTL(exp2);

exp2.push_front(rand());

OUTL(exp2);

FindL(exp2);

SortL(exp2);

DeldetL(exp2);

//清空迭代器

exp2.clear();

}

int_tmain(int argc, _TCHAR* argv[])

计算机程序设计艺术程序设计的艺术

计算机程序设计艺术:程序设计的艺术 疯狂代码 https://www.360docs.net/doc/4614492604.html,/ ?:http:/https://www.360docs.net/doc/4614492604.html,/SoftwareEngineering/Article35529.html 刚才来计院时候经过了艺术学院那儿好像有个人画展 我突然意识到对我这个世界上只有种艺术那就是编程艺术 人们总是认为写是件很枯燥很无聊事 即使是很多IT从业者也有这样想法 所以会觉得做员是件很苦事情 其实任何份工作这样你喜欢就不会无聊 即使像这样没有生命东西也有很多美妙东西可以说 说到语言我们很多人首先会想到就是语法 没错语法很重要但他就像ABC的于英国人最基础不过了 所以语法于艺术无关 对于设计无非以下规则:简洁易懂效率高(当然功能实现也和艺术无关) 移植性扩展性是分析员要考虑工作和我们无关 首先说是简洁易懂 为了让维护人员更好地理解我们我们要写出更规范标准代码 buf1buf2temp1temp2这样变量名只会招致别人唾骂 驼峰式和匈牙利命名法是目前比较流行命名规则 简洁就意味着goto这样语句是不可以使用了 而java里两层或两层以上语句也是能省则省 下面说就是效率了 多项式时间复杂度是解决任何问题目标 决不能为了偷工减料而采用复杂度较差算法 永远记住越来越快CPU永远只为用户服务 提到效率就得说说java了 其实我在大时候就已经开始看java方面书了 但我对java直很抵制就是他解释执行 但是凡事都有两面性java平台无关性从某种意义上意味着未来趋势

好了说了这么多该言归正传了 设计艺术应该是在完成上述所说高效率编程基础的上在加上些画龙点睛的笔 所谓画龙点睛就是些看似微不足道语句事实上却带来翻天覆地变化地方 前两天看到了个有关快速排序 就是段交换语句让我看了足足半个小时 天哪太美了 就是这个简单 3句交换语句却可以极大地提高执行效率 我粗略地估计了下对于个16个数字 不加这段和加上这段执行次数分别为15和9 效率提高了足足 3分的 太神奇了 说了这么多好像就没有对设计艺术下个定义 本来有想可是写到这儿我突然意识到我只是看到了冰山角 我根本没有资格给他下定义真害怕会贻笑大方 但不管怎样我追求艺术心永远不会停止 2009-2-12 3:47:20 疯狂代码 https://www.360docs.net/doc/4614492604.html,/

西工大大学物理学习题册答案

第一章 真空中的静电场 一、选择题 ; ;;;;;;; ; 二、填空题 1. 3 0281R qb επ;由圆心指向缺口。 2. 0εq ;21Φ<Φ。 3. 均匀带电薄球壳。 4. 1 22 10 h h E E --ε;312C/m 1021.2-?。 5. N/C 100;2 -9 C/m 10.858?。 6. V 135-;V 45。 7. R Q q U q E 0006πε= ;00=∞C U q ;R Q q U q CE 0006πε-=;R Q q U q E 0006πε=∞。 8. 41 2 20 R x q +πε; 2 322 ) (41R x qx πε +; R 22; N/C 4333620=R πεq 。 9. 有源场;无旋场(或保守场)。 三、问答题 答:E 电场强度从力的角度描述电场的性质,矢量场分布;U 从能和功的角度描述电场的性质,标量场。 E 与U 的关系为: U E grad -=?,?∞?=a d l E U a ? ? 使用叠加原理计算电场强度,注意先将各个场源产生的电场强度分解到各坐标轴,然后再叠加。 使用叠加原理计算电势,要注意电势零点的选择。 四、计算与证明题: 1.证:(1) CD BC AB E E E E ? ???++= 根据对称性分布,两段直导线AB 和CD 在O 点产生的电场强度大小相等,方向相反,则0=+CD AB E E ? ?。 在半圆形BC 上取电荷元d l ,则l q d d λ=,相应的在O 点产生d E 为 2 04d d a l E πελ= 由于对称分布分析可知0=x E ,设d E 和y 轴夹角为θ,且有θd d a l = θθελ θελd cos 4πcos 4πd d 020y a a l E == a a E y 02202πd cos 4πελθθελππ==?- j a εE ??0 2πλ=∴ 得证

程序设计的基本方法

高一信息技术课程教案 课题:第六章第一节程序设计的基本方法 计划课时:1课时本课课时:1课时 教学目的: 1、理解算法的概念; 2、知道两种算法的描述方法—语言描述法和流程图的区别; 3、能初步掌握用流程图描述算法。 4、培养学生的理论联系实际能力和动手能力。 5、提高学生的信息技术素养和创新意识。 教学重点、难点 算法的描述、流程图 教具 教师机、投影仪、视频展示台、多媒体CAI课件 教学方法 以任务为主线、教师为主导、学生为主体的任务驱动式教学 教材分析 本节所讲算法主要是指计算机解决问题的方法和步骤。美国著名计算机科学家克努特教授提出了”计算机科学就是研究算法的科学”的著名论断,说明了算法在设计程序中的重要性,解决任何问题都必须设计算法,所以本节内容起到统领全章的作用。 但是,对于初学者而言,本节内容属于理论知识,具有一定的抽象性。建构主义理论认为学习是新旧知识的联系,是学习者主动建构内在心理结构的过程。而在初学者原有的认知结构中没有关于算法的认知。如果直接讲算法,学生很难实现新旧知识的联系,无法做到意义建构和有意义的学习,对于算法的含义就难以做到真正理解。按照从感性到理性、从已知到未知的认知规律,我从学生的感性认知入手,从学生的兴趣出发,先创设情境,引入三个用VB编写的小程序,把学生的兴趣调动起来,通过对具体问题的讨论,使学生明白解决任何问题都需要有清晰的解决思路和解题步骤,计算机解决问题和人解决问题一样都需要有明确的解题步骤,而计算机的解题步骤就称为算法,这样就很自然地引入了算法的概念。易于学生接受和理解。 对于本节内容的重难点,即算法的描述,主要是通过对实际问题的解决来突破的。本节所讲算法

简单的C语言程序设计实验报告完美版

本科实验报告专用纸 课程名称C语言程序设计成绩评定 实验项目名称简单的C语言程序设计 实验项目编号实验项目类型验证型 实验地点指导教师 学生姓名学号 学院专业 一、实验目的 1.掌握各种类型数据的输入输出的方法,能正确使用各种格式转换符。 2.学会正确使用逻辑运算符和逻辑表达式。 3.熟练掌握if语句和switch语句。 4.结合程序掌握一些简单的算法。 二、实验内容和实验要求 实验内容1::试编写程序,用getchar函数读入两个字符给c1,c2,然后分别用putchar函数和printf函数 输出这个字符。 实验要求:(1) 输入事先已编好的程序,并运行该程序。分析运行结果是否正确。 (2)比较用Printf函数和putchar函数输出字符的特点。 实验内容2:给出一百分制成绩,要求输出成绩等 级’A’,’B’,’C’,’D,’E’。90分以上为’A’,80-89分 为’B’,70-79分为’C’,60-69分为’D’,60分以下 为’E’。 第1页(共11页)

实验要求:(1)事先编写好程序,要求分别用if语句和switch 语句来实现。 (2)输入程序,并运行该程序。分析运行结果是 否正确。 (3)再运行一次程序,输入分数为负值(如-70), 这显然是输入是出错,不应该给出等级,修改程序, 使之能正确处理任何数据,当输入数据大于100和 小于0时,通知用户“输入数据错”,程序结束。 三、主要仪器设备 仪器:计算机 实验环境:windowsXP+visual c++6.0 四、实验过程 实验内容1: 原理:1)用getchar函数输入两个字符赋给c1,c2; 2) 用putchar函数输出这两个字符; 3) 用printf函数输 出这两个字符。 (1)源程序

合工大快速原型课后复习题及解答

第二章光固化快速成型工艺 1 .叙述光固化快速成型的原理。 氦-镉激光器或氩离子激光器发出的紫外激光束在控制系统的控制下按零件的各分层截面信息在光敏树脂表面进行逐点扫描,使被扫描区域的树脂薄层产生光聚合反应而固化,形成零件的一个薄层。一层固化完毕后,工作台下移一个层厚的距离,以使在原先固化好的树脂表面再敷上一层新的液态树脂,刮板将粘度较大的树脂液面刮平,然后进行下一层的扫描加工,新固化的一层牢固地粘结在前一层上,如此重复直至整个零件制造完毕,得到一个三维实体原型。 2 .光固化快速成型的特点有哪些? 优点:(1)成型过程自动化程度高; (2)尺寸精度高; (3)优良的表面质量; (4)可以制作结构十分复杂的模型、尺寸比较精细的模型; (5)可以直接制作面向熔模精密铸造的具有中空结构的消失型; (6)制作的原型可以一定程度地替代塑料件。 缺点:(1)制件易变形,成型过程中材料发生物理和化学变化; (2)较脆,易断裂性能尚不如常用的工业塑料; (3)设备运转及维护成本较高,液态树脂材料和激光器的价格较高; (4)使用的材料较少,目前可用的材料主要为感光性的液态树脂材料; (5)液态树脂有气味和毒性,并且需要避光保护,以防止提前发生聚合反应,选择时有局限性; (6)需要二次固化 3.光固化材料的优点有哪些?光固化树脂主要分为几大类? 优点:(1)固化快 (2)不需要加热 (3)可配成无溶剂产品 (4)节省能量。 (5)可使用单组分,无配置问题,使用周期长。 (6)可以实现自动化操作及固化,提高生产的自动化程度,从而提高生产效率和经济效益。分类:(1)自由基光固化树脂 (2)阳离子光固 (3)混杂型光固化树脂 4.光固化成型工艺过程主要分为几个阶段,其后处理工艺过程包括哪些基本步骤? 阶段:前处理、原型制作和后处理三个阶段。 后处理步骤:(1)原型叠层制作结束后,工作台升出液面,停留5~10min(晾干); (2)将原型和工作台一起斜放景干,并将其浸入丙酮、酒精等清洗液中,搅动并刷掉残留的气泡,45min后放入水池中清洗工作台; (3)由外向内从工作台上取下原型,并去除支撑结构; (4)再次清洗后置于紫外烘箱中进行整体后固化。 5.光固化成型的支撑结构的类型有哪些?支撑的作用是什么? 类型:斜支撑、直支撑、单腹板、双腹板、十字壁板。 作用:支撑结构除了确保原型的每一结构部分都能可靠固定之外,还有助于减少原型在制作过程中发生的翘曲变形。

常见的程序设计方法

常见的程序设计方法及适用情况 一.常见的程序设计方法 常见的程序设计方法有:结构化程序设计、面向对象程序设计。 二.适用情况 1.结构化程序设计: (1)产生:结构化程序设计由迪克斯特拉(E.W.dijkstra)在1969年提出,是以模块化设计为中心,将待开发的软件系统划分为若干个相互独立的模块,这样使完成每一个模块的工作变单纯而明确,为设计一些较大的软件打下了良好的基础。 (2)基本要点 1.采用自顶向下,逐步求精的程序设计方法 在需求分析,概要设计中,都采用了自顶向下,逐层细化的 2.使用三种基本控制结构构造程序 任何程序都可由顺序、选择、重复三种基本控制结构构造。 (1)用顺序方式对过程分解,确定各部分的执行顺序。 (2)用选择方式对过程分解,确定某个部分的执行条件。 (3)用循环方式对过程分解,确定某个部分进行重复的开始和结束的条件。 (4)对处理过程仍然模糊的部分反复使用以上分解方法,最终可将所有细节确定下来。(3)设计语言 C,FORTRAN,PASCAL,Ada,BASIC (4)基本结构 顺序结构 顺序结构表示程序中的各操作是按照它们出现的先后顺序执行的。 选择结构 选择结构表示程序的处理步骤出现了分支,它需要根据某一特定的条件选择其中的一个分支执行。选择结构有单选择、双选择和多选择三种形式。 循环结构 循环结构表示程序反复执行某个或某些操作,直到某条件为假(或为真)时才可终止循环。在循环结构中最主要的是:什么情况下执行循环?哪些操作需要循环执行?循环结构的基本形式有两种:当型循环和直到型循环。 当型循环:表示先判断条件,当满足给定的条件时执行循环体,并且在循环终端处流程自动返回到循环入口;如果条件不满足,则退出循环体直接到达流程出口处。因为是"当条件满足时执行循环",即先判断后执行,所以称为当型循环。 直到型循环:表示从结构入口处直接执行循环体,在循环终端处判断条件,如果条件不满足,返回入口处继续执行循环体,直到条件为真时再退出循环到达流程出口处,是先执行后判断。因为是"直到条件为真时为止",所以称为直到型循环。 (5)适用情况 结构化程序设计又称为面向过程的程序设计。在面向过程程序设计中,问题被看作一系列需要完成的任务,函数(在此泛指例程、函数、过程)用于完成这些任务,解决问题的焦点集中于函数。其中函数是面向过程的,即它关注如何根据规定的条件完成指定的任务。(6)特点 结构化程序中的任意基本结构都具有唯一入口和唯一出口,并且程序不会出现死循环。

实验一简单程序设计实验

实验一:简单程序设计实验 (1)编写一个 32 位无符号数除法的程序,要求将存放在 NUM1 中的 32 位无符号数与存放 在 NUM2 中的 16 位无符号数相除,结果存放在 NUM3 和 NUM4 中。 程序流程图略。 参考源程序: DATA SEGMENT NUM1 DD 2A8B7654H NUM2 DW 5ABCH NUM3 DW ? NUM4 DW ? DATA ENDS CODE SEGMENT ASSUME DS:DATA, CS:CODE START: MOV AX,DATA ;数据段寄存器初始化 MOV DS,AX MOV AX, WORD PTR NUM1 MOV DX, WORD PTR NUM1+2 DIV NUM2 MOV NUM3,AX MOV NUM4,DX MOV AH,4CH ;正常返回DOS 系统 INT 21H CODE ENDS END START (2)编写一个拆字程序。要求将存放在 ARY 单元的 2 位十六进制数 X 1X 2 拆为 X 1 和 X 2 两 部分,并以 0X 1 和 0X 2 的形式分别存入 ARY+1 和 ARY+2 单元中。 程序流程图略。 参考源程序: DATA SEGMENT ARY DB 2AH,?,? DATA ENDS CODE SEGMENT ASSUME DS:DATA, CS:CODE START: MOV AX,DATA MOV DS,AX MOV SI,OFFSET ARY ;取ARY 的偏移地址 MOV AL,[SI] ;取16进制数至AL

MOV BL,AL AND AL,0F0H ;取16进制数的高四位,即X1 SHR AL,4 MOV [SI+1],AL ;存0X1 MOV AL,BL AND AL,0FH ;取16进制数的低四位,即X2 MOV [SI+2],AL ;存0X2 MOV AH,4CH INT 21H CODE ENDS END START

程序设计艺术与方法实验报告3

《程序设计艺术与方法》课程实验报告实验名称实验二搜索算法的实现 姓名系院专业计算机与 信息学院 班级学号 实验日期指导教师成绩 一、实验目的和要求 1.掌握宽度优先搜索算法 2.掌握深度优先搜索算法 二、实验预习内容 1.将书上的走迷宫代码上机运行并检验结果,体会搜索的思想 2.预习n皇后问题 3.预习骑士游历问题 三、实验项目摘要 1.n皇后问题: 在一个国际象棋棋盘上放n个皇后,使得任何两个皇后之间不相互攻击,求出所有的布棋方法。上机运行并检验结果 2.骑士游历问题: 在国际棋盘上使一个骑士遍历所有的格子一遍且仅一遍,对于任意给定的顶点,输出一条符合上述要求的路径 3.倒水问题: 给定2 个没有刻度容器,对于任意给定的容积,求出如何只用两个瓶装出L 升的水,如果可以,输出步骤,如果不可以,请输出No Solution 。 四、实验结果与分析(源程序及相关说明) N皇后问题代码 #include using namespace std; #include int sum = 0; int upperlimit = 1; void compare(int row,int ld,int rd){ if(row!=upperlimit){ Int pos=upperlimit&~(row|ld|rd);

while(pos!=0){ int p=pos&-pos;pos-=p; compare(row+p,(ld+p)<<1,(rd+p)>>1); }} else{sum++;}} int main(){int n; cout<<"请输入皇后的个数:"; cin>>n; upperlimit = (upperlimit<

实验3简单的程序设计

实验3简单的程序设计 实验目的: 1.掌握表达式、赋值语句的正确书写规则。 2.掌握VB变量的定义和使用,表达式和常用函数的使用。 3.掌握InputBox与MsgBox的使用。 实验3.1函数考察 实验任务: 考察下列函数的值。 Round(-3.5) Round(3.5) Chr(66) Asc ("c") Asc(Chr(99)) Chr(Asc("K")) Ucase$("abcdefg") Lcase(“ABC”) Str(123.45) Val(“123AB”) Len(“123程序设计ABC”) LenB(“123程序设计ABC”) Ltrim(“ ABC”) String(3, “ABC”) Instr(“EFABCDEFG”, “ef”) Instr(2,“EFABCDEFG”, “ef”,1) Date() Now() Time() 实验步骤: 先自己分析以上函数的功能和可能的结果,然后在立即窗口用Print方法求出相应函数的值,对照比较自己的判断。 22

实验3.2表达式考察 实验任务: 考察下列表达式的值。 Dateadd(“m”,1,#1/30/2000#) Datediff(“y”,#12/03/1999#,#1/03/2000#) ‘计算时间间隔多少日 123 + Mid(“123456”,3,2) 123 & Mid(“123456”,3,2) Ucase(Mid(“abcdefgh”,3,4)) 16 / 4 – 2 ^ 5 * 8 / 4 MOD 5 \ 2 实验步骤: 先自己分析表达式的功能和可能的结果,然后在立即窗口用Print方法求出相应表达式的值,对照比较自己的判断。 实验3.3简单打印图形 实验任务: 使用Print方法、Tab函数和String函数设计一个过程,显示如图3-1所示的图形,并将结果保存到文件中。 图3-1 实验3.2运行界面 参考代码如下: Private Sub Form_Load() Print Tab(15); String(1, "1") Print Tab(14); String(3, "2") Print Tab(13); String(5, "3") Print Tab(12); String(7, "4") End Sub 操作提示: 应先将Form窗体的AutoRedraw属性值设为True。

西工大 大学物理学习题册答案

第一章 真空中的静电场 一、选择题 1.C ;2.B ;3.C ;4.B ;5.B ;6.C ;7.E ;8.AD ; 9.B ;10.BD 二、填空题 1. 3 02 81 R qb επ;由圆心指向缺口。 2. εq ;21Φ<Φ。 3. 均匀带电薄球壳。 4. 1 2210 h h E E --ε;312C/m 1021.2-?。 5. N/C 100;2-9C/m 10.858?。 6. V 135-;V 45。 7. R Q q U q E 0006πε= ;00=∞C U q ;R Q q U q CE 0006πε- =;R Q q U q E 0006πε= ∞。 8. 412 2 R x q +πε ; 2 3 2 2 )(41R x qx πε +; R 2 2; N /C 433362 0=R πεq 。 9. 有源场;无旋场(或保守场)。 三、问答题 答:E 电场强度从力的角度描述电场的性质,矢量场分布;U 从能和功的角度描述电场的性质,标量场。 E 与U 的关系为: U E grad -= ,?∞?=a d l E U a 使用叠加原理计算电场强度,注意先将各个场源产生的电场强度分解到各坐标轴,然后再叠加。 使用叠加原理计算电势,要注意电势零点的选择。 四、计算与证明题: 1.证:(1) CD BC AB E E E E ++= 根据对称性分布,两段直导线AB 和CD 在O 点产生的电场强度大小相等,方向相反,则0=+CD AB E E 。 在半圆形BC 上取电荷元d l ,则l q d d λ=,相应的在O 点产生d E 为 2 04d d a l E πελ= 由于对称分布分析可知0=x E ,设d E 和y 轴夹角为θ,且有θd d a l = θθελ θελd cos 4πcos 4πd d 02 0y a a l E = = a a E y 02 2 2πd cos 4πελ θθελ ππ= = ?- j a εE 02πλ = ∴ 得证

程序设计基础试题(附答案)

程序设计基础复习题 一、单选 1、一个完整的计算机系统应该包括() A、系统软件和应用软件 B、计算机及其外部设备 C、硬件系统和软件系统 D、系统硬件和系统软件 2、“裸机”的概念是指() A、正在进行设计还没有组装好的计算机 B、已经组装好但还没有安装任何软件的计算机 C、仅安装了操作系统的计算机系统 D、安装了文字处理软件但没有安装专用数据处理系统的计算机 3、世界上第一台电子数字计算机研制成功的时间是() A、1936年 B、1946年 C、1956年 D、1970年 4、CASE的含义是() A、计算机辅助设计 B、计算机辅助制造 C、计算机辅助教学 D、计算机辅助软件工程5、当前广泛使用的微型计算机是() A、第一代 B、第二代 C、第三代 D、第四代 6、当代计算机的体系结构称为是() A、冯·诺依曼机 B、非冯·诺依曼机 C、图灵机 D、比尔盖茨机 7、硬盘是() A、输入设备 B、输出设备 C、存储设备 D、计算设备 8、下面4句话中,最准确的表述是() A、程序=算法+数据结构 B、程序是使用编程语言实现算法 C、程序的开发方法决定算法设计 D、算法是程序设计中最关键的因素

9、计算机能直接执行的语言是() A、机器语言 B、汇编语言 C、高级语言 D、目标语言 10、解释程序的功能是() A、将高级语言程序转换为目标程序 B、将汇编语言程序转换为目标程序 C、解释执行高级语言程序 D、解释执行汇编语言程序 11、下面4种程序设计语言中,不是面向对象式语言的是() A、JAVA B、Object Pascal C、Delphi D、C 12、不是C语言的基本数据类型是() A、int B、double C、char D、bool 13、在C语言中,为了求两个整数相除之后得到的余数,可以使用运算符() A、/ B、% C、* D、++ 14、数据的逻辑结构分为() A、纯属结构和非线性结构 B、顺序结构和非顺序结构 C、树型结构和图型结构 D、链式结构和顺序结构 15、用链表表示纯属表的优点是() A、便于随机存取 B、便于插入和删除操作 C、花费的存储空间较顺序存储少 D、元素的物理顺序与逻辑顺序相同 16、栈的最主要特点是() A、先进先出 B、先进后出 C、两端进出 D、一端进一端出 17、下面4句结论只有一句是错误的,它是()

试验项目试验一最简单的C程序设计

试验项目试验一最简单的C程序设计

实验项目:实验一最简单的C程序设计 (所属课程:《C语言程序设计》学时:2) 一、实验目的 1.掌握:使用标准输入/输出函数进行常见数据类型的数据的输入/输出方法。 2.初步培养编制程序框图和源程序、准备测试数据以及实际调试程序的独立编程能力。 3.掌握顺序结构程序设计的基本思路。 二、实验条件 Pc和vc++编程环境 三、实验内容 1.熟悉编程环境。 2.输入并运行一个C程序 3.掌握各种格式转换符的正确使用方法。 4.编程序:设圆半径r=1.5,圆柱高h=3,求圆周长、圆面积、圆球表面积、圆球体积、圆柱体积。要求用scanf函数从键盘上输入数据(半径和高),输出各计算结果,输出时要求有文字说明,取小数点后2位数字。5.编程序:用getchar函数输入两个字符给C1、C2,然后分别用putchar函数和printf函数输出这两个字符。 四、实验步骤 编写程序,输入数据,观察结果。

五、实验结果 观察结果和预期是否一致。 实验项目:实验二选择结构程序设计 (所属课程:《C语言程序设计》学时:2) 一、实验目的 1.了解C语言表示逻辑量的方法(以0代表“假”,以非0代表“真”)。 2.学会正确使用逻辑运算符和逻辑表示式。 3.熟练掌握if语句和switch语句 二、实验条件 Pc和vc++编程环境 三、实验内容

1.有一函数: ?????≥-<≤-<=)10x (113x ) 10x 1(12x )1x (x y 用scanf 函数输入x 的值,求y 值。 运行程序,输入x 的值(分别为x<1、1≤x <10、x ≥10三种情况),检查输出的y 值是否正确。 2.给出一个百分制成绩,要求输出成绩等级A 、B 、C 、D 、E 。90分以上为A ,81~89分为B ,71~79分为C ,61~69分为D ,60分以下为E 。 3.输入4个整数,要求按由小到大顺序输出。 四、实验步骤 编写程序,输入数据,观察结果。 五、实验结果 观察结果和预期是否一致。 实验项目:实验三 循环结构程序设计

安徽工业大学大学物理练习册参考答案

安工大物理答案 练习一机械振动 (一) 参考解答 1. (C) ; 2. (B) 3.)2 12/5cos(1022π-?=-t x (SI) 4. 3.43 ( s ) ;-2π/3 . 5. 解:k = m 0g / ?l 25.12N/m 08 .08 .91.0=?= N/m 11 s 7s 25 .025.12/--== =m k ω 5cm )7 21(4/2222 020=+=+=ωv x A cm 4/3)74/()21()/(tg 00=?--=-=ωφx v ,φ =0.64 rad )64.07cos(05.0+=t x (SI) 6. 周期25.0/2=π=ωT s ,振幅A = 0.1 m ,初相φ = 2π/3, v max = ω A = 0.8π m/s ( = 2.5 m/s ), a max = ω 2A = 6.4π2 m/s 2 ( =63 m/s 2 ).

练习二机械振动(二) 参考解答 1.(D) ; 2. (C ) . 3.)2 1cos(04.0π-πt ; 4.3/2π± ; 5. 解:(1) 势能221kx W P = 总能量22 1 kA E = 由题意,4/212 2kA kx =,21024.42 -?±=± =A x m (2) 周期T = 2π/ω = 6 s 从平衡位置运动到2 A x ±= 的最短时间?t 为T /8. ∴?t = 0.75 s . 6. 解:x 2 = 3×10- 2 sin(4t -π/6) = 3×10- 2cos(4t -π/6-π/2) = 3×10- 2cos(4t - 2π/3). 作两振动的旋转矢量图,如图所示. 由图得:合振动的振幅和初相分别为 A = (5-3)cm = 2 cm ,φ = π/3. 合振动方程为x = 2×10- 2cos(4t +π/3) (SI) x O ω π/3-2π/3 A 1A 2 A

程序设计的基本方法

程序设计的基本方法 一、题: 二、教学目标: ⑴理解算法的概念,了解描述算法的两种方法——自然语言和流程图,知道各自的优缺点。 ⑵初步掌握用流程图描述算法。 三、教学的重点和难点: ⑴算法的概念。 ⑵用流程图描述算法。 四、教学过程: 新导入 我们在日常生活中经常要处理一些事情,就拿邮寄一封信来说吧,大致可以将寄信的过程分为这样的几个步骤:写信、写信封、贴邮票、投入信箱等四个步骤。将信地投入到信箱后,我们就说寄信过程结束了。 那么在计算机中,它是如何来处理问题的呢?是否和我们日常处理事情的过程很类似呢? 回答是肯定的,例如要设计一个程序让计算机求1+1=?,那么我们就要先编写程序。在编写程序前需要先确定解决问题的思路和方法,并要正确地写出求解步骤,这就是算法。 新授

一、算法的概念 为了更好地理解算法,举几个例子说明: 例1 交换两个变量中的数据。 先请学生考虑解决这个问题的方法,然后请一个学生说一说自己想到的解决方法。如学生回答不出来,作适当提示:如果要将醋瓶中的醋和酒瓶中的酒互换应怎么做?学生会很容易地想到要借助于一只空瓶子。 分析题意:已知变量x和中分别存放了数据,现在要交换其中的数据。为了达到交换的目的,需要引进一个类似于空瓶子的中间变量。交换两变量中数据的具体算法如下: ①将x中的数据送给变量,即x→; ②将中的数据送给变量x,即→x; ③将中的数据送给变量,即→。 总结:在程序设计中,交换变量中的数据常用在排序算法中。例2 输入三个不相同的数,求出其中的最小数。 同样,先请学生思考,然后请学生说出他所想到的解决该问题的方法。 教师分析:先设置一个变量in,用于存放最小数。当输入a、b、三个不相同的数后,先将a与b进行比较,把小者送给变量in,再把与in进行比较,若<in,则将的数值送给

程序设计艺术与方法

程序设计艺术与方法 实验一STL 得熟悉与使用 1. 实验目得(1)掌握C++中STL得容器类得使用。(2) 掌握C++中STL得算法类得使用。 2. 试验设备硬件环境:PC 计算机软件环境: 操作系统:Windows2000 / WindowsXP/ Linux 语言环境:Dev cpp/ gnu c++ 3. 试验内容(1) 练习vector与list 得使用。定义一个空得vector,元素类型为int,生成10个随机数插入到vector中,用迭代器遍历vector 并输出其中得元素值。在vector 头部插入一个随机数,用迭代器遍历vector并输出其中得元素值。用泛型算法find 查找某个随机数,如果找到便输出,否则将此数插入vector 尾部。用泛型算法sort将vector 排序,用迭代器遍历vector 并输出其中得元素值。删除vector 尾部得元素,用迭代器遍历vector 并输出其中得元素值、将vector 清空。定义一个list,并重复上述实验,并注意观察结果。(2) 练习泛型算法得使用。 - 149 定义一个vector,元素类型为int,插入10 个随机数,使用sort 按升序排序,输出每个元素得值,再按降叙排序,输出每个元素得值。练习用find查找元素。用min 与max找出容器中得小元素个大元素,并输出、 源代码: #include #include #include<iomanip〉 #include::iterator it1; for(it1=myV。begin();it1!=myV。end();it1++) { cout<<(*it1)〈

(完整版)合工大液压与气压传动试卷及答案完整版2

三、判断题 1.液压缸活塞运动速度只取决于输入流量的大小,与压力无关。(○) 2.液体流动时,其流量连续性方程是能量守恒定律在流体力学中的一种表达形式。(×)3.理想流体伯努力方程的物理意义是:在管内作稳定流动的理想流体,在任一截面上的压力能、势能和动能可以互相转换,但其总和不变。(○) 4.雷诺数是判断层流和紊流的判据。(×) 5.薄壁小孔因其通流量与油液的粘度无关,即对油温的变化不敏感,因此,常用作调节流量的节流器。(○) 6.流经缝隙的流量随缝隙值的增加而成倍增加。(×) 7.流量可改变的液压泵称为变量泵。(×) 8.定量泵是指输出流量不随泵的输出压力改变的泵。(×) 9.当液压泵的进、出口压力差为零时,泵输出的流量即为理论流量。(○) 10.配流轴式径向柱塞泵的排量q 与定子相对转子的偏心成正比,改变偏心即可改变排量。(○) 11.双作用叶片泵因两个吸油窗口、两个压油窗口是对称布置,因此作用在转子和定子上的液压径向力平衡,轴承承受径向力小、寿命长。(○) 12.双作用叶片泵的转子叶片槽根部全部通压力油是为了保证叶片紧贴定子内环。(×)13.液压泵产生困油现象的充分且必要的条件是:存在闭死容积且容积大小发生变化。(○)14.齿轮泵多采用变位齿轮是为了减小齿轮重合度,消除困油现象。(×) 15.液压马达与液压泵从能量转换观点上看是互逆的,因此所有的液压泵均可以用来做马达使用。(×) 16.因存在泄漏,因此输入液压马达的实际流量大于其理论流量,而液压泵的实际输出流量小于其理论流量。(○) 17.双活塞杆液压缸又称为双作用液压缸,单活塞杆液压缸又称为单作用液压缸。(×)18.滑阀为间隙密封,锥阀为线密封,后者不仅密封性能好而且开启时无死区。(○)19.当液压泵的进、出口压力差为零时,泵输出的流量即为理论流量(○) 20.单向阀可以用来作背压阀。(○) 21.同一规格的电磁换向阀机能不同,可靠换向的最大压力和最大流量不同。(○)22.因电磁吸力有限,对液动力较大的大流量换向阀则应选用液动换向阀或电液换向阀。(○) 23.串联了定值减压阀的支路,始终能获得低于系统压力调定值的稳定的工作压力。(×)24.增速缸和增压缸都是柱塞缸与活塞缸组成的复合形式的执行元件。(×) 25.变量泵容积调速回路的速度刚性受负载变化影响的原因与定量泵节流调速回路有根本的不同,负载转矩增大泵和马达的泄漏增加,致使马达转速下降。(○) 26.采用调速阀的定量泵节流调速回路,无论负载如何变化始终能保证执行元件运动速度稳定。(×) 27.旁通型调速阀(溢流节流阀)只能安装在执行元件的进油路上,而调速阀还可安装在执行元件的回油路和旁油路上。(○) 29.在变量泵—变量马达闭式回路中,辅助泵的功用在于补充泵和马达的泄漏。(×)30.因液控单向阀关闭时密封性能好,故常用在保压回路和锁紧回路中。(○)31.同步运动分速度同步和位置同步,位置同步必定速度同步;而速度同步未必位置同步。 (○) 32.压力控制的顺序动作回路中,顺序阀和压力继电器的调定压力应为执行元件前一动作的最高压力。(×)

程序设计中常用的计算思维方式

程序设计中常用的计算思维方式 算法思维 逻辑思维 第1章正确认识和处理整体与部分的关系 概述: “整体”与“部分”是一对虽然对立、但并非僵化不变的概念。在一定条件下,“部分”可以看作“整体”,“整体”又可以看作是另一个“整体”的“部分”,两者相互依存和影响。“整体”与“部分”又可以相互转化的。“整体”的问题可以分割成“部分”来处理,“部分”的问题也可以通过“整体”来解决。 1.1 整体实现的关键是准确地应用必要条件 A、选择有助于简化问题、变难为易的必要条件 这里面就是说我们要在坚持“简化问题、变难为易”的原则下,尽力寻找“精确”的必要条件,以缩小求解范围,提高出解速度。当碰到一道难题时,总是尝试从最简单的特殊情况入手,找出有助于简化问题、变难为易的必要条件,逐渐深入,最终分析归纳出一般规律。 B、合成必要条件,从整体结构上优化 在搜索和动态规划中,必要条件有期很好的应用价值。一般地,对于深度优先搜索和广度优先搜索,如何限制搜索范围、减少搜索量最有效的手段是“剪枝”。然而由于问题的错综复杂,所以我们要找最高效的优化条件,来提高程序的效率。所以我们可以尝试从多个侧面分析寻找必要条件,把问题分解,根据各部分的本质联系,将各方面的必要条件综合起来使用。 C、必要条件与原有模型比较、更新算法 上面所说的两种优化程序的策略其实是都是在“缩小求解范围”,改进在有算法的基础上进行的,属于局部优化。然而精确选择揭示问题本质的必要条件,与原有的模型比较, 小结:必要条件是逻辑推到的理论依据,也是思考过程的一种取向。解题时,若能寻找出精确的必要条件,一方面能帮助我们揭示问题的本质,设计出正确的算法;另一种方面又能“缩小求解范围”,提高算法效率。因此,准确地应用必要条件是整体实现的关键。所以我们要在坚持“具体问题具体分析”的原则,不拘一格,灵活处理;在分析问题时,要勤于思考,善于发现。 1.2 整体思考的一个重要角度是“守恒” A、从具体问题中抽象出守恒量 守恒量需要通过联想和化归思维将其抽象出来,从问题本身的结构中抽象出守恒量。 B、根据问题的本质构造守恒量 有时候,如果能为每一个元素标一个权值,就可以揭示问题“守恒”规律。在总价值不变的前提下,或许能将整个问题转化成一个简单的、或者是经典的问题。比如构造成Fibonacci数列等。 C、在交互式问题中构造变化中的不变量 考虑可能出现的各种情况和最优策略,找变化中的不变量,运用“守恒”法寻找解题的突破口 小结:守恒是问题分析问题的一种思维方式一种整体意识和解题方法,通过联想和化归思维将其抽象出来。 1.3 提高整体实现效率的基本途径是“充分利用有效信息”和“压缩冗余信息” A.计算过程中充分利用有效信息: 在记忆化搜索和动态规划中充分利用信息,特别指出在动态规划中改变状态的表示含义对优化问题是个很好的策

平面设计常用软件

平面设计常用软件 说到平面设计软件、修图软件,大家首选联想到的肯定是Photoshop(也就是PS),但是在平面设计中,图像处理软件培训除了PS软件以外,还有CorelDraw、InDesign、Illustrator 等等。下面小编为大家简单介绍下除了PS软件,还有哪些常用的平面设计常用软件吧: CorelDraw软件 属于矢量绘图软件,也可称之为图形图像软件。学习文字的各个类型,掌握不同风格的版式,利用蒙版技巧实现像素图的遮罩处理。通过Coreldraw强大的交互式工具,使其创作出多种富于动感的特殊效果。掌握页面设计,网站设计,位图的编辑,海报制作,展板设计,DM广告,包装设计等。 Illustrator软件 矢量绘图软件,学习基本图形工具组,运用基本图形工具组实现卡通插画,掌握路径编辑,完成创意文字的修饰手法。学习文字编排实现报刊排版、画册内页排版等。利用渐变与混合特效完成商业设计,如:杂志设计、书籍装帧、海报设计与复杂插画设计等。掌握强大的外观、效果与滤镜,实现3D特效处理与创意设计。 InDesign软件 专业排版软件,认识主页的意义,掌握主页的功能与增加主页,完成各种排版。学习表格的使用,如:在表格中添加文本,添加图片,将表格转换为文本等。利用强大的编辑排版技巧,熟练手动排版与自动排版的领域。页码的设计与目录的制作等。掌握杂志、书籍、广告排版等技巧。 After Effects软件 图形视频处理软件——可以理解为动的Photoshop 学习扫描格式在各个领域的运用,掌握帧在动画里的定义,序列帧导入的技巧与问题,学习照相馆相片动画的制作,影视片头制作等。学习关键帧动画,文字特效动画,三维合成(灯光的运用摄像机的布局),遮罩蒙版的技巧,追踪技巧的控制,动态图像抠图,仿真特效的使用(下雨、下雪、爆炸、粉碎等),结合PS、AI完成动态广告设计。 Premiere软件 它是非线性编辑设备的视音频编辑软件,可以在各种平台下和硬件配合使用,被广泛的应用于电视台、广告制作、电影剪辑等领域。学习剪片技巧与表现,掌握声画对位,三点四点编辑,声音处理手法,影片与声音的分离,DV与自拍短片制作等。 总结:平面设计是一个涉及的很广的行业,基本上各行各业都会需要的,所以相对于其它设计行业来说,平面设计是就业面最广的,也就是最好就业的。假设是个人兴趣想要学学修图,那么自学下PS软件就行啦,如果是想从事平面设计这个行业,以后想有更好的发展前景,那么会的软件当然是多多益善了。以上内容由武汉it新时空整理发布,转载请注明来源。

最简单的C程序设计—顺序程序设计实验报告

嘉应学院计算机学院 实验报告 课程名称程序设计基础实验名称实验地点 指导老师实验时间提交时间 班级姓名座号 一、实验目的和要求 (1)掌握C语言中使用最多的一种语句——赋值语句的使用方法。 (2)掌握各种类型数据的输入输出的方法,能正确使用各种格式装换符。 (3)进一步掌握编写程序的和调试程序的方法。 二、实验环境和方法 实验方法: (一)综合运用课本所学的知识,用不同的算法实现在不同的程序功能。 (二)结合指导老师的指导,解决程序中的问题,正确解决实际中存在的异常情况,逐步改善功能。 (三)根据实验内容,编译程序。 实验环境:Windows xp Visual C++6.0 三、实验内容及过程描述 实验步骤: ①进入Visual C++ 6.0集成环境。 ②输入自己编好的程序。 ③检查一遍已输入的程序是否有错(包括输入时输错的和编程中的错误),如发现有错,及时改正。 ④进行编译和连接。如果在编译和连接过程中发现错误,频幕上会出现“报错信息”,根据提示找到出错位置和原因,加以改正。再进行编译,如此反复直到不出错为止。 ⑤运行程序并分析运行结果是否合理。在运行是要注意当输入不同的数据时所得结果是否正确,应运行多次,分别检查在不同情况下结果是否正确。 实验内容:编译以下题目的程序并调试运行。 实验① (1)通过下面的程序掌握各种格式装换符的正确使用方法。 ①输入以下程序:

②运行程序并分析结果如图: ③在此基础上,将程序第10~14行改为 c1=a;c2=b; f=3157.;g=0.; d=f;e=g; P=a=m=50000;q=b=n=-60000; 运行程序,分析结果如: (二)设圆半径r=1.5,圆柱高h=3,求圆周长﹑圆面积﹑圆球表面积﹑圆球体积﹑圆柱体积。 用scanf 输入数据,输出计算结果,输出时要求有文字说明,取小数点后两位数字。 程序代码为: #include int main() {int a,b; float d,e; char c1,c2; double f,g; long m,n; unsigned int p,q; a=61,b=62; c1='a';c2='b'; d=3.56;e=-6.87; f=3157.;g=0.; m=50000;n=-60000; p=32768;q=40000; printf("a=%d,b=%d\nc1=%c,c2=%c\nd=%6.2f,e=%6.2f\n",a,b,c1,c2,d,e); printf("f=%15.6f,g=%15.12f\nm=%1d,n=%1d\np=%u,q=%u\n",f,g,q,m,n,p,q); } #include int main() {float h,r,l,s,sq,vq,vz; float pi=3.; printf("请输入圆半径r ,圆柱高h :"); scanf("%f,%f",&r,&h); l=2*pi*r; s=r*r*pi; sq=4*pi*r*r; vq=3.0/4.0*pi*r*r*r; vz=pi*r*r*h;

相关文档
最新文档