文档库 最新最全的文档下载
当前位置:文档库 › dic递归基础练习题

dic递归基础练习题

dic递归基础练习题
dic递归基础练习题

dic递归基础练习题:

1.求1+2+3+……+n的值

int sum(int a,int b)

{

if(b==a) return a;

return a+sum(a+1,b);

}

2. 求1*2*3*……*n的值

cheng(int begin,int end)

{

if(begin==end) return begin;

return begin * cheng(begin+1,end);

}

3. 数的全排列问题。将n个数字1,2,…n的所有排列按字典顺序枚举出猴

2 3 1

2 1 3

3 1 2

3 2 1

4. 数的组合问题。从1,2,…,n中取出m个数,将所有组合按照字典顺序列出。

如n=3,m=2时,输出:

1 2

1 3

2 3

5. 小猴子第一天摘下若干桃子,当即吃掉一半,又多吃一个.第二天早上又将剩下的桃子吃一半,又多吃一个.以后每天早上吃前一天剩下的一半另一个.到第10天早上猴子想再吃时发现,只剩下一个桃子了.问第一天猴子共摘多少个桃子?

fruit(int begin,int times)

{

if(times==10) return begin;

return fruit((begin+1)*2,times+1);

}

6. 有雌雄一对兔子,假定过两个月便可繁殖雌雄各一的一对小兔子。问过n个月后共有多少对兔子?

7. 一个人赶着鸭子去每个村庄卖,每经过一个村子卖去所赶鸭子的一半又一只。这样他经过了七个村子后还剩两只鸭子,问他出发时共赶多少只鸭子?经过每个村子卖出多少只鸭子?

duck(int begin,int times)

{

if(times==7) return begin;

return duck((begin+1)*2,times+1);

}

8.著名的菲波拉契(Fibonacci)数列,其第一项为0,第二项为1,从第三项开始,其每一项都是前两项的和。编程求出该数列前N项数据。

int fbi(int i)

{

if(i<2)

{

if(i == 0) return 0;

else return 1;

}

return fbi(i-1) +fbi(i-2);

}

9. 求两个数的最大公约数。

fgongyue(int m,int n)//m要大于n,前面可以交换让它实现

{

if(n == 0) return m;

fgongyue(n,m%n);

}

10. 求两个数的最小公倍数。

最小公倍数等于2个数之积乘最好公约数

m*n/fgongyue(m,n)

11. 输入一个数,求这个数的各位数字之和。

add_every_num(int num)

{

if(num<10) return num;

return num%10+add_every_num(num/10);

}

12. 角谷定理。输入一个自然数,若为偶数,则把它除以2,若为奇数,则把它乘以3加1。经过如此有限次运算后,总可以得到自然数值1。求经过多少次可得到自然数1。

如:输入22,

输出 22 11 34 17 52 26 13 40 20 10 5 16 8 4 2 1

STEP=16

#include "stdafx.h"

#include "stdio.h"

int i = 1;

int fc(int n)

{

if(n == 1)

{

printf("%d",n);

return i;

}

else if(n%2 == 0)

{

printf("%d\t",n);

fc(n/2);

i++;

}

else

{

printf("%d\t",n);

fc(n*3+1);

i++;

}

}

int main(int argc, char* argv[]) {

int n,step;

printf("Please input the num:");

scanf("%d",&n);

step = fc(n);

printf("\nStep = %d\n",step);

return 0;

}

13.将十进制转换为二进制。

#include "stdafx.h"

#include "stdio.h"

int fc(int num)

{

if(num == 1)

{

printf("%d",num);

return 0;

}

fc(num/2);

printf("%d",num%2);

}

int main(int argc, char* argv[]) {

int num;

printf("please input the num:");

scanf("%d",&num);

fc(num);

printf("\n");

return 0;

}

14. 计算M=max(a,b,c)/[max(a+b,b,c)*max(a,b,b+c)],其中a,b,c由键盘输入。skip

15. 梯有N阶,上楼可以一步上一阶,也可以一次上二阶。编一个程序,计算共有多少种不同的走法。

