当前位置:文档之家› 群体改良与轮回选择

群体改良与轮回选择

群体改良与轮回选择
群体改良与轮回选择

群体改良与轮回选择

玉米育种途径和方法----轮回选择

什么是轮回选择呢?

轮回选择主要用来改良育种材料的遗传基础,提高群体的平均值,保持群体内丰富的遗传变异,以供近一步选择之用。轮回选择是现代的植物育种工作不仅是要在当前培育出优质、高产、多抗的农作物新品种,更要考虑到能在长远的时期内在保持现有的品种资源的遗传变异的基础上,进一步丰富作物的遗传基础,以便为今后长远的育种目标服务。

轮回选择的主要目的是什么?

轮回选择在于为育种家提供改良了的种质,使其中有利的等位基因频率得到提高。同时,还可以改良种质的适应性,使其适应本地的环境条件而良好的生长,成为新的种质资源。

我们育种工作中,目前育种工作者常用的方法是系谱法,尽管育成的品种能基本上满足生产和生活的要求,但育成的品种的遗传基础非常狭窄,加之各个育种单位在进行新品种选育的工作中,所利用的种质基本上雷同,使得当前生产上大面积种植的品种的遗传基础单一。另一方面,在育种工作中,育种工作者面临的性状大多数是数量性状,由大量的基因控制的。而育种工作中,常用的育种方法是杂交育种的系谱法,这对数量性状的选择是非常不利的。

从理论上讲,如果决定某一数量性状的基因有20对,在一个杂交后代群体中,出现20对基因位点均为有利纯合基因的概率只有(1/4)20,为了选育出这

样一个个体,所需种植的群体是非常大的。采用常规的育种方法是远远不能达到这个目的的。也就是说:不可能将所有的符合要求的优良基因集中到一个个体内。

因此作物遗传育种工作者必须制定出一个育种方案,这个方案既不需要种植很大的群体以供选择,又能使群体中的优良基因的频率不断提高,优良基因的集中程度不断加大,从而使育种工作者能够选育出优良基因较多的个体。轮回选择就是具有这种特点的育种方案。

轮回选择是创造群体改良的一种方法,这种方法包括从原始群体中根据一定的目标性状选择一定数量的个体,并在以后的世代中使它们重组,以产生新的群体,在此基础上,再重复上述过程,从而创造优良基因频率较高(或具有丰富基因储备)的改良群体。轮回选择的基本概念在于:通过对群体中个体的选择和杂交重组,不断打破原有群体的遗传平衡,再通过随机交配使其达到新的平衡,这样,使群体中的优良基因频率不断改变。群体不断得到改良。

轮回选择包括三个过程:

1、产生后代系;

2、在设置重复的试验区域内评价后代系

3、选出优良的后代系进行杂交重组合成改良群体。

(这种选择方法结合了个体选择和混合选择的优点,在选择的过程中,凡发现优良的后代系可通过自交培育成自交系,在对测交种的比较试验中,可选育出优良的杂交种,经改良的群体如符合生产的要求可以直接用于生产。

轮回选择克服了通常选育自交系工作中,由于严格的自交(或近亲繁殖)使基因型迅速纯合从而限制了基因的分离和重组的缺点,它变严格的近亲繁殖为适

度的近亲繁殖,使得基因型缓慢地接近纯合,这样,通过反复的分离、重组,就可能有效地打破优良基因与不良基因的连锁,增加优良基因的重组的机会,使群体中优良基因的频率不断提高。)

轮回选择它不仅包括了群体的改良,也包括了在群体改良的基础上选育自交系和组配杂交种,所以说:轮回选择不是单一的育种手段,而是一套完整的育种体系。

轮回选择的原理是怎样的呢?

性状的遗传变异是育种工作的基础,也是育种群体应具备的主要条件。育种工作能否取得成就,在很大程度上依赖于育种群体中的遗传变异的丰富与否以及群体中优良基因的频率。在育种工作中,育种工作者选择的性状很多是数量性状,由多基因控制,严格地选择使得中选率下降,更重要的是不利于群体中有利基因的重组与累积。

如果在育种的群体中保持多样的遗传变异,使种质丰富多样,同时采用周期性的系统选择来改良群体的遗传组成,在此基础上,选择符合育种需要的优良基因型,则可以增加入选的机率。目前在玉米育种工作中,主要是通过轮回选择的程序来改良群体。

通过多轮的选择,可将优良基因累加起来,从而增加群体内优良基因的频率,使群体得到改良。同时,通过多设重复,多点鉴定,可克服环境对数量性状的影响,也利于将优良个体挑选出来。

群体改良以优良种质为对象,采用轮回选择的方法,依照育种目标,经过选择优良个体自交,测交鉴定,再选优系互交等步骤合成改良群体,照此程序轮回若干次,可打破基因连锁,增加基因重组的机会,提高群体中优良基因的频率,从而提高选择效果。

轮回选择的方法:

Ⅰ.群体内的轮回选择

1. 表型或混合选择(Gardner, 1961)

2. 改良的穗行选择(Lonnquist, 1964)

3. 半同胞选择(一般配合力的选择) (Jenkins, 1940)

4. 半同胞选择(特殊配合力的选择) (Hull, 1945)

5. 全同胞选择(Hull, 1945)

6. 自交系选择(S1、S2等) (Hull, 1945)

Ⅱ.群体间的轮回选择

7. 相互轮回选择(Comstock 1949)

8. 用自交系作测验种的相互轮回选择(Russell, 1975)

9. 改良的相互轮回选择Ⅰ(Paterniani, 1977)

10.改良的相互轮回选择Ⅱ(Paterniani, 1977)

11.相互全同胞选择(Hallauer, 1970)

简单轮回选择;

基本群体

第一季:自交一定数量的单株,

成熟时决定当选单株

第二季:当选单株内所有可能形式的杂交,

混收种子

第三季:新的基本群体

半同胞轮回选择

第一代,自交和测交。从基本群体(C0)中,选择百余株至数百株自交,同时以自交株的花粉与测验种组配对应的百余个至数百个测交种;

第二代,测交种比较。室内保存与测交种对应的自交株种子,对测交种(已获得对应自交株种子的测交种)进行综合鉴定(包括异地鉴定),选10%最优测交种;↓

第三代,组配杂交种。把当选的10%最优测交种对应的室内保存的自交株的种子种成穗行,按n(n-1)/2公式,配成单交种。或用等量种子混合,种在隔离区内,任其自由授粉,繁育合成改良群体(C1),即完成第一轮的选择。再以C1为基础群体,重复上面的过程,进行第二轮的选择,以后可进行多轮。在每轮中对当选的自交株,可择优株继续自交,育成新自交系。

