分站导航

热点关注

当前位置:

首页 > 专业大全

2012年自考“高级语言程序设计”经典习题及答案(8)

来源:本站整理 时间:2020-02-13 15:55:27

3.2 填充题

1.结构化程序设计规定的三种基本结构是________结构,选择结构和_______结构。

解 结构化程序设计的三种基本控制结构是顺序结构、选择结构和循环结构。

2.若有定义 int a=25,b=14, c=19; ,以下语句的执行结果是______.

if a++ =25 b =2 c++)

prinif( ***a=%d,b=%d,c=%d\n , a,b,c);

else printf( ###a=%d,b=%d,c=%d\n , a, b,c);

解 问题所给的if语句中,条件a++ =25 b =2 c++是先求逻辑与的第一个运算分量,它是一个关系式,关系成立。接着判定第二个逻辑与运算分量,又是一个关系式,由于变量b的值是14,b不小于等于2,运算分量的关系式不成立,导致if语句的条件为假,执行else部分。在求且语句的条件时,计算了2个逻辑与分量,使变量a的值增了1,变量 b的值被减了1.所以输出内容是:###a=26,b=13,c=19.

3.以下两条if语句可合并成一条if语句为_____________.

if(a =b) x=1;

else y=2;

if(a b)printf( ****y=%d\n ,y);

else printf( ####x=%d\n ,x);

解 在以上两条if语句中,两个条件刚巧相反。若将前一个if语句的第一个成分语句与第二个if语句的第二个成分语句合并;第一个if语句的第二个成分语句与第二个if语句的第一个成分语句合并,写成一条if语句如下:

if(a =b){x=1;printf( ####x=%d\d,x);}

else{ y=2; printf( ****y=%d\n ,y);}

4.设 i,j,k均为 int型变量,则执行完下面的for语句后,k的值为_______.

for(i=0,j=10;i =j;i++,j )k=i+j;

解 该 for语句以i为0、j为10初始化,循环条件是 i =j,每次循环后 i增 1、j减 1,循环体是将 i与j的和赋给 k.这样变量 k将保存的是最后一次赋给它的值。一次循环后 i为 l.j为 9,二次循环后 i为 2.j为 8, ,五次循环后 i为 5.j为 5,继续第六次循环,将 i与 j的和10存于 k后,i为 6、j为 4,结束循环。所以循环执行后 k为10.

5.下列程序的功能是输入一个整数,判断是不是素数,若为素数输出1,否则输出0,请为程序填空。

main()

{int i,X,y=1;

scanf( %d , x);

for(i=2;i =x/2;i++)

if________________ { y=0; break; }

printf( %d\n ,y);

}

解 为判数x是否是素数,预置变量y的值为1(x可能是素数),然后用循环,用2至x/2的整数i测试对X的整除性,若能被其中的某个整数整除,则X是合数,置y的值为0(不是素数),结束测试循环。若都不能整除,则X为素数。i能否整除X,可用求余运算X%i等于0来判定。所以程序中的空框可填 X% i==0.测试 X为素数的代码可写成:

y=l;

for( i=2; i =x/2; i++)

if(x%i==0){ y=0; bleak; }

分享:

qq好友分享 QQ空间分享 新浪微博分享 微信分享 更多分享方式

上一篇:<上一篇

下一篇:

(c)2024 www.diying.com All Rights Reserved SiteMap 联系我们 | 豫ICP备2022007582号