return 1+(fc(n-1)+fc(n-2)

16. 某人写了n封信和n个信封,如果所有的信都装错了信封。求所有的信都装错信封共有多少种不同情况?

17. 给出一棵二叉树的中序与后序排列。求出它的先序排列。

18. 求把一个整数n无序划分成k份互不相同的正整数之和的方法总数。

19. 已知一个一维数组A[1..N]。{N<50} 又已知一整数M。如能使数组A中任意几个元素之和等于M,则输出YES,反之则为NO。

20. 要求找出具有下列性质的数的个数(包含输入的自然数n):

先输入一个自然数n(n<=500),然后对此自然数按照如下方法进行处理:

①. 不作任何处理;

②. 在它的左边加上一个自然数,但该自然数不能超过原数首位数字的一半;

③. 加上数后,继续按此规则进行处理,直到不能再加自然数为止.

样例: 输入: 6

满足条件的数为 6

16

26

126

36

136

输出: 6

21. 自然数的拆分问题。给定自然数n,将其拆分成若干自然数的和。输出所有解,每组解中数字按从小到大排列。相同数字的不同排列算一组解。如:

3=1+1+1

3=1+2

3=3

22. 用递归的方法求N个数中最大的数及其位置。

23. 写出折半查找的递归算法。

24. 快速排序法。

思考题 :

1、数学宝塔,从最顶上走到最底层,每次只能走到下一层的左边或右边的数字,求出使所走到的所有数字之和为60的途径。

7

4 6

69 3

637 1

25328

5947 3 2

641856 3

3976841 5

25735784 2

2、汉诺塔问题:设有三个塔座,依次命名为x,y,z。有z个直径不同的圆盘,由小到大依次编号为1、2、……,n。开始时,它们全部按递减的次序插在塔座上。现要求按下列规则把n个圆盘按次序插放在z塔座上。

(1)、每次只能移动一个圆盘;

(2)、圆盘可以从任一个塔座上移到另一个塔座上;

(3)、任何时刻都不能把一个较大的圆盘压在较小的圆盘上。

典型例题:

1.设有n个数已经按从大到小的顺序排列,现在从键盘上输入n,判断它是否在这n 个数中,如果存在则输出“yes”否则输出“no”。

Program lx4;

Const n=30;

Var a:array[1..n]of integer;

F,r,x,k:integer;

Program search(x,top,bot:integer);

Var mid:integer;

Begin

if top<=bot then

Begin

Mid=(top + bot) div 2;

If x =a[mid] then writeln(x:5,mid:5,?yes?)

else If x

Else search(x,mid+1,r);

End

else Writeln(x:5,…no?);

End;

Begin

Writeln(…input n ge shu?);

For k:=1 to n do read(a[k]);

Read(x);

F:=1;r:=n;

Search(x,f,r);

End.

2.hanoi塔问题。

递归:procedure Hanoi(n:integer;x,y,z:char);

Begin

If n=1 then writeln(x,?--?n,?---?,z)

Else begin

Hanoi(n-1,x,z,y);

Writeln(x,?--?,n,?---?,z);

Hanoi(n-1,y,x,z)

End;

End;

Begin

Write(…input n:?);

Read(n);

Hanoi(n,?A?,?B?,?C?)

End.

3.有n个硬币(n为偶数)正面朝上排成一排,每次将n-1个硬币翻成朝上为止。编程让计算机把翻硬币的最简过程及翻币次数打印出来(用*代表正面,用0代表反面)。

基本形式:D[1]=0;d[2]=1

递归式:d[n]= (n-1)*( d[n-1] + d[n-2])

var n:integer;

function d(n:integer):longint;

begin

case n of

1:d:=0;

2:d:=1;

else d:=(n-1)*(d(n-1)+d(n-2));

end;

end;

begin

repeat

write('n=');

readln(n);

if n<=0 then writeln('Once more!')

until n>0;

writeln('d=',d(n));

readln;

end.

4.有一对雌雄兔子,假定两个月便可以繁殖雌雄各一对兔子。问n各月后共有多少对兔子?递归的三要素:

递归的形式:T[n]= T[n-1]+ T[n-2]

基本:T[1]=1,T[2]=1

结束条件:n个月

program rabbit;

var n:integer;

function fa(n:integer):integer;

begin

if n<3 then fa:=1

else fa:=fa(n-1)+fa(n-2);

end;

begin

write('n=');readln(n);

writeln('The number of the rabbits:',fa(n));

end.

5.梯有N阶,上楼可以一步上一价,也可以一次上二阶。编一个程序,计算共有多少种不同的走法。

递归的形式:s[n]=s[n-1]+s[n-2]

基本式子:s[1]=1;s[2]=2

program upstairs;

var n:integer;

function s(n:integer):longint;

begin

if (n=1)or(n=2) then s:=n

else s:=s(n-1)+s(n-2);

end;

begin

repeat

write('N=');readln(n);

until n>0;

writeln('s=',s(n));

readln;

end.

6.斐波那切数列

递归:var m,p:integer;

Function fib(n:integer):integer;

Begin

If n=0 then fib:=0

Else if n=1 then fib:=1

Else fib:=fib(n-1)+fib(n-2);

End;

Begin

Read(m);

P:=fib(m);

Writeln(…fib(?,mm?)=?,p)

End.

7.设有2^n个运动员要进行网球比赛。现要设计一个满足以下要求的比赛日程表:

(1)、每个选手必须与其他n-1个选手各赛一次;

(2)、每个选手每天只能参赛一次;

(3)、循环赛在n-1天内结束。program match;

const k=3;n=8;

var

s:array[1..n,1..n] of integer;

i,j,p:integer;

ju:boolean;

procedure copy1(be,en:integer;jug:boolean;q:integer);

var m,t,ban:integer;

begin

if jug then

begin

if be=1 then

begin if s[en,en]=0 then

begin copy1(be,en div 2,true,q div 2);

copy1((en div 2)+1,en,false,q div 2);

end;

for m:=1 to en do

for t:=1 to en do

s[m+q,t+q]:=s[m,t]

end

else begin if s[be+q-1,q]=0 then

begin copy1(be,be+(q div 2)-1,true,q div 2);

copy1(be+(q div 2),en,false,q div 2)

end;

for m:=be to en do

for t:=1 to q do

s[m+q,t+q]:=s[m,t]

end

end

else begin

if s[be,q]=0 then

begin copy1(be,be+(q div 2)-1,true,q div 2);

copy1(be+(q div 2),en,false,q div 2)

end;

for m:=be to en do

for t:=1 to q do

s[m-q,t+q]:=s[m,t]

end

end;

begin

p:=8;

for i:=1 to n do

for j:=1 to n do

s[i,j]:=0;

for i:=1 to n do

begin

s[i,1]:=i;

if odd(i) then s[i+1,2]:=s[i,1]

else s[i-1,2]:=s[i,1];

end;

copy1(1,n div 2,true,p div 2);

copy1((n div 2)+1,n,false,p div 2);

for i:=1 to n do

begin

for j:=1 to n do

write(s[i,j],' ');

writeln;

end;

end.

以下是USACO contest上的题目,全是递归

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

**********************************************************************

BRONZE PROBLEMS

**********************************************************************

三道题目,从11到13

**********************************************************************

Problem 11: 谷仓的安保 [Traditional, 2005]

Farmer John给谷仓安装了一个新的安全系统,并且要给牛群中的每一个奶牛安排一个有效的密码。一个有效的密码由L(3 <= L <= 15)个小写字母(来自传统的拉丁字母集'a'...'z')组成,至少有一个元音('a', 'e', 'i', 'o', 或者 'u'),至少两个辅音(除去元音以外的音节),并且有按字母表顺序出现的字母(例如,'abc'是有效的,而'bac'不是) 。

给定一个期望长度L和C个小写字母,写一个程序,打印出所有的长度为L、能由这些字母组成的有效密码。密码必须按字母表顺序打印出来,一行一个。

题目名称: passwd

输入格式:

* 第一行: 两个由空格分开的整数,L和C

* 第二行: C个空格分开的小写字母,密码是由这个字母集中的字母来构建的。

输入样例 (文件 passwd.in):

4 6

a t c i s w

输入详细说明:

由从给定的六个字母中选择的、长度为4的密码。

输出格式:

* 第一至?行: 每一个输出行包括一个长度为L个字符的密码(没有空格)。输出行必须按照字母顺序排列。

输出样例 (文件 passwd.out):

acis

acit

aciw

acst

acsw

actw

aist

aisw

aitw

astw

cist

cisw

citw

istw

********************************************************************** Problem 12: "跳房子" [Hal Burch, 2005]

奶牛们按不太传统的方式玩起了小孩子们玩的"跳房子"游戏。奶牛们创造了

一个5x5的、由与x,y轴平行的数字组成的直线型网格,而不是用来在里面跳

的、线性排列的、带数字的方格。

然后他们熟练地在网格中的数字中跳:向前跳、向后跳、向左跳、向右跳

(从不斜过来跳),跳到网格中的另一个数字上。他们再这样跳啊跳(按相同规

则),跳到另外一个数字上(可能是已经跳过的数字)。

一共在网格内跳过五次后,他们的跳跃构建了一个六位整数(可能以0开头,

例如000201)。

求出所有能被这样创造出来的不同整数的总数。

问题名称: numgrid

输入格式:

* 第1到5行: 这样的网格,一行5个整数

输入样例 (文件 numgrid.in):

1 1 1 1 1

1 1 1 1 1

1 1 1 1 1

1 1 1

2 1

1 1 1 1 1

输出格式:

* 第1行: 能构建的不同整数的总数

输出样例 (文件 numgrid.out):

15

输出详细说明:

111111, 111112, 111121, 111211, 111212, 112111, 112121, 121111, 121112,121211, 121212, 2111 11, 211121, 212111和 212121 能够被构建。没有其它可能的数了。

********************************************************************** Problem 13: 卫星照片 [Rob Kolstad, 2005]

Farmer John给他的农场买了W x H像素的卫星照片(1 <= W <= 80, 1 <= H

<= 1000),希望找出最大的"连续的"(互相连接的)牧场。任何一对像素,一个

像素如果能横向的或纵向的与属于这个牧场的另一个像素相连,这样的牧场称

作是连续的(这句话太难翻了,大家将就着理解一下,看了后面的范例应该不

会影响做题—译者)。(很容易创建形状稀奇古怪的牧场,甚至是围着其它圆圈

的圆圈。)

每一张照片都数字化的抽象了,牧场区显示为"*",非牧场区显示为"."。下面

是一个10 x 5的卫星照片样例:

..*.....**

.**..*****

.*...*....

..****.***

..****.***

这张照片显示了大小分别为4、16、6个像素的连续牧场区。帮助FJ在他的每张卫星照片中找到最大的连续牧场。

问题名称: satpix

输入格式:

* 第1行: 两个由空格分开的整数,H 和 W。

* 第2到H+1行: 每一行包含W个"*"或者".",代表卫星照片的横向行。

输出样例 (文件 satpix.in):

10 5

..*.....**

.**..*****

.*...*....

..****.***

..****.***

输出格式:

* 第1行: 最大连续牧场的大小

输出样例 (文件 satpix.out):

16

java练习题目+基础编程题50例

【程序1】 题目:古典问题:有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一对兔子,假如兔子都不死,问每个月的兔子总数为多少? 1.程序分析:兔子的规律为数列1,1,2,3,5,8,13,21.... 【程序2】 题目:判断101-200之间有多少个素数,并输出所有素数。 1.程序分析:判断素数的方法:用一个数分别去除2到sqrt(这个数),如果能被整除, 则表明此数不是素数,反之是素数。 【程序3】 题目:打印出所有的"水仙花数",所谓"水仙花数"是指一个三位数,其各位数字立方和等于该数本身。例如:153是一个"水仙花数",因为153=1的三次方+5的三次方+3的三次方。 1.程序分析:利用for循环控制100-999个数,每个数分解出个位,十位,百位。 【程序4】 题目:将一个正整数分解质因数。例如:输入90,打印出90=2*3*3*5。 程序分析:对n进行分解质因数,应先找到一个最小的质数k,然后按下述步骤完成: (1)如果这个质数恰等于n,则说明分解质因数的过程已经结束,打印出即可。 (2)如果n<>k,但n能被k整除,则应打印出k的值,并用n除以k的商,作为新的正整数你n,重复执行第一步。 (3)如果n不能被k整除,则用k+1作为k的值,重复执行第一步。 【程序5】 题目:利用条件运算符的嵌套来完成此题:学习成绩>=90分的同学用A表示,60-89分之间的用B表示,60分以下的用C表示。 1.程序分析:(a>b)?a:b这是条件运算符的基本例子。 【程序6】 题目:输入两个正整数m和n,求其最大公约数和最小公倍数。 1.程序分析:利用辗除法。 【程序7】 题目:输入一行字符,分别统计出其中英文字母、空格、数字和其它字符的个数。 1.程序分析:利用while语句,条件为输入的字符不为'\n'. 【程序8】 题目:求s=a+aa+aaa+aaaa+aa...a的值,其中a是一个数字。例如2+22+222+2222+22222(此时共有5个数相加),几个数相加有键盘控制。 1.程序分析:关键是计算出每一项的值。 【程序9】 题目:一个数如果恰好等于它的因子之和,这个数就称为"完数"。例如6=1+2+3.编程找出1000以内的所有完数。 【程序10】 题目:一球从100米高度自由落下,每次落地后反跳回原高度的一半;再落下,求它在第10次落地时,共经过多少米?第10次反弹多高? 【程序11】 题目:有1、2、3、4个数字,能组成多少个互不相同且无重复数字的三位数?都是多少? 1.程序分析:可填在百位、十位、个位的数字都是1、2、3、4。组成所有的排列后再去掉不满足条件的排列。 【程序12】

中国近现代史纲要习题册答案 第四章开天辟地的大事变

第四章开天辟地的大事变 一、单项选择题 1、A 2、C 3、A 4、C 5、D 6、A 7、C 8、B 9、D 10、D 11、C 12、D 13、B 14、B 15、D 16、D 17、D 18、C 19、B 20、D 21、C 二、多项选择题 1、ABCD 2、BC 3、CD 4、ABCD 5、ACD 6、ACD 7、ABD 8、ABCD 9、ACD 10、AC 11、BCD 12、ABCD 三、简答题 1、新文化运动的主要内容和意义是什么 新文化运动的主要内容是:提倡民主,反对专制;提倡科学,反对愚昧和迷信;提倡新文化,反对旧文化,要求以白话文代替文言文,进行文学革命;提倡个性解放,反对封建伦理道德。提倡民主就是提倡资产阶级的民主思想和民主制度,包括人权平等、个性解放、独立人格以及以代议制为基本原则的共和体制。提倡科学就是要学习自然科学法则,反对封建迷信,反对偶像崇拜,宣传进化论、唯物论和无神论等思想。进行文学革命就是要从内容到形式提倡白话文,反对文言文。为了传播民主科学的思想,为了人民的启蒙,就必须大力提倡新文学、白话文,反对封建文学、文言文。1919年五四运动以前的新文化运动主要是以资产阶级的新文化反对封建主义的旧文化的斗争,它仍然属于资产阶级民族主义文化革命的范畴。五四以后的新文化运动已经发展到了一个新阶段,马克思主义开始逐步地在思想文化领域中发挥指导作用。 2、如何理解五四运动标志着中国新民主主义革命的开端 五四运动是一次彻底的不妥协的反帝反封建运动。五四以后,尽管中国的社会性质仍然是半殖民地半封建社会,但革命的性质已发生了根本的变化。五

四运动标志着中国新民主主义革命的开端,表现为: 五四运动是在十月革命影响下发生的,是世界无产阶级革命的一部分;马克思主义的广泛传播使中国人民掌握了新的思想武器;无产阶级作为新的力量登上中国政治舞台;社会主义成为中国革命的前进方向。 3、简述中国早期马克思主义思想运动表现出的鲜明特点。 一是注意整体掌握马克思主义的科学体系和立场方法,划清与修正主义的界限。 二是从实际出发运用马克思主义。 三是重视知识分子与劳动群众相结合。 4、中国共产党第二次全国代表大会提出的民主革命的基本纲领及其意义是什么 1922年7月,党的第二次全国代表大会根据中国的实际情况制定出最低纲领,即中国共产党在民主革命阶段的任务是:消除内乱、打倒军阀、建设国内和平;推翻国际帝国主义的压迫,达到中华民族的完全独立;统一中国为真正民主共和国。 党在民主革命时期的基本纲领第一次明确了革命对象-初步解决了革命动力问题,为全国人民制定了彻底的反帝反封建的民主革命纲领。从此,中国人民有了革命斗争的明确方向和战斗旗帜。 四、论述题 1.为什么说中国共产党的成立是中国近代社会历史发展的必然结果中国共产党的成立是中国历史上开天辟地的大事变,是近代中国革命的一个重要转折点。但是中国共产党的产生绝非偶然。它是中国社会政治经济发展的必然结果,是马克思列宁主义同工人运动相结合的产物。 近代中国沦为半殖民地半封建社会,灾难深重的中国人民必然要起来进行

材料科学基础习题及答案

习题课

一、判断正误 正确的在括号内画“√”,错误的画“×” 1、金属中典型的空间点阵有体心立方、面心立方和密排六方三种。 2、位错滑移时,作用在位错线上的力F的方向永远垂直于位错线并指向滑移面上的未滑移区。 3、只有置换固溶体的两个组元之间才能无限互溶,间隙固溶体则不能。 4、金属结晶时,原子从液相无序排列到固相有序排列,使体系熵值减小,因此是一个自发过程。 5、固溶体凝固形核的必要条件同样是ΔG<0、结构起伏和能量起伏。 6三元相图垂直截面的两相区内不适用杠杆定律。 7物质的扩散方向总是与浓度梯度的方向相反。 8塑性变形时,滑移面总是晶体的密排面,滑移方向也总是密排方向。 9.晶格常数是晶胞中两相邻原子的中心距。 10.具有软取向的滑移系比较容易滑移,是因为外力在在该滑移系具有较大的分切应力值。11.面心立方金属的滑移面是{110}滑移方向是〈111〉。 12.固溶强化的主要原因之一是溶质原子被吸附在位错附近,降低了位错的易动性。13.经热加工后的金属性能比铸态的好。 14.过共析钢的室温组织是铁素体和二次渗碳体。 15.固溶体合金结晶的过程中,结晶出的固相成份和液相成份不同,故必然产生晶内偏析。16.塑性变形后的金属经回复退火可使其性能恢复到变形前的水平。 17.非匀质形核时液体内部已有的固态质点即是非均匀形核的晶核。 18.目前工业生产中一切强化金属材料的方法都是旨在增大位错运动的阻力。 19、铁素体是α-Fe中的间隙固溶体,强度、硬度不高,塑性、韧性很好。 20、体心立方晶格和面心立方晶格的金属都有12个滑移系,在相同条件下,它们的塑性也相同。 21、珠光体是铁与碳的化合物,所以强度、硬度比铁素体高而塑性比铁素体差。 22、金属结晶时,晶粒大小与过冷度有很大的关系。过冷度大,晶粒越细。 23、固溶体合金平衡结晶时,结晶出的固相成分总是和剩余液相不同,但结晶后固溶体成分是均匀的。 24、面心立方的致密度为0.74,体心立方的致密度为0.68,因此碳在γ-Fe(面心立方)中的溶解度比在α-Fe(体心立方)的小。 25、实际金属总是在过冷的情况下结晶的,但同一金属结晶时的过冷度为一个恒定值,它与冷却速度无关。 26、金属的临界分切应力是由金属本身决定的,与外力无关。 27、一根曲折的位错线不可能是纯位错。 28、适当的再结晶退火,可以获得细小的均匀的晶粒,因此可以利用再结晶退火使得铸锭的组织细化。 29、冷变形后的金属在再结晶以上温度加热时将依次发生回复、再结晶、二次再结晶和晶粒长大的过程。 30、临界变形程度是指金属在临界分切应力下发生变形的程度。 31、无限固溶体一定是置换固溶体。 32、金属在冷变形后可形成带状组织。 33、金属铅在室温下进行塑性成型属于冷加工,金属钨在1000℃下进行塑性变形属于热加工。

热工基础课后题答案

二零一七年,秋

第一章 热力学第一定律 1-1用水银压力计测量容器中的压力,在水银柱上加一段水,若水柱高1020mm ,水银柱高900mm ,当时大气压力计上的度数为b 755mmHg p =。求容器中气体的压力。 解:查表可知:21mmH O=9.80665Pa 1mmHg=133.3224Pa 由题中条件可知 2H O Hg b 1020 mm 9.80665 Pa 900mm 133.3224Pa 755mm 133.3224Pa 230.651 KPa 0.231MPa p p p p =++=?+?+?=≈容器 即容器中气体的压力为0.231MPa 。 1-2容器中的真空度为600mmHg v p =,气压计上的高度是b 755mmHg p =,求容器中气体的绝对压力(用Pa 表示)。如果容器中的绝对压力不变,而气压计上高度为 b 770mmHg p =,求此时真空表的度数(以mmHg 表示). 解:因为 600mmHg=600mm 133.3224Pa=79993.4Pa v p =? b 755mmHg=755mm 133.3224Pa=100658.4Pa p =? 容器中气体的绝对压力为 b v 100658.479993.420665Pa p p p =-=-= 若以mmHg 表示真空度,则 20665 20665Pa= mmHg 155mmHg 133.3224 p == 则当气压计高度为b 770mmHg p =时,真空表的读数为 770mmHg 155mmHg 615mmHg v b p p p '=-=-= 1-3用斜管压力计测量锅炉烟道气的真空度,管子倾斜角30α=?,压力计使用密度 30.8g/cm ρ=的煤油,斜管中液柱长200mm l =,当地大气压力b 745mmHg p =。求烟气

中国近现代史纲要最新版 课后思考题参考答案 第四章 开天辟地的大事变

1、中国的先进分子为什么和怎样选择了马克思主义? (1)斗争实践——中国选择马克思主义是近代以来先进中国人向西方探索救国救民真理历 史发展的必然结果。农民阶级、洋务派、维新派、革命派的努力先后失败。 (2)思想启蒙——五四新文化运动思想启蒙的结果;三次大论战,最终确立了马克思主义 在中国革命的指导思想地位。 (3)阶级基础——五四前后工人阶级的壮大及其斗争为中国选择马克思主义提供了阶级基 础和实践需求。 (4)外来影响——“一战”的影响:“一战”充分暴露了资本主义制度的内在矛盾,中国人对资 本主义方案产生了怀疑;(2分)俄国十月革命的推动:十月革命给陷于彷徨、苦闷的中国 人昭示了新的理想目标和建国方案,这就是走俄国人的路,搞社会主义。 2、为什么说中国共产党的成立是“开天辟地”的大事变? 第一,中国共产党的成立是中国革命有了坚强的领导核心,灾难深重的中国人民有了可以依 赖的组织者和领导者,中国革命从此不断向前发展,由民主主义革命向社会主义革命推进。 第二,中国共产党的成立,使中国革命有了科学的指导思想。中国共产党以马克思主义为指 导思想,把马克思主义和中国革命的具体实践相结合,制定了正确的革命纲领和斗争策略, 为中国人民指明了斗争的目标和走向胜利的道路。 第三,中国共产党的成立,使中国革命有了新的革命方法,并沟通了中国革命和世界无产阶 级革命之间的联系,为中国革命获得了广泛的国际援助和避免走资本主义提供了客观可能性。 3、中国共产党成立后,中国革命呈现了哪些新面貌?为什么? 中国共产党一经成立,中国革命就展现了新的面貌: 第一,第一次提出了反帝反封建的民主革命纲领,为中国人民指出了明确的斗争目标。 第二,发动工农群众开展革命斗争,在中国掀起了第一次工人运动高潮,同时,中国共产党 月开始从事发动农民的工作,农民的运动蓬勃发展。 第三,实行国共合作,并在合作中发挥主导作用,掀起大革命高潮,推翻了北洋军阀的统治。

材料科学基础习题与答案

- 第二章 思考题与例题 1. 离子键、共价键、分子键和金属键的特点,并解释金属键结合的固体材料的密度比离子键或共价键固体高的原因 2. 从结构、性能等方面描述晶体与非晶体的区别。 3. 何谓理想晶体何谓单晶、多晶、晶粒及亚晶为什么单晶体成各向异性而多晶体一般情况下不显示各向异性何谓空间点阵、晶体结构及晶胞晶胞有哪些重要的特征参数 4. 比较三种典型晶体结构的特征。(Al 、α-Fe 、Mg 三种材料属何种晶体结构描述它们的晶体结构特征并比较它们塑性的好坏并解释。)何谓配位数何谓致密度金属中常见的三种晶体结构从原子排列紧密程度等方面比较有何异同 5. 固溶体和中间相的类型、特点和性能。何谓间隙固溶体它与间隙相、间隙化合物之间有何区别(以金属为基的)固溶体与中间相的主要差异(如结构、键性、性能)是什么 6. 已知Cu 的原子直径为A ,求Cu 的晶格常数,并计算1mm 3Cu 的原子数。 ( 7. 已知Al 相对原子质量Ar (Al )=,原子半径γ=,求Al 晶体的密度。 8 bcc 铁的单位晶胞体积,在912℃时是;fcc 铁在相同温度时其单位晶胞体积是。当铁由 bcc 转变为fcc 时,其密度改变的百分比为多少 9. 何谓金属化合物常见金属化合物有几类影响它们形成和结构的主要因素是什么其性能如何 10. 在面心立方晶胞中画出[012]和[123]晶向。在面心立方晶胞中画出(012)和(123)晶面。 11. 设晶面(152)和(034)属六方晶系的正交坐标表述,试给出其四轴坐标的表示。反之,求(3121)及(2112)的正交坐标的表示。(练习),上题中均改为相应晶向指数,求相互转换后结果。 12.在一个立方晶胞中确定6个表面面心位置的坐标,6个面心构成一个正八面体,指出这个八面体各个表面的晶面指数,各个棱边和对角线的晶向指数。 13. 写出立方晶系的{110}、{100}、{111}、{112}晶面族包括的等价晶面,请分别画出。

第3章程序与递归:组合、抽象与构造练习题答案解析

第3章程序与递归:组合、抽象与构造 1、关于计算系统与程序,下列说法正确的是_____。 (A)只有用计算机语言编写出来的代码才是程序,其他都不能称其为程序; (B)构造计算系统是不需要程序的,程序对构造计算系统没有什么帮助; (C)任何系统都需要程序,只是这个程序是由人来执行还是由机器自动执行,可以由机器自动执行程序的系统被称为计算系统; (D)程序是用户表达的随使用者目的不同而千变万化的复杂动作,不是使用者实现的而是需要计算系统事先完成的。 答案:C 解释: 本题考查程序,计算系统等的概念; (A)程序= 基本动作指令的一个组合或执行序列, 用以实现复杂的动作,只用计算机语言编写出来的代码称为程序,这个概念太狭隘了,A错误;(B)计算系统的一部分是由程序组成的,所以B错误;(C)计算系统= 基本动作+ 指令+ 程序执行机构,任何系统都需要系统,C完全正确;(D)程序= 基本动作指令的一个组合或执行序列, 用以实现复杂的动作,并不是由用户表达的,随使用者的不同而千变万化的复杂动作。所以D是错的; 具体内容参考第三章视频之“程序的作用和本质”及第三章课件。 2、关于程序,下列说法不正确的是_____。 (A)“程序”是由人编写的、以告知计算系统实现人所期望的复杂动作; (B)“程序”可以由系统自动解释执行,也可以由人解释由系统执行; (C)普通人是很难理解“程序”的,其也和“程序”无关; (D)“程序”几乎和每个人都有关系,如自动售票系统、自动取款机等。 答案:C 解释: 本题考查程序的概念; 程序= 基本动作指令的一个组合或执行序列, 用以实现复杂的动作,所以A,B,D都是正确的;C说普通人很难理解程序,这显然是错误的。所以选C; 具体内容参考第三章视频之“程序的作用和本质”及第三章课件。

热工基础思考题答案

思考题 第一章 1.平衡状态与稳定状态有何区别?热力学中为什幺要引入平衡态的概念? 答:平衡状态是在不受外界影响的条件下,系统的状态参数不随时间而变化的状态。而稳定状态则是不论有无外界影响,系统的状态参数不随时间而变化的状态。可见平衡必稳定,而稳定未必平衡。热力学中引入平衡态的概念,是为了能对系统的宏观性质用状态参数来进行描述。 2.表压力或真空度能否作为状态参数进行热力计算?若工质的压力不变,问测量其压力的 压力表或真空计的读数是否可能变化? 答:不能,因为表压力或真空度只是一个相对压力。若工质的压力不变,测量其压力的压力表或真空计的读数可能变化,因为测量所处的环境压力可能发生变化。 3.当真空表指示数值愈大时,表明被测对象的实际压力愈大还是愈小? 答:真空表指示数值愈大时,表明被测对象的实际压力愈小。 4. 准平衡过程与可逆过程有何区别? 答:无耗散的准平衡过程才是可逆过程,所以可逆过程一定是准平衡过程,而准平衡过程不一定是可逆过程。 5. 不可逆过程是无法回复到初态的过程,这种说法是否正确? 答:不正确。不可逆过程是指不论用任何曲折复杂的方法都不能在外界不遗留任何变化的情况下使系统回复到初态,并不是不能回复到初态。 6. 没有盛满水的热水瓶,其瓶塞有时被自动顶开,有时被自动吸紧,这是什幺原因? 答:水温较高时,水对热水瓶中的空气进行加热,空气压力升高,大于环境压力,瓶塞被自动顶开。而水温较低时,热水瓶中的空气受冷,压力降低,小于环境压力,瓶塞被自动吸紧。 7. 用U形管压力表测定工质的压力时,压力表液柱直径的大小对读数有无影响? 答:严格说来,是有影响的,因为U型管越粗,就有越多的被测工质进入U型管中,这部分工质越多,它对读数的准确性影响越大。 第二章

材料科学基础课后习题答案第二章

第2章习题 2-1 a )试证明均匀形核时,形成临界晶粒的△ G K 与其临界晶核体积 V K 之间的关系式为 2 G V ; b )当非均匀形核形成球冠形晶核时,其△ 所以 所以 2-2如果临界晶核是边长为 a 的正方体,试求出其厶G K 与a 的关系。为什么形成立方体晶核 的厶G K 比球形晶核要大? 解:形核时的吉布斯自由能变化为 a )证明因为临界晶核半径 r K 临界晶核形成功 G K 16 故临界晶核的体积 V K 4 r ; G V )2 2 G K G V b )当非均匀形核形成球冠形晶核时, 非 r K 2 SL G V 临界晶核形成功 3 3( G ;7(2 3cos 3 cos 故临界晶核的体积 V K 3(r 非)3(2 3 3cos 3 cos V K G V 1 ( 3 卸2 3 3cos cos )G V 3 3(書 (2 3cos cos 3 ) G K % G K 与V K 之间的关系如何? G K

G V G v A a3G v 6a2 3 得临界晶核边长a K G V

临界形核功 将两式相比较 可见形成球形晶核得临界形核功仅为形成立方形晶核的 1/2。 2-3为什么金属结晶时一定要有过冷度?影响过冷度的因素是什么?固态金属熔化时是否 会出现过热?为什么? 答:金属结晶时要有过冷度是相变热力学条件所需求的, 只有△ T>0时,才能造成固相的自 由能低于液相的自由能的条件,液固相间的自由能差便是结晶的驱动力。 金属结晶需在一定的过冷度下进行,是因为结晶时表面能增加造成阻力。固态金属熔 化时是否会出现过热现象,需要看熔化时表面能的变化。如果熔化前后表面能是降低的, 则 不需要过热;反之,则可能出现过热。 如果熔化时,液相与气相接触,当有少量液体金属在固体表面形成时,就会很快覆盖 在整个固体表面(因为液态金属总是润湿其同种固体金属 )。熔化时表面自由能的变化为: G 表面 G 终态 G 始态 A( GL SL SG ) 式中G 始态表示金属熔化前的表面自由能; G 终态表示当在少量液体金属在固体金属表面形成 时的表面自由能;A 表示液态金属润湿固态金属表面的面积;b GL 、CSL 、CSG 分别表示气液相 比表面能、固液相比表面能、固气相比表面能。因为液态金属总是润湿其同种固体金属,根 据润湿时表面张力之间的关系式可写出:b SG 》6GL + (SL 。这说明在熔化时,表面自由能的变 化厶G 表w o ,即不存在表面能障碍,也就不必过热。实际金属多属于这种情况。如果固体 16 3 3( G v )2 1 32 3 6 2 (G v )2 b K t K 4 G V )3 G V 6( 4 G v )2 64 3 96 3 32 r K 2 ~G ?, 球形核胚的临界形核功 (G v )2 (G v )2 (G v )2 G b K 2 G v )3 16 3( G v )2

递归基础练习题

递归基础练习题 1. 求1+2+3+……+n的值 2. 求1*2*3*……*n的值 3. 数的全排列问题。将n个数字1,2,…n的所有排列按字典顺序枚举出来 2 3 1 2 1 3 3 1 2 3 2 1 4. 数的组合问题。从1,2,…,n中取出m个数,将所有组合按照字典顺序列出。 如n=3,m=2时,输出: 1 2 1 3 2 3 9. 求两个数的最大公约数。 10. 求两个数的最小公倍数。 5. 小猴子第一天摘下若干桃子,当即吃掉一半,又多吃一个.第二天早上又将剩下的桃子吃一半,又多吃一个.以后每天早上吃前一天剩下的一半另一个.到第10天早上猴子想再吃时发现,只剩下一个桃子了.问第一天猴子共摘多少个桃子? 8. 著名的菲波拉契(Fibonacci)数列,其第一项为1,第二项为1,从第三项开始,其每一项都是前两项的和。编程求出该数列前N项数据。 15. 梯有N阶,上楼可以一步上一阶,也可以一次上二阶。编一个程序,计算共有多少种不同的走法。 6. 有雌雄一对兔子,假定过两个月便可繁殖雌雄各一的一对小兔子。问过n个月后共有多少对兔子? 7. 一个人赶着鸭子去每个村庄卖,每经过一个村子卖去所赶鸭子的一半又一只。这样他经过了七个村子后还剩两只鸭子,问他出发时共赶多少只鸭子?经过每个村子卖出多少只鸭子? 11. 输入一个数,求这个数的各位数字之和。 12. 角谷定理。输入一个自然数,若为偶数,则把它除以2,若为奇数,则把它乘以3加1。经过如此有限次运算后,总可以得到自然数值1。求经过多少次可得到自然数1。 如:输入22, 输出 22 11 34 17 52 26 13 40 20 10 5 16 8 4 2 1 STEP=16 13. 将十进制转换为二进制。 14. 计算M=max(a,b,c)/[max(a+b,b,c)*max(a,b,b+c)],其中a,b,c由键盘输入。 16. 某人写了n封信和n个信封,如果所有的信都装错了信封。求所有的信都装错信封共有多少种不同情况? 17. 给出一棵二叉树的中序与后序排列。求出它的先序排列。 18. 求把一个整数n无序划分成k份互不相同的正整数之和的方法总数。 19. 已知一个一维数组A[1..N]。{N<50} 又已知一整数M。如能使数组A中任意几个元素之和等于M,则输出YES,反之则为NO。 20. 要求找出具有下列性质的数的个数(包含输入的自然数n): 先输入一个自然数n(n<=500),然后对此自然数按照如下方法进行处理: ①. 不作任何处理;

材料科学基础习题要点

查看文本 习题 一、名词解释 金属键; 结构起伏; 固溶体; 枝晶偏析; 奥氏体; 加工硬化; 离异共晶; 成分过冷; 热加工; 反应扩散 二、画图 1在简单立方晶胞中绘出()、(210)晶面及[、[210]晶向。 2结合Fe-Fe3C相图,分别画出纯铁经930℃和800℃渗碳后,试棒的成分-距离曲线示意图。 3如下图所示,将一锲形铜片置于间距恒定的两轧辊间轧制。试画出轧制后铜片经再结晶后晶粒大小沿片长方向变化的示意图。 4画出简单立方晶体中(100)面上柏氏矢量为[010]的刃型位错与(001)面上柏氏矢量为[010]的刃型位错交割前后的示意图。 5画图说明成分过冷的形成。 三、Fe-Fe3C相图分析 1用组织组成物填写相图。 2指出在ECF和PSK水平线上发生何种反应并写出反应式。 3计算相图中二次渗碳体和三次渗碳体可能的最大含量。 四、简答题 1已知某铁碳合金,其组成相为铁素体和渗碳体,铁素体占82%,试求该合金的含碳量和组织组成物的相对量。 2什么是单滑移、多滑移、交滑移?三者的滑移线各有什么特征,如何解释?。 3设原子为刚球,在原子直径不变的情况下,试计算g-Fe转变为a-Fe时的体积膨胀率;如果测得910℃时g-Fe和a-Fe的点阵常数分别为0.3633nm和0.2892nm,试计算g-Fe转变为a-Fe的真实膨胀率。 4间隙固溶体与间隙化合物有何异同? 5可否说扩散定律实际上只有一个?为什么? 五、论述题 τC 结合右图所示的τC(晶体强度)—ρ位错密度 关系曲线,分析强化金属材料的方法及其机制。 晶须 冷塑变 六、拓展题 1 画出一个刃型位错环及其与柏士矢量的关系。 2用金相方法如何鉴别滑移和孪生变形? 3 固态相变为何易于在晶体缺陷处形核? 4 画出面心立方晶体中(225)晶面上的原子排列图。 综合题一:材料的结构 1 谈谈你对材料学科和材料科学的认识。 2 金属键与其它结合键有何不同,如何解释金属的某些特性? 3 说明空间点阵、晶体结构、晶胞三者之间的关系。 4 晶向指数和晶面指数的标定有何不同?其中有何须注意的问题? 5 画出三种典型晶胞结构示意图,其表示符号、原子数、配位数、致密度各是什么? 6 碳原子易进入a-铁,还是b-铁,如何解释? 7 研究晶体缺陷有何意义? 8 点缺陷主要有几种?为何说点缺陷是热力学平衡的缺陷?

50道JAVA基础编程练习题

50道JAVA基础编程练习题 【程序1】 题目:古典问题:有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一 对兔子,假如兔子都不死,问每个月的兔子总数为多少? 1.程序分析:兔子的规律为数列1,1,2,3,5,8,13,21.... 【程序2】 题目:判断101-200之间有多少个素数,并输出所有素数。 1.程序分析:判断素数的方法:用一个数分别去除2到sqrt(这个数),如果能被整除, 则表明此数不是素数,反之是素数。 【程序3】 题目:打印出所有的"水仙花数",所谓"水仙花数"是指一个三位数,其各位数字立方和等于该数本身。例如:153是一个"水仙花数",因为153=1的三次方+5的三次方+3的三次方。 1.程序分析:利用for循环控制100-999个数,每个数分解出个位,十位,百位。 【程序4】 题目:将一个正整数分解质因数。例如:输入90,打印出90=2*3*3*5。 程序分析:对n进行分解质因数,应先找到一个最小的质数k,然后按下述步骤完成: (1)如果这个质数恰等于n,则说明分解质因数的过程已经结束,打印出即可。 (2)如果n<>k,但n能被k整除,则应打印出k的值,并用n除以k的商,作为新的正整数你n,重复执行第一步。 (3)如果n不能被k整除,则用k+1作为k的值,重复执行第一步。 【程序5】 题目:利用条件运算符的嵌套来完成此题:学习成绩>=90分的同学用A表示,60-89分之间的用B表示,60分以下 的用C表示。 1.程序分析:(a>b)?a:b这是条件运算符的基本例子。 【程序6】 题目:输入两个正整数m和n,求其最大公约数和最小公倍数。 1.程序分析:利用辗除法。

工程热力学思考题答案

第九章气体动力循环 1、从热力学理论看为什么混合加热理想循环的热效率随压缩比ε和定容增压比λ的增大而提高,随定压预胀比ρ的增大而降低 答:因为随着压缩比ε和定容增压比λ的增大循环平均吸热温度提高,而循环平均放热温度不变,故混合加热循环的热效率随压缩比ε和定容增压比λ的增大而提高。混合加热循环的热效率随定压预胀比ρ的增大而减低,这时因为定容线比定压线陡,故加大定压加热份额造成循环平均吸热温度增大不如循环平均放热温度增大快,故热效率反而降低。 2、从内燃机循环的分析、比较发现各种理想循环在加热前都有绝热压缩过程,这是否是必然的 答:不是必然的,例如斯特林循环就没有绝热压缩过程。对于一般的内燃机来说,工质在气缸内压缩,由于内燃机的转速非常高,压缩过程在极短时间内完成,缸内又没有很好的冷却设备,所以一般都认为缸内进行的是绝热压缩。 3、卡诺定理指出两个热源之间工作的热机以卡诺机的热效率最高,为什么斯特林循环的热效率可以和卡诺循环的热效率一样 答:卡诺定理的内容是:在相同温度的高温热源和相同温度的低温热源之间工作的一切可逆循环,其热效率都相同,与可逆循环的种类无关,与采用哪一种工质无关。定理二:在温度同为T1的热源和同为T2的冷源间工作的一切不可逆循环,其热效率必小于可逆循环。由这两条定理知,在两个恒温热源间,卡诺循环比一切不可逆

循环的效率都高,但是斯特林循环也可以做到可逆循环,因此斯特林循环的热效率可以和卡诺循环一样高。 4、根据卡诺定理和卡诺循环,热源温度越高,循环热效率越大,燃气轮机装置工作为什么要用二次冷却空气与高温燃气混合,使混合气体降低温度,再进入燃气轮机 答:这是因为高温燃气的温度过高,燃气轮机的叶片无法承受这么高的温度,所以为了保护燃气轮机要将燃气降低温度后再引入装置工作。同时加入大量二次空气,大大增加了燃气的流量,这可以增加燃气轮机的做功量。 5、卡诺定理指出热源温度越高循环热效率越高。定压加热理想循环的循环增温比τ高,循环的最高温度就越高,但为什么定压加热理想循环的热效率与循环增温比τ无关而取决于增压比π 答:提高循环增温比,可以有效的提高循环的平均吸热温度,但同时也提高了循环的平均放热温度,吸热和放热均为定压过程,这两方面的作用相互抵消,因此热效率与循环增温比无关。但是提高增压比,p1不变,即平均放热温度不变,p2提高,即循环平均吸热温度提高,因此循环的热效率提高。 6、以活塞式内燃机和定压加热燃气轮机装置为例,总结分析动力循环的一般方法。 答:分析动力循环的一般方法:首先,应用“空气标准假设”把实际问题抽象概括成内可逆理论循环,分析该理论循环,找出影响循环热效率的主要因素以及提高该循环效率的可能措施,以指导实际

《材料科学基础》习题与思考题电子教案

《材料科学基础》习题与思考题

《材料科学基础教程》复习题与思考题 一、选择与填空 1-1下列组织中的哪一个可能不是亚稳态,即平衡态组织? a)马氏体+残余奥氏体b)上贝氏体c)铁素体+珠光体d)奥氏体+贝氏体 1-2下列组织中的哪一个可能不是亚稳态? a)铁碳合金中的马氏体b)铁碳合金中的珠光体+铁素体 c)铝铜合金中的a +GPZ d铁碳合金中的奥氏体+贝氏体 1-3单相固溶体在非平衡凝固过程中会形成成分偏析: a)若冷却速度越大,则成分偏析的倾向越大; b)若过冷度越大,则成分偏析的倾向越大; c)若两组元熔点相差越大,则成分偏析的倾向越小; d)若固相线和液相线距离越近,贝U成分偏析的倾向越小。 1-4有两要平等右螺旋位错,各自的能量都为E1,当它们无限靠近时,总能量为—a)2E1 b) 0 c) 4E1 1-13两根具有反向柏氏矢量的刃型位错在一个原子面间隔的两个平行滑移面上相向运动以后,在相遇处___________ 。 a)相互抵消b)形成一排间隙原子c)形成一排空位 1-15位错运动方向处处垂直于位错线,在运动过程中是可变的,晶体做相对滑动的方向—。 a)随位错线运动方向而改变b)始终是柏氏矢量方向c)始终是外力方向 1-16位错线张力是以单位长度位错线能量来表示,则一定长度位错的线张力具有— 纲。 a)长度的b)力的c)能量的 1-17位错线上的割阶一般通过—形成。