第一年原始群体(优良自然群体或人工合成群体)

选100株以上自交(S0)——————→测验种×S0

↓↓

↓↓

第二年室内妥善保存自交种子(S1) 测交种比较试验

↓↓

↓↓

第三年互交区←←←←←←根据测交种试验选出约10%优系,

↓在隔离区进行

第一轮改良群体

在进行半同胞轮回选择过程中,所选用的测验种如果是杂合的群体(杂交种或综合品种),测交种鉴定的结果,可以显示出加性遗传的效应,即反映了所选自交单株的一般配合力,如果选用的测验种为纯合的自交系,则显示出非加性的遗传效应,即反映了自交单株与测验种间的特殊配合力,有可能选育出优良的单交种。

全同胞家系轮回选择

第一代,成对杂交。在基本群体中,选择优良单株成对杂交百余至数百个组合即So×So全同胞家系;

第二代,杂交种鉴定。将成对杂交的全同胞家系种子,约一半进行种植鉴定,另一半贮藏于室内。根据鉴定结果,选择10%左右的最优杂交种;

第三代,合成改良群体。把上代当选的10%左右杂交种的贮存种子,按组合等量混合播种于隔离区内,任其自由授粉,合成第一轮改良群体。

相互轮回选择(半同胞)

第一代,自交并相互杂交。这是一种同时改良两个基本群体的半同胞轮回选择,用A、B两个群体互为父本、母本,互作测验种,就A群体而言,选择百余或数百个优良单株进行自交,并以自交株的花粉,给B群体中的3-5个优株授粉,得相对应的测交种(B×A)。同时,从B群体中选百余个或数百个优良单株自交,以自交株的花粉给A群体中的3-5个优株授粉,得相应的测交种(A×B);

第二代,测交种比较鉴定。对A、B群体自交单株测配成的测交种进行综合鉴定(包括异地鉴定),同时贮存A、B两群的自交穗;

第三代,合成改良群体。根据上代鉴定之结果,选择10%左右最优测交种相对应的贮藏于室内的自交穗种子,分别等量混合种在隔离区内繁育成A、B两个改良群体(AC1与BC1)。在两个群体中可选优株自交,育成自交系。

相互轮回选择模式图

群体A 群体B

第一年选300株以上自交(S0)—→B×S0 A×S0 ←——300株以上自交(S0)

↓↘↙↓

第二年室内妥善保存自交种子(S1) 测交种比较试验室内妥善保存自交种子(S1)

↓↓↓

第三年互交区←—根据测交种试验选出约10%优系S1,—→互交区

↓在隔离区进行互交↓

第一轮改良群体A(C1) 第一轮改良群体B(C1)

相互轮回选择(全同胞)

选择方法如下:

第一代,选株自交和杂交。选择群体A中双穗单株,一穗自交,另一穗与群体B 中双穗优株上的一穗成对杂交,以该优株另一穗自交,再以该株花粉给A群体中的对应株的另一穗授粉,配成百余个至数百个成对So×So杂交组合即全同胞家

系;

第一代,选株自交和杂交。选择群体A中双穗单株,一穗自交,另一穗与群体B 中双穗优株上的一穗成对杂交,以该优株另一穗自交,再以该株花粉给A群体中的对应株的另一穗授粉,配成百余个至数百个成对So×So杂交组合即全同胞家系;

第二代,杂交种比较。分别贮藏A、B两群体中的自交穗种子,而对成对杂交的全同胞杂交种进行综合鉴定;

第三代,组配单交种和合成改良群体,根据上代鉴定结果,选择10%的最优杂交种相对应的A、B两群体自交穗(贮藏的种子),一部分种子等量混合,分别种在隔离内繁育,或按n(n-1)/2公式配成单交种后等量混合,分别合成改良群体AC1与BC1,另一部分种子分别种成穗行,配成A×B单交种,通过对单交种的鉴定可选育出优良单交种。

相互全同胞选择(产生杂交种和改良群体的一种育种程序)

群体A 群体B

第一年选300株以上自交(S0)→A、B群体中自交株之间互交产生全同胞家系←选300株以上自交(S0)

↓↓↓

第二年室内妥善保存自交种子(S1) 全同胞家系比较试验室内妥善保存自交种子(S1)

↓↓↓

第三年互交区←—根据全同胞家系比较试验选出约10%优系S1,在隔离区进行互交→互交区

↓↓

第一轮改良群体A(C1)第一轮改良群体B(C1)

群体改良的效果

20世纪初就对作物群体的改良开始了探讨,在玉米方面,多年来进行了大量有益的探讨。由于种质资源日益贫乏,加之近缘植物难以利用,欲想打破玉米育种工作的“瓶颈”现象,应走群体改良的路子。

轮回选择与群体改良看后的感想

轮回选择的主要目的,在于进行一项长期的改良工作,以便为育种实践提供能选出优良自交系和杂交种的原始材料。假设每轮选择可以得到2-4%的遗传增益,经过若干轮选择,就能期望从改良群体中得较好的杂交种。

轮回选择在异花授粉植物中已得到广泛的应用,这主要归结于对于异花授粉植物很容易得到大量的测交种,但是在自花授粉植物上则很难应用,主要原因是:在进行轮回选择时,难以获得大量的测交种,并且在选择出优良的个体后,所没选出的个体之间很难做到随机交配,这不利于优良基因之间的重组。

为了充分利用轮回选择改良这一方法以自花授粉植物,为植物育种服务,育种工作者通过利用雄性不育性来解决配制大量杂交种以及当选个体之间的相互交配的问题,并成功地将其应用于大豆、小麦、向日葵、棉花、苜蓿、甜菜、大麦等植物的群体改良和育种工作,并取得了显著的成效。

开展轮回选择时必须考虑的几个问题

(一)要选择遗传变异丰富,配合力高的种质资源,这是保证轮回选择获得成功的首要条件。其次才是选择方法。

(二)在开始一个长期选择计划之前,首先要明确选择目的,因为长期方案要花很长时间。因此,在开始时要目标明确,计划周密,并能预见到所用原始材料在选出自交系方面的价值。

(三)、轮回选择要与系谱选择相结合

顺序结构选择结构和循环结构的程序设计典型例题分析与解答

