自考“高级语言程序设计”习题答案详解(9)_工学-查字典自考网
 
请输入您要查询的关键词
  查字典自考网 >> 工学 >> 自考“高级语言程序设计”习题答案详解(9)

自考“高级语言程序设计”习题答案详解(9)

发布时间: 2016-06-29 来源:查字典自考网

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=%dn” ,y);

else printf( “####x=%dn” ,x);

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

if(a<=b){x=1;printf(“####x=%dd,x);}

else{ y=2; printf(“****y=%dn”,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; }

点击显示
推荐文章
猜你喜欢
附近的人在看
推荐阅读
拓展阅读

当前热点关注

  • 大家都在看
  • 小编推荐
  • 猜你喜欢
  • [相关地区]