a)位错的交割b)共格界面c)小角度晶界 1-7位错上的割阶一般通过 _形成。 a)孪生b)位错的交滑移c)位错的交割 1-23刃形位错的割阶部分—。 a)为刃形位错b)为螺形位错c)为混合位错 1-24面心立方晶体中Frank不全位错最通常的运动方式是 _。 a)沿{111}面滑移b)沿垂直于{111}的面滑移c)沿{111}面攀移 1-25位错塞积群的一个重要效应是在它的前端引起______ 。 a)应力偏转b)应力松弛c)应力集中 1-26面心立方晶体中关于Shcockley分位错的话,正确的是_____ 。 a)Shcockle y分位错可以是刃型、螺型或混合型; b)刃型Shcockley分位错能滑移和攀移; c)螺型Shcockley分位错能交滑移。 1-27汤普森四面体中罗-罗向量、不对应罗-希向量、希-希向量分别有个。 a)12, 24, 8,12 b)24, 24, 8,12 c)12,24, 8,6 1-32 ______ ,位错滑移的派—纳力越小。 a)相邻位错的距离越大b)滑移方向上的原子间距越大c)位错宽度越大 1 —33层错和不全位错之间的关系是__ 。 a)层错和不全位错交替出现;b)层错和不全位错能量相同; c)层错能越高,不全位错柏氏矢量模越小;d)不全位错总是出现在层错和完整晶体的交界处。 1 —34位错交割后原来的位错线成为折线,若—。