顺序结构、选择结构和循环结构的程序设计典型例题分析与解答 1 在三种选择结构中,能用2个条件,控制从3个操作中选择一个操作执行的选择结构是______选择结构 【分析】能用1个条件,控制某个操作做或不做的选择结构是单分支结构;能用1个条件,控制从2个操作中选择一个操作执行的选择结构是双分支结构;能用n(n>l)个条件,控制从n+ l个操作中选择一个操作执行的选择结构是多分支结构。【答案】多分支 2 在三种循环结构中,先执行循环操作内容(即循环体),后判断控制循环条件的循环结构是______循环结构。 【分析】当型循环结构是先判断控制循环的条件,条件成立,执行循环体;条件不成立,则退出循环体。次数型循环结构也是先判断是否达到循环次数,没有达到循环次数,执行循环体;达到循环次数的,退出循环。只有直到型循环结构才是先执行循环体,然后再判断控制循环的条件,如果条件成立,进行循环;条件不成立,退出循环。 【答案】直到型 3 使用“getchar( )”函数时,程序的开头必须写一条包含命令为____________。 【分析】凡是使用系统函数的程序,都要在程序的开头写一条包含命令,包含命令中的“头函数.h”是一个文件,其中有关于该系统函数的定义。系统函数“getchar( )”是在名为“stdio.h(标准输入输出函数)”的头函数文件中定义的。【答案】#include"stdio.h"或#include<stdio.h> 4 执行输入语句“scanf("x=%c,y=%d",&x,&y);”,要使字符型变量X的值为'A'、整型变量y的值为12,则从键盘上正确的输入是( ) ①'A'/②A/③x=A/ ④x=A,y=12/ 12/ 12/ y=12/ 说明:备选答案中的"/"表示回车换行键 【分析】输入语句的格式控制符串中的“x=”、“,”、“y=”都是非格式控制符, 在输入时必须原样位置输人,所以只有备选答案④才符合这个要求。【答案】④ 5 设有下列程序段,则执行该程序段后的输出是( ) int i=012; float f=1.234E-2; printf("i=%-5df=%5.3f",i,f); ... ①i=__012f=1.234 ②i=10___f=0.012 ③10___O.012 ④___100.012 注:答案中的_代表一个空格。 【分析】输出语句的格式控制符串中的“i=”、“f=”都是非格式控制符,在输出时必须原样,原位置输出,所以只有备选答案①和②才符合这个要求;格式控制符“%-5d”的格式控制是数据左对齐、宽度为5的整型数据,备选答案①中的数据是右对齐的;此外,该答案中的实数“1.234E-2”应该代表“0.01234”,而不是“1.234”。只有备选答案②符合题意。【答案】② 6 在Turbo C的主屏幕中,将当前编辑的源程序以原名存盘,可以选用___________菜单项,也可以直热键________。 【分析】如果选用“File/Save”菜单项,或者使用热键(f12),当前编辑的源程序将以原来的文件名存盘;如果选用“File /Write to”,当前编辑的源程序将以新的文件名存盘。 【答案】File/Save F2 7 下列各种选择结构的问题中,最适合用if-else语句来解决的是( ) ①控制单个操作做或不做的问题 ②控制两个操作中选取一个操作执行的问题 ③控制三个操作中选取一个操作执行的问题 ④控制10个操作中选取一个操作执行的问题 【分析】if-else语句是专门解决“双分支结构”的,而“双分支结构”的问题就是用单个条件控制从两个操作中选取一个操作来执行的问题。 【答案】② 8 下列程序是输入一个小写字母,转换成对应大写字母的后一个字母输出。例如:'a'将转换成’B’、…、‘y’将转换成’Z’,其中的’Z’将转换成’A’。请填写程序中所缺少的语句。 main() {char ch ; scanf(”%c”,&ch〕; ch=ch- 32+1; ___________________; printf("%c\n",ch); } 【分析】分析程序库中的“ch=ch- 32+ 1;”语句,可知是将字符型变量 ch中的小写字母转换成对应的大写字母(- 32)的后一个字母(+ l)。如果ch中的字母是' a'、' b'、··,'y',转换结果都不会出错,但是,如果 ch中的字母是'Z',则-32后是大写字母'Z',再+l后将不是大写字母了。为了使其转换成'A',需要用一个单分支结构来实现:如果ch的值等于'Z'+ l,则硬性将 ch的值改成'A'。完成这个任务的语句是一条单分支语句,正是所缺少的语句。 【答案】 if (ch=='Z'+l) h='A'; 9不能正确计算下列分段函数的程序段是_________ |-1 x<0 y=|0 x=0 x>0 ① switch(x< 0)② if(x> 0) {case1:y=-1;break; y=1; case 0:switch(x==0)else {casel:y=0;break;if(x==0) case 0: y= l;y=0 } else } &ny=-l ③ y= l;④ y= l; if(x==0)if(x<0) y=0; y =-l; else else y=- l; if(x== 0) y=0; 【分析】先来分析备选答案①:表达式“x<0”的值只有两种可能性,成立值为1、不成立值为on如果“x<0”的值为 1(即 x< 0),则执行“easel:”后的语句“y=-l”后,退出 switch语句,符合分段函数要求。如果“x<0”的值为0(即x>=0),则执行“case 0:”后的switch语句。该switch语句的表达式是“x==0”,结果也有两种:成立为1、不成立为0.如果“x==0”的值为1(即x=0),则执行“case l:”后的语句“y=0”后,退出 switch语句,符合分段函数要求。如果“x==0”的值为0(即x>0),则执行“case 0:”后的语句“y=1”,也符合分段函数要求。再分析备选答案②:这是标准的用嵌套双分支结构来实现三分支的分段函数,结果显然是能求解分段函数的。分析备选答案③:双分支语句的条件是“x==0”,条件成立时,y值为0,符合分段函数的要求,条件不成立时(包含x>0和x<0两种情况),结果y值为-l,显然不符合分段函数的要求,所以本题要选该答案。至于备选答案④,是能正确计算分段函数的,首先置y为1;接着用双分支结构处理“x<0”和“x>=0”的两种情况:前者使得y值为一l;后者再执行一个单分支结构,如果“x==0”则使y值为0,否则不改变y值,保持y的原值1,符合分段函数的要求。 【答案】③ 10 三种循环语句都能解决循环次数已经确定的次数型循环,其中__________循环语句最适合。 【分析】当“for(表达式 1;表达式 2;表达式 3)语句;”中的表达式1为:整型变量 k=l;表达式 2为:整型变量 k<= n;表达式 3为:整型变量 k++;则这个 for循环就是次数为n次的标准次数型循环结构。 【答案】for 11执行下列程序段后的输出是() x=l; while(x<=3) x++,y=x+++x; printf("%d,%d",x,y); ① 6,10 ②5,8 ③4,6 ④3,4 【分析】我们可以使用逐步记录运行结果的方法来获得输出结果,记录如下: x=1; 进入循环,条件满足执行循环体:计算x+十得x为2,计算y=x+++x,得y为4、x为3; 继续循环,条件满足执行循环体:计算x+十得x为4,计算y=x+++x,得y为8、x为5; 继续循环,条件不满足退出循环; 输出x和y的值为5,8。 【答案】② 12 执行下列程序段,其中的do-while循环一共执行_次。 static int x; do x+=x*x; while (x); 【分析】对静态型变量,不赋初值也有值,对整型变量,其值为 0。执行循环语句 do-while 的循环体,x+=x* x是x=x+(x*