程序设计基本训练题集

程序设计基本训练题集,给你拿去做着玩吧!! 一、基础题 1. 编程,统计在所输入的50个实数中有多少个正数、多少个负数、多少个零。 2. 编程,输入一个10进制正整数,然后输出它所对应的八进制、十六进制数。 3. 输入20个整数存入一个整型数组,输出其中能被数组中其它(只需其中一个)元素整除的那些数组元素。 4. 输入两个数组(数组元素个数自定),输出在两个数组中都出现的元素(如a[5]={2,3,4,5,6},b[6]={3,5,7,9,10,-1},则输出3、5)。 5. 输入两个数组(数组元素个数自定),输出在两个数组中都不出现的元素(如a[5]={2,3,4,5,6},b[6]={3,5,7,9,10,-1},则输出2、4、6、3、7、9、10、-1)。 6.给定年份year,判别该年份是否闰年,要求: 6-1 一般算法; 6-2 用宏实现:定义一个宏以判别该年份是否闰年。 7.给定一个日期(年/月/日)计算该日期是所在年的第几天。 8. 编写一个函数,处理n行、n列的二维数组:将每一行的元素同除以该行上绝对值最大的元素。 9. 设计一个函数,求给出数的补码。 10.编写一个程序,输入月份号,输出该月份的英文月名,要求用指针数组处理。 11. 编写函数,求m行、n列的二维数组全体元素中负数的个数。 12. 编写函数,返回在一个整数组中出现次数最多的数及其出现次数。 13. 编写函数,在n个元素的一维数组中,统计比相邻元素大的数组元素个数并将统计数返回(不考虑a[0]和a[n-1]),要求以指针变量而不是数组名作参数。 14. 编写函数,在n个元素的一维数组中,找出最大值、最小值并传送到调用函数。 15. 编写一个函数,统计m行n列二维数组中有多少个正数、多少个负数,多少个零,并返回统计结果。16.输入一个数组,删除数组中的负数。 17.有4名学生每个学生考4门课程,要求在用户输入学生学号以后能输出该生的全部成绩,用指针型函数来实现。请编写函数float *search(). main() {static float score[][4]={{60,76,80,90},{45,86,57,90},{58,95,80,71},{78,50,60,85}}; float *search(),p; int I,m; printf(“enter the number of student:”); scanf(“%d”,&m); printf(“the score of NO.%dare:\n”,m); p=search(score,m); for(I=0;I<4;I++) printf(“%52f\t”,*(p+I)); } float *search(float (pointer)[4],int n) {} 18.有4名学生每个学生考4门课程,要求在用户找出有不及格课程的学生学号并输出全部成绩,用指针来实现。 19.编写一个函数实现将一个整数按逆序存放到一个数组中。

算法设计与分析基础课后习题答案

Program算法设计与分析基础中文版答案 习题 5..证明等式gcd(m,n)=gcd(n,m mod n)对每一对正整数m,n都成立. Hint: 根据除法的定义不难证明: 如果d整除u和v, 那么d一定能整除u±v; 如果d整除u,那么d也能够整除u的任何整数倍ku. 对于任意一对正整数m,n,若d能整除m和n,那么d一定能整除n和r=m mod n=m-qn;显然,若d能整除n和r,也一定能整除m=r+qn和n。 数对(m,n)和(n,r)具有相同的公约数的有限非空集,其中也包括了最大公约数。故gcd(m,n)=gcd(n,r) 6.对于第一个数小于第二个数的一对数字,欧几里得算法将会如何处理?该算法在处理这种输入的过程中,上述情况最多会发生几次? Hint: 对于任何形如0<=m

设sqrt(x)是求平方根的函数) 算法Quadratic(a,b,c) 描述将十进制整数表达为二进制整数的标准算法 a.用文字描述 b.用伪代码描述 解答: a.将十进制整数转换为二进制整数的算法 输入:一个正整数n 输出:正整数n相应的二进制数 第一步:用n除以2,余数赋给Ki(i=0,1,2...),商赋给n 第二步:如果n=0,则到第三步,否则重复第一步 第三步:将Ki按照i从高到低的顺序输出 b.伪代码 算法 DectoBin(n) .n]中 i=1 while n!=0 do { Bin[i]=n%2; n=(int)n/2; i++; } while i!=0 do{ print Bin[i]; i--; } 9.考虑下面这个算法,它求的是数组中大小相差最小的两个元素的差.(算法略)对这个算法做尽可能多的改进. 算法 MinDistance(A[0..n-1])