作物育种学模拟题及答案

《作物育种学》模拟题(五) )20分小题,每小题2分,共一、名词解释(共101.品种 2.种质资源 3.诱变育种 4.特殊配合力 5.杂交育种 6.杂种优势 7.生理小种 8.白交系品种 9.二环系 10.垂直抗性 二、单项选择题(本大题共10小题,每小题1分,共10分) 1、纬度相近地区之间的引种 ( ) A)较易成功 B)较难成功 C)不可能成功 D)肯定成功 2、小麦杂交育种配制三交种时,作为第二次杂交的亲本是( ) A)任何一个亲本 B)综合性状最好的亲本 C)具有特殊优良性状的个体 D)表现一般的亲本 3、在[(AXB)XC]XD的杂交方式中,C的遗传成分在其中占 ( ) A)1/2 B)1/4 C)1/8 D)1/16 4、与91—1—2—5—4—3亲缘关系最近的系统是 ( ) A) 91—2—3—5—4—3 B) 91—1—2—5—3—3 C) 91—1—3—5—4—3 D) 91—1—2—5—4—5 5、测交所用的共同亲本称为 ( ) A)测验种 B)测交种 C)杂交种 D)单交种 6、在防变育种中,经过诱变处理的种子或营养器官所长成的植株或直接处理的植株称为 ( ) (A)诱变一代(M1) (B) 诱变二代(M2 (C) 诱变三代(M3 ) (D) 诱变四代(M4) 、组合育种利用的遗传学原理是7. A)基因重组与基因积累(B)基因积累与基因互作 C)基因重组与基因互作(D) 基因积累与基因连锁 8、染色体组成为AAAABB的生物体 A)同源六倍休 B)异源六倍休 C)同源异源六倍体 D)节段异源六倍体 9、隐性核不育一般无法通过测交找到 A)不育系 B)保持系 C)恢复系 D)广亲和系 10、现代生物技术比传统育种技术的优越性主要在于能更好地( )

分支与循环程序设计实验报告汇总

分支与循环程序设计实 验报告汇总 Company number:【0089WT-8898YT-W8CCB-BUUT-202108】

实验名称分支与循环程序设计实验 指导教师罗志祥 专业班级光电1406 姓名段昳晖学号 U2014***** 联系电话 137******** 一、任务要求 1. 设有8bits符号数X存于外部RAM单元,按以下方式计算后的结果Y也存于外部RAM单元,请按要求编写完整程序。 2. 利用51系列单片机设计一个24小时制电子时钟,电子时钟的时、分、秒数值分别通过P0、P1、P2端口输出(以压缩BCD码的形式)。为低电平时开始计时,为高电平时停止计时。设计1s延时子程序(延时误差小于10us,晶振频率12MHz)。 二、设计思路 1. 设有8bits符号数X存于外部RAM单元,按以下方式计算后的结果Y也存于外部RAM单元,请按要求编写完整程序。 将外部单元1000H中的X,通过分支判断,分别执行不同的语句,三条语句分别为标记为L1、L2、L3,先比较X与64的大小关系,再判断X与10的大小关系,主要利用比较转移指令CJNE,以及执行CJNE指令后的进位位CY,进一步比较大小,分别跳转至对应语句。将结果存于外部单元的1001H以及1002H。 2.利用51系列单片机设计一个24小时制电子时钟,电子时钟的时、分、秒数值分别通过P0、P1、P2端口输出(以压缩BCD码的形式)。为低电平时开始计时,为高电平时停止计时。设计1s延时子程序(延时误差小于10us,晶振频率12MHz)。

主程序设计三层循环,分别对应时、分、秒,最内层安放一秒延时程序。利用R0、R1、R2计数,R3保存分钟数、R4保存小时数,最内层循环60次,中循环循环1次,中循环60秒,外循环循环1次,外循环循环24次,清零。其中对端口显示的秒数、分钟数、时间数,进行二进制修正。 利用循环来设计延时程序,合理计算语句长度,以及循环次数。 程序运行时修正的值,可以实现暂停计数和继续的功能。 提高部分(选做): 1)实现4位十进制加、减1计数,千位、百位由P1口输出;十位、个位由P2口输出。利用状态选择加、减计数方式。 2)利用P3口低四位状态控制开始和停止计数,控制方式自定。 初始化P1、P2,,计数循环中插入一秒延时程序。R1存千百位、R2存个十位,=0时,进行加1计数,取出R2中的数存于A,对A 加1,同时进行十进制修正,存于P2,达到99,则进位对千百位进行加1。=1时,进行减一操作,取出R1中的数存于A,对A减1,同时进行十进制修正,存于P1,达到0,则对P2,对R2进行减一。 计数循环前判断的值,当=1时,开始计数,=0时,原地循环,停止计数,直到 =1,可以实现随时停止与开始。 三、资源分配 1. 设有8bits符号数X存于外部RAM单元,按以下方式计算后的结果Y也存于外部RAM单元,请按要求编写完整程序。 X存于片外1000H Y存于片外1001H、1002H 其中,求平方时,低位存于1001H,,高位存于1002H 除二时,商存于1001H,,余数存于1002H

C语言练习2(选择和循环结构)

C语言(分支和循环结构) 一、选择题 1.以下程序输出结果是( ) main() { int m=5; if(m++>5) printf("%d\n",m); else printf("%d\n",m--);} A)7 B)6 C)5 D)4 2以下程序的输出结果为( ) # include main ( ) { int i=0, j=0, a=6; if ((++i>0)&&(++j>0)) a++; printf ("i=%d, j=%d, a=%d\n", i,j,a);} A) i=0, j=0, a=6 B) i=1, j=1, a=7 C) i=1, j=0, a=7 D) i=0, j=1, a=7 3有如下程序 main() { int a=2,b=-1,c=2; if(a