工程热力学思考题参考答案

第八章压气机的热力过程1、利用人力打气筒为车胎打气时用湿布包裹气筒的下部,会发现打气时轻松了一点,工程上压气机缸常以水冷却或气缸上有肋片,为什么? 答:因为气体在压缩时,以等温压缩最有利,其所消耗的功最小,而在人力打气时用湿布包裹气筒的下部或者在压气机的气缸用水冷却,都可以使压缩过程尽可能的靠近等温过程,从而使压缩的耗功减小。 2、既然余隙容积具有不利影响,是否可能完全消除它? 答:对于活塞式压气机来说,由于制造公差、金属材料的热膨胀及安装进排气阀等零件的需要,在所难免的会在压缩机中留有空隙,所以对于此类压缩机余隙容积是不可避免的,但是对于叶轮式压气机来说,由于它是连续的吸气排气,没有进行往复的压缩,所以它可以完全排除余隙容积的影响。 3、如果由于应用气缸冷却水套以及其他冷却方法,气体在压气机气缸中已经能够按定温过程进行压缩,这时是否还需要采用分级压缩?为什么? 答:我们采用分级压缩的目的是为了减小压缩过程中余隙容积的影响,即使实现了定温过程余隙容积的影响仍然存在,所以我们仍然需要分级压缩。 4、压气机按定温压缩时,气体对外放出热量,而按绝热压缩时不向外放热,为什么定温压缩反较绝热压缩更为经济? 答:绝热压缩时压气机不向外放热,热量完全转化为工质的内能,使工质的温度升高,压力升高,不利于进一步压缩,且容易对压气机造成损伤,耗功大。等温压缩压气机向外放热,工质的温度不变,相比于绝热压缩气体压力较低,有利于进一步压缩耗功小,所以等温压缩更为经济。 5、压气机所需要的功可从第一定律能量方程式导出,试导出定温、多变、绝热压缩压气机所需要的功,并用T-S图上面积表示其值。

答:由于压缩气体的生产过程包括气体的流入、压缩和输出,所以压气机耗功应以技术功计,一般用w c 表示,则w c =-w t 由第一定律:q=△h+w t , 定温过程:由于T 不变,所以△h 等于零,既q=w t ,q=T △s ,2 1ln p p R s g =?,则有 多变过程:w c =-w t =△h-q 所以??????????-???? ??-=-111121n n g c p p T R n n w 绝热过程:即q=0,所以 6、活塞式压气机生产高压气体为什么要采用多级压缩及级间冷却的工艺? 答:由于活塞式压气机余隙容积的存在,当压缩比增大时,压气机的产气量减小,甚至不产气,所以要将压缩比控制在一定范围之内,因此采用多级压缩,以减小单级的压缩比。气体压缩以等温压缩为最有利,因此应设法使压气机内气体压缩过程指数n 减小,采用级间冷却可以很好的减小n. 7、叶轮是压气机不可逆绝热压缩比可逆绝热压缩多耗功可用图8-11中的面积m2s 2’nm 表示,这是否即是此不可逆过程的做功能力损失?为什么? 图8-11 答:多消耗的功量并不就是损失的做功能力损失。因为 i=()()m n T m n s s s s T S T -=-=?2' 00 为图中的17nm1. 8、如图8-13所示的压缩过程1-2,若是可逆的,则这一过程是什么过程?他与不可逆绝热压缩过程1-2的区别何在?两者之中哪一过程消耗的功大?大多少? 图8-13