4若i为int型,且有程序如下,则输出结果是( ) i=111; if(i%3==0) printf("####"); printf("****"); A) #### B) **** C) ####**** D) 无输出结果 5若运行时x=12,则运行结果为( ) {int x, y; scanf("%d", &x); y=x>12 ? x+10:x-12; printf("%d\n", y);} A) 0 B) 22 C) 12 D) 10 6以下程序的输出结果是( ) main() { int i=0, j=0, k=6; if ((++i>0)||(++j>0)) k++; printf("%d, %d, %d\n", i, j, k); } A) 0, 0, 6 B) 1, 0, 7 C) 1, 1, 7 D) 0, 1, 7 7若变量都已正确说明,则以下程序段输出为( ) int a=1,b=2,c=3; if(a>b) a=b; b=c; c=a; printf("a=%d b=%d c=%d\n",a,b,c);

作物育种学模拟题及答案(一)

作物育种学模拟题(一) 一、解释(共7小题,每小题3分,共21分) 1.品种更换:就是用新选育出的优良品种,替换生产上表现不良的另一品种。 2 .引种:所谓引种就是从外地或外国引入优良品种或有价值的品种资源,经过试验成功后直接应用于生产,或作为选育新品种的原始材料。 3.诱变育种:是指用物理或化学因素诱发染色体畸变、基因突变、细胞质突变等改良品种。 4.一般配合力:指一个被测自交系和其他自交系组配的一系列杂交组合的产量 ( 或其他数量性状 ) 的平均表现 5.自交不亲和性:同一植株上机能正常的雌、雄两性器官和配子 , 不能进行正常交配的特性 , 称为自交不亲和性。。 6.倍体育种:用杂种F1或F2花药培育出单倍培体植株,再经染色体加倍而选育作物新品种的方法 7水平抗病性:寄主品种对各小种的抗病性反应性大体上接近同一水平 二、填空每空0.5分) 1、作物育种学是研究选育及繁殖作物优良品种的理论与方法的科学。 2、现代化农业对育种目标总的要求是:高产、稳产早熟优质;适应机械化作业。 3、性状鉴定的方法有:直接鉴定间接鉴定;按鉴定条件可分为自然鉴定诱发鉴定。 4、选择的基本方法有单株选择混合选择。 5、杂交育种的程序是:原始材料圃亲本圃杂种圃株系选择圃(选种圃)鉴定圃和品比试验圃区域试验和生产试验。 6、作物的繁殖方式分为有性繁殖无性繁殖两种。有性繁殖作物根据其花器构造和授粉方式的不同又可分为自花受粉作物异花受粉作物常异花受粉作物。 7、利用杂种优势的途径有:人工去雄化学杀雄自交不亲和性利用标志性状利用雄性不育性的利用。 8、单倍体育种的优点是:加速育种材料的纯合提高选择效果缩短青种年限。 9、“四化一共”的内容是:品种布局区域化,种子生产专业化,加工机械化,质量标准化,以县为单位有计划地供应良种”。 10、作物的逆境包括温度胁迫水分胁迫矿物质胁迫。 三、选择(单选或多选,每小题2分) 1、单倍体育种时宜选择 C 进行离体培养。 A.母本花药 B. 父本花药 C.杂种F1或F2花药 D.都可以 2、远缘杂交的困难是 A B C。 A.杂交不孕 B.杂种不育 C.疯狂分离 D.都不是 3、玉米南种北引表现 B 。 A.早熟 B.晚熟 C.生育期无变化 4、在下列杂交方式中属于三交的是②。 ①. A/B ②. A/B//C ③. A/B//C/B ④.A/B//C/D 5、现有甲(早熟、)、乙(抗病)、丙(丰产、感病、晚熟)三个亲本品种,进行杂交育种时,合理的双交方式是C。 A.(甲×乙)×(甲×丙) B. (甲×乙)×(乙×丙) C. (甲×丙)×(乙×丙) 四、判断(正确请在括号内打“√”,错打“×”每小题1分) 1、用自由授粉品种和自交系组配的杂交种称顶交种。() 2、化学杀雄的原理是由于雌蕊比雄蕊有较强的抗药性。() 3、测定自交系配合力所进行的杂交称为测交,测交所得后代称为测验种。() 4、从自交系间杂交种中选育的自交系称为二环系。() 5、回交育种时用作重复杂交的亲本品种叫轮回亲本。() 6、把来自F3同一株系的F4代株系称之为系群。()

【测试】分支循环测试作业(VB第五章测试题)

我的试卷 测试得分: 88.0 分 1. 单选题:(4.0分) 有如下程序: Private Sub Command1_Click() x = InputBox("input value") Select Case x Case Is > 0 y = x + 1 Case Is = 0 y = x + 2 Case Else y = x + 3 End Select Print x; y End Sub 假设运行时从键盘上输入-5,输出结果是_______。 A. -5 -2 B. -5 -4 C. -5 -3 D. -5 -5 解答:A 参考答案: A 2. 单选题:(4.0分) 下列程序段的执行结果是_______。 X = 2 Y = 1 If X * Y < 1 Then Y = Y - 1 Else Y = -1 Print Y - X > 0 A. True

B. False C. -1 D. 1 解答:B 参考答案: B 3. 单选题:(2.0分) 关于语句If x=1 Then y=1,下列说法正确的是_______。 A. x=1和y=1均为赋值语句 B. x=1和y=1均为关系表达式 C. x=1为关系表达式,y=1为赋值语句 D. x=1为赋值语句,y=1为关系表达式 解答:C 参考答案: C 4. 单选题:(2.0分) Select Case 语句结构中,测试项可以有三种形式,以下使用正确的是_______。 A. Case 20>Is B. Case x<=8 ,10 to 25 C. Case Is>9 And Is<25 D. Case Is>x 解答:D 参考答案: D 5. 单选题:(4.0分)

第十四章 群体改良与轮回选择