50道JAVA基础编程练习题(包含答案)

50道JAVA基础编程练习题 Java学习笔记2010-03-19 17:45:01 阅读1117 评论6 字号:大中小订阅 【程序1】 题目:古典问题:有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一 对兔子,假如兔子都不死,问每个月的兔子总数为多少? 1.程序分析:兔子的规律为数列1,1,2,3,5,8,13,21.... 【程序2】 题目:判断101-200之间有多少个素数,并输出所有素数。 1.程序分析:判断素数的方法:用一个数分别去除2到sqrt(这个数),如果能被整除, 则表明此数不是素数,反之是素数。 做了【程序3】 题目:打印出所有的"水仙花数",所谓"水仙花数"是指一个三位数,其各位数字立方和等于该数本身。例如:153是一个"水仙花数",因为153=1的三次方+5的三次方+3的三次方。 1.程序分析:利用for循环控制100-999个数,每个数分解出个位,十位,百位。 【程序4】 题目:将一个正整数分解质因数。例如:输入90,打印出90=2*3*3*5。 程序分析:对n进行分解质因数,应先找到一个最小的质数k,然后按下述步骤完成: (1)如果这个质数恰等于n,则说明分解质因数的过程已经结束,打印出即可。 (2)如果n<>k,但n能被k整除,则应打印出k的值,并用n除以k的商,作为新的正整数你n,重复执行第一步。 (3)如果n不能被k整除,则用k+1作为k的值,重复执行第一步。 【程序5】 题目:利用条件运算符的嵌套来完成此题:学习成绩>=90分的同学用A表示,60-89分之间的用B表示,60分以下 的用C表示。 1.程序分析:(a>b)?a:b这是条件运算符的基本例子。 【程序6】 题目:输入两个正整数m和n,求其最大公约数和最小公倍数。 1.程序分析:利用辗除法。 【程序7】 题目:输入一行字符,分别统计出其中英文字母、空格、数字和其它字符的个数。 1.程序分析:利用while语句,条件为输入的字符不为'\n'. 做了【程序8】 题目:求s=a+aa+aaa+aaaa+aa...a的值,其中a是一个数字。例如2+22+222+2222+22222(此时共有5个数相加), 几个数相加有键盘控制。 1.程序分析:关键是计算出每一项的值。 【程序9】 题目:一个数如果恰好等于它的因子之和,这个数就称为"完数"。例如6=1+2+3.编程找出1000以内的

相关文档