第十四章群体改良与轮回选择 作物群体改良是20世纪60年代以后由美国玉米遗传育种学家针对玉米生产对新品种提出的新要求、玉米育种存在的瓶颈因素,发展完善的一种新的育种体系。它通过鉴定选择、人工控制下的自由交配等一系列育种手段,改变基因、基因型频率,增加优良基因的重组,从而达到提高有利基因和基因型的频率。 群体改良是创造优良种质的重要方法。它不仅①可以改良群体自身的性状,而且能②改变群体间的配合力和杂种优势,③并能将不同种质的有利基因集中于一些个体内,提高有利基因和基因型频率;同时,还可以④改良外来种质的适应性,使之适应当地的环境条件,成为新的种质资源。 第一节群体改良的意义 作物育种的效率取决于育种的资源和方法,群体改良能创造新的种质资源和选育供生产直接使用的优良综合种。因此,群体改良对提高作物育种水平具有重要的意义。 一、创造新的种质资源 克服育种基础群体的遗传单一性和狭窄性,提高基础群体的异质性,解决种质资源贫乏。 作物群体改良的重要意义就在于1.将不同种质的优点结合起来,合成或创造出新的种质群体,扩大群体的遗传多样性,丰富基因库,为作物育种提供更为优良的种质资源。 2.群体改良还可以不断提高基础群体的优良基因频率,有助于打破不利基因与有利基因的连锁,从而提高优良基因型的频率。 美国依阿华州立大学合成并改良了一个世界著名的玉米坚秆综合种(BSSS),从中选育了在美国玉米生产上广泛应用的自交系B73。以后随着改良的进展,又选育了新的优良自交系B79、1384、1385等。 二、选育优良的综合品种 通过群体的合成和改良,可以选育优良的综合品种,直接应用于生产。 三、改良外来种质的适应性 外来种质指的是从外国或本国其他地区引进的种质材料。外来种质一般不适应本地的生态、生产条件,但它们往往具有地方种质不具有的或特异的优良特性与基因。因此,如能通过改良使之适应本地的环境条件,就有可能成为新的种质来源。 第二节群体改良的原理 在阐述群体改良的基本原理前,首先应了解群体的概念和群体基因、基因型频率变化的基本规律。Dobzhansky(1955)指出,遗传学上的群体指的是该群体内个体间随机交配形成的遗传平衡群体。 根据群体遗传学的理论,一个容量足够大的随机交配群体,其基因、基因型频率的变化遵从Hardy--Weinberg定律。 一、Hardy-Weinberg定律(基因平衡定律)

分支与循环程序设计

实验名称分支及循环程序设计成绩 指导教师****** 专业班级****** 姓名白*** 学号******* 联系电话******** 一、任务要求 1.熟练掌握Keil环境下汇编语言程序的调试方法,加深对汇编 语言指令、机器码、寻址方式等基本内容的理解,掌握分支程 序和简单程序的设计及调试方法,了解并行IO口的使用。 2.设有8bits符号数X存于外部RAM单元,按以下方式计算后 的结果Y也存于外部RAM单元,请按要求编写完整程序。 3.利用51系列单片机设计一个24小时制电子时钟,电子时钟 的时、分、秒数值分别通过P0、P1、P2端口输出(以压缩 BCD码的形式)。P3.0为低电平时开始计时,为高电平时停

止计时。设计1s延时子程序(延时误差小于10us,晶振频 率12MHz)。 4.1)实现4位十进制加、减1计数,千位、百位由P1口输出; 十位、个位由P2口输出。利用P3.7状态选择加、减计数方 式。 2)利用P3口低四位状态控制开始和停止计数,控制方式自 定。 二、设计思路 1.先在外部RAM取数,然后判断该符号数是否为负数,若为负 数,则取相反数并存数;若为正数,则接着判断该数是否大于 等于64,若满足,则求平方并存数,先存低位,后存高位; 若小于64,则接着判断该数是否大于10,若满足,则求该数 的一半并存数;若小于等于10,则取相反数并存数。 2.第一步先编可以延时1S的子程序DELAY;接着判断P 3.O 是否满足开始计数条件,若不满足,则重复判断;若满足,则 对时分秒分别赋值,调用延时子程序,判断是否满足计时条件,若不满足,则重复判断直至满足;若满足,则秒钟自加一,循 环,判断秒钟循环满60次后出循环,对分钟自加一,然后继 续循环,最后判断分钟循环满60次后出循环,对时钟自加一,然后判断时钟循环满24则回到初值,时分秒重新赋值并重新 开始循环。

顺序结构、选择结构和循环结构的程序设计

顺序结构、选择结构和循环结构的程序设计 请写出switch语句的一般格式及注意事项。 一般格式: Switch(表达式) {case常量表达式1:语句组1;break; Case常量表达式2:语句组2;break; …… Case常量表达式n:语句组n;break; Default:语句组n+1;}1switch中表达式可以是任意类型,常用的是字符或整型。2每个常量表达式的值不能相同。3语句组可以为任意语句。4break可以省略,然后执行完本组语句后紧接着执行其后的i+1组语句。5多个case可以用一组执行语句。6break的作用是跳出switch,执行switch下面的语句。 试说明while语句和do-while语句的异同:二者相同点在于都可以进行次数确定的循环体的次数。不同点在于do-while现执行循环中的语句,然后再判断条件是否为真,若为真则继续循环;若为假则终止循环。因此,do-while循环至少要执行一次循环语句。而while则是先判断条件后执行循环体简述for语句的执行过程及注意事项: 计算机表达式1 表达式2非0? 执行语句s 计算机表达式3 循环结束,执行下面的语句 注意事项:for语句中的3个表达式可以省略但后面的分号不能省略。 试说明continue语句和break语句的作用及区别:break的功能是跳出本层循环(对多层循环而言),接着执行下面的语句。continue语句的作用是执行continue时,循环体中continue下面的语句都不执行,重新进行循环判断以决定是否继续进行下次循环。Break和continue的区别在于:continue C 有一段程序为:while(表达式) 语句1;语句2; …… do-while语句中while 在C C C C C C语言中,语句x=!a==b 3个关于C语言的结论:可以用while语句实现的循环一定可以用for语句实现;可以用for语句实现的循环一定可以用while语句实现;可以用do-while C语言程序中,continue C语言中,if和switch C语言中,语句while C语言中,关于scanf C语言中,与语句while(!E C语言程序中,for循环语句中的表达式2为一非零常数且循环体内无break语句及goto 设i是int scanf(“i=%d,f=%f”,&i,&f);为了把100和765.12分别赋给i和 f

第2章 顺序结构、选择结构和循环结构的程序设计 习题答案

第二章顺序结构、选择结构和循环结构的程序设计 一、简答 1. 参考书上23页 2. while先判断,后执行,do while先执行,后判断,循环体至少执行一次 3. 参考书上29页 4. continue,结束本次循环 break,结束循环 区别在于,continue只结束本次循环重新进行下次循环,而break结束整个循环 二、填空题 1. 顺序结构,选择结构,循环结构 2. if else 和switch 3. 语句1 ,语句2 4. 零 5. break ,continue 6. 7 ,0 7. ? : ,双目 三、单选 1-5 ABDCC 6-10 DBACA 11-15 CBCDA 16-20 ACBAD 21-25 ADCBB 26-29 BCCA 四、程序分析题 1. end 1end 2. num%10 max = t 3. j%3 4. 99 五、编程题 1. #include int main(){ char str[100] ; gets(str) ; int n1 , n2 , n3 , n4 , i ; n1 = n2 = n3 = n4 = 0 ; for(i = 0 ; str[i] != '\0' ; ++i) { if(str[i] >= 'A' && str[i] <= 'Z') ++n1 ; else if(str[i] >= 'a' && str[i] <= 'z') ++n2 ; else if(str[i] >= '0' && str[i] <= '9') ++n3 ; else

} printf("大写字母:%d\n" , n1) ; printf("小写字母:%d\n" , n2) ; printf("数字字符:%d\n" , n3 ) ; printf("其他字符:%d\n" , n4) ; return 0; } 2. #include #include int main(){ int array[4] , min , max , i ; for(i = 0 ; i < 4 ; ++i) scanf("%d" , &array[i]) ; min = max = array[0] ; for(i = 1 ; i < 4 ; ++i) { if(array[i] < min) min = array[i] ; else if(array[i] > max) max = array[i] ; } printf("min = %d , max = %d\n" , min , max) ; return 0; } 3. #include int main(){ float money , lixi ; int year ; scanf("%f %d" , &money , &year) ; switch(year) { case 1 : lixi = money * 0.63 / 100 ;

C语言习题:顺序、选择、循环

顺序结构程序设计 2.3.1 要点导读 () 与scanf()语句。 printf() 与scanf()语句是最通用的输入输出函数,它们可以在程序设计者的控制下以各种格式分别实现数据的输出和输入操作。它们位于库文件中。 2.字符数据的输入输出。 最简单的字符输入输出函数是getchar()和putchar()。两者分别从键盘读一个字符或向显示屏写一个字符。 2.3.2 经典例题分析 1.下列程序运行后输出的结果是。 #include <> void main() 、 { int a=0,b=0; a=10; b=20; printf(“a+b=%d”,a+b); } 分析:printf( )是输出函数,它的括号内由两部分组成: 1)控制字符串,是用双引号括起来的字符串,它包括两种信息: (1) 格式说明。由”%”和格式字符组成,如:%d、%f、%c等。它的作用是将输出 的数据转换成指定的格式输出。 (2) 普通字符。需要原样输出的字符。 - 2)”输出表列”是需要输出的一些数据,可以是表达式。 题目中a的值是10,b的值是20,在 printf(“a+b=%d”,a+b); 格式说明输出表列 中,”a+b= “是普通字符,需原样输出。输出表列是一个表达式,它的结果以整型输出。 答案:a+b=30。 2.下列程序运行后输出的结果是。

#include <> void main() { int a=732; ) printf(“%d\n”,a); printf(“%2d\n”,a); printf(“%10d\n”,a); printf(“%-10d\n”,a); } 分析:d格式符,用来输出十进制整数。其中%d,按整型数据的实际长度输出。%md,m为指定的输出字段的宽度。如果数据的位数小于m,则左端补以空格,若大于m,则按实际位数输出。 printf(“%d\n”,a);把a的值按原样输出:732。printf(“%2d\n”,a);结果占2列,但732占3列大于2列,所以按实际位数输出:732。printf(%10d\n”,a);结果占10列,但732占3列小于10列,所以左端补7个空格。printf(“%-10d\n”,a); 结果占10列,“-”表示把数值放到左端,732占3列小于10列,所以右端补7个空格。 答案:732 732 □□□□□□□732 /*□表示空格*/ , 732□□□□□□□ 3.已知char a=‘\103’;则语句printf(“%3d”,a);执行后的输出结果为(□表示空格)。 A)□67B)’c’C)67□D)103 分析:’\103’是一个转义字符,表示一个八进制数所代表的字符,转换为十进制为67。printf(“%3d”,a);把’\103’转换为十进制数输出,结果占3列。但67占2列,小于要求的3列,所以左补空格,即□67。 答案:C。 4.下列程序运行后结果是。 #include <> #define a void main() { printf(“%f\n”,a); @ printf(“%e\n”,a); printf(“%4.2f\n”,a); printf(“%3.1f\n”,a); printf(“%10.3f\n”,a); printf(“%-10.3f\n”,a); } 分析:f格式符,用来输出实数,以小数形式输出,小数点后输出6位。所以printf(“%f\n”,a);输出结果为。 %是指,要输出的数占m列,同时小数点保留n位(四舍五入),如果输出的数大于m,

顺序、选择、循环三种基本结构程序设计.

昆明理工大学信息工程与自动化学院学生实验报告 (2012 —2013 学年第一学期) 课程名称:结构化程序设计与C语言开课实验室:系机房444 2012 年10月21日 一、实验的目的 1、学习在VC++环境下编辑调试C语言程序的方法。 2、掌握在C语言中的各种数据类型,以及如何定义整型、实型、字符型的变量,并进 行赋值的方法。 3、掌握顺序程序的思路,特别是赋值语句的使用方法。 4、掌握各种类型数据的输入输出方法的正确应用,熟悉各种格式控制符的作用。 5、学会在选择结构中正确应用关系表达式及逻辑表达式。 6、熟练掌握if语句和switch语句的使用。 7、学会选择结构问题算法的编制与调试应用。 8、熟练掌握while语句、do-while语句和for语句实现循环的方法。 9、学会循环问题的编制与调试、运行。 二、实验内容与要求 本实验涵盖顺序、选择、循环三部分程序设计的应用,要求每部分完成两个问题的源代码的编辑、编译、连接与运行,最终产生相关的运行结果,按规定要求提交相应的实验报告。具体要求完成的问题如下:(注意:在模板中给出了题的页数与题号,请写正式报告时将书上的题目内容代替页数与题号) (1)P82/2 (2)P84/6 (3)P112/6 (4)P113/9 (5)P140/5 (6)P141/16 三、算法设计思想或程序流程图 (1)设:五年期,三年期,二年期,一年期,活期存款分别为:r5,r2,r3,r0; 第一种,第二种,第三种,第四种,第五种五年期存款的本息和分别为

p1,p2,p3,p4,p5。 则有: p1=p*((1+r5)*5); 一次存5年期 p2=p*(1+2*r2)*(1+3*r3); 先存2年期,到期后将本息再存3年期 p3=p*(1+3*r3)*(1+2*r2); 先存3年期,到期后将本息再存2年期 p4=p*pow(1+r1,5); 存1年期,到期后将本息存再存1年期,连续存5次 p5=p*pow(1+r0/4,4*5); 存活期存款。活期利息每一季度结算一次 再将所得数据一一输出即可。 (2) 先分别把c1,c2,c3,c4,c5分别赋初值为c,h,I,n,a. 想要让它们的字母分别增加四位。只需将它们的ASCII码增加4个数就可以。便有 c1=c1+4; c2=c2+4 c3=c3+4; c4=c4+4; c5=c5+4;再将所得值以字符型输出便可 (3)输入x,用if语句判断X的值的范围。X<1将x的值赋给y并输出。 除此情况之外(x>1)再进行分类。若x<10则y=2*x-1。除此情况之外,y=3*x-11. (4)先判断它的位数。如果这个数大于9999则输出5;排除这种情况,大于999则输出4…以此类推。 分别输出每一位数字:几位数字便除以此位数的最小值。如9999便除以1000,由于都是整型,便得到9。依次除下去。得到的各位整数在赋给各个变量,反序输出。 (5)用tn=tn+a语句代表赋值后的tn为i个 a组成数的值 用 sn=sn+tn语句代表赋值后的sn为多项式前i项之和 用while语句实现在I #include int main() {float r5,r3,r2,r1,r0,p,p1,p2,p3,p4,p5; p=1000; r5=0.0585; r3=0.054; r2=0.0468; r1=0.0414; r0=0.0072; p1=p*((1+r5)*5); p2=p*(1+2*r2)*(1+3*r3); p3=p*(1+3*r3)*(1+2*r2); p4=p*pow(1+r1,5); p5=p*pow(1+r0/4,4*5); printf("p1=%f\n",p1); printf("p2=%f\n",p2); printf("p3=%f\n",p3); printf("p4=%f\n",p4);

育种试题

《作物育种学》课程考试样卷1 一、名词解释(每小题2 分,共 10 分) DUS,选择育种,聚合杂交,杂种优势,体细胞杂交 二填空题(每空1分共15分) 1.现代农业对作物品种性状的要求主要有高产、? 、? 、适应性强; 2.根据作物品种的繁殖方式、商品种子生产方法、遗传基础、育种特点和利用形式等可将作物品种区分为下列类型? 、? 、群体品种和? ; 3.种质资源工作的内容包括收集、保存、? 、? 、? ; 4.轮回选择的方法包括群体间改良和? ; 5.配合力是自交系的一种内在属性,受多种基因效应支配,农艺性状好的自交系不一定就是配合力高,只有配合力高的自交系才能产生强优势的杂交种。试用格子方试验计算SCA和GCA填表(表格在最后)。 三、选择题 (每小题 1 分,共 11分) 1.杂合基因型的作物,自交后代的生活力();?衰退?增强?不变?难以确定 2.由胚珠或子房壁的二倍体细胞经过有丝分裂而形成胚,和由正常胚囊中的极核发育成的胚乳而形成种子,这种生殖方式称为()。 ?无孢子生殖?二倍体孢子生殖?不定胚生殖?单性生殖 3. 纬度相近的东西地区之间引种比经度相同的南北之间引种成功的可能性()一些。?大?小?不好确定 4.纯系学说认为,在自花授粉作物原始品种群体中选择() ?有效?无效?有的人选择有效,有的人选择无效?难以确定 5.从理论上讲,杂交育种工作中,所用亲本越多越() ?好?不好?易行(成本越低)?难以育出好品种 6.杂种优势的遗传基础是() ?显性假说?显性假说和超显性假说?超显性假说?纯系学说 7.作物诱变育种中,主要处理植物的() ?植株或植株的局部?花粉?种子?都可以

C语言习题顺序选择循环

2.3顺序结构程序设计 231要点导读 1. printf()与scanf()语句。 printf()与scanf()语句是最通用的输入输出函数,它们可以在程序设计者的控制下以各种格式分别实现数据的输出和输入操作。它们位于stdio.h库文件中。 2?字符数据的输入输出。 最简单的字符输入输出函数是getchar()和putchar()。两者分别从键盘读一个字符或向显 示屏写一个字符。 2.3.2经典例题分析 1?下列程序运行后输出的结果是 _____________ 。 #in clude void mai n() { int a=0,b=0; a=10; b=20; printf( “+b=%d ”,a+b); } 分析:printf()是输出函数,它的括号内由两部分组成: 1) 控制字符串,是用双引号括起来的字符串,它包括两种信息: (1) 格式说明。由”%”和格式字符组成,如:%d、%f、%c等。它的作用是将输出 的数据转换成指定的格式输出。 (2) 普通字符。需要原样输出的字符。 2) ”输出表列”是需要输出的一些数据,可以是表达式。 题目中a的值是10,b的值是20,在 printf( a+b=%d”,a+b); I I 格式说明输岀表列 中,”a+b=是普通字符,需原样输出。输出表列是一个表达式,它的结果以整型输出。 答案:a+b=30。 2. ___________________________________ 下列程序运行后输出的结果是。 #in clude

void mai n() int a=732; printf( %d\n”,a); printf( %2d\n ”,a); printf( %10d\n ”,a); printf( %-10d\n ”,a); } 分析:d格式符,用来输出十进制整数。其中%d ,按整型数据的实际长度输出。%md, m为指定的输出字段的宽度。如果数据的位数小于m,则左端补以空格,若大于m,则按 实际位数输出。 printf( %d\n”,a);把a 的值按原样输出:732。printf( %2d\n”,a);结果占2 列,但732 占3 列大于2列,所以按实际位数输出:732。printf(%10d\n ”,a);结果占10列,但732占3列小 于10列,所以左端补7个空格。printf( %-10d\n”,a);结果占10列,表示把数值放到左端,732占3 列小于10列,所以右端补7个空格。 答案:732 732 □ □□□□□□732* E表示空格*/ 732 □□□□□□□ 3?已知char a=\103则语句printf( “ %3d执行后的输出结果为( □表示空格) _______________ 。 A) □ 67 B)'C)67 □D)103 分析:'03是一个转义字符,表示一个八进制数所代表的字符,转换为十进制为67。printf( %3d”,a);把'03转换为十进制数输出,结果占3列。但67占2列,小于要求的3 列, 所以左补空格,即口67 答案:C。 4?下列程序运行后结果是 ____________。 #in elude #define a 3345.67 void mai n() { printf( %f\n ”,a); printf( %e\n",a); printf( %4.2f\n ”,a); printf( %3.1f\n ”,a); printf( %10.3f\n ”,a); printf( %-10.3f\n ”,a); } 分析:f格式符,用来输出实数,以小数形式输出,小数点后输出6位。所以printf( %f\n ”,a); 输出结果为3345.670000。 %m.nf是指,要输出的数占m列,同时小数点保留n位(四舍五入),如果输出的数大于m,则原样输出,同时小数点保留n位(四舍五入)。如果小于m,则左补空格,同时小 数点保留n位(四舍五入)。printf( %4.2f\n ”,a);输出结果为3345.67。 printf( %3.1f\n ”,a);输出结果为3345.7。

相关主题
文本预览
相关文档 最新文档