自考《高级语言程序设计》习题及答案(6)

发布时间:2012-07-25 共3页

本文导航
  • 第2页:二、程序分析题
  二、 程序分析题
  1.阅读程序,写出运行结果。
  main()
  { int a=10, b=4,C=3;
  if(a<b)a=b;
  if(a<C) a=C;
  printf(“%d,%d,%d\n”, a,b,c);
  }
  「解」程序中,第一个if语句if(a<B)A=B,当A<B时,让B值置A,该语句确保A的值不比B小。同样第二个IF语句IF(A<C)A=C,当A<C时,让C值置A,使A的值不比C小。实际;情况是A本来就比B和C都大,所以A的值没有变,程序输出A、B和 C的原来值:10,4,3.
  2.阅读下列程序,写出程序的输出结果。
  main()
  { int x=100, a=10, b=20, Ok1=5,Ok2=0;
  if(a<b)if(b!=15)if(!Ok1) x=1;
  else if(ok2) x=10;
  else x=-l;
  printf(“%d\n”,x);
  }
  「解」程序预置变量x的值为100,a的值为10,b的值为20,ok1为5,Ok2为0.
  程序中给出的if语句可以写成更结构化的形式如下:
  if(a<b) {
  if(b!=15){
  if(!Ok1) x=1;
  else{
  if(Ok2) x=10;
  else x=-l;
  }
  }
  }
  由于条件a<b成立,并且条件b!=15也成立,而ok1不等于0,执行else后的语句。又因ok2等于0,执行else后的语句赋-1给x.所以程序输出一l.
  3.阅读下列程序,写出程序的输出结果。
  main()
  { int y=9;
  for(; y>0; y——)
  if(y%3==0){ printf(“%d”,——y);continue;}
  }
  「解」循环前,变量y的值为9,其中的循环语句在y大于0情况下循环,每次循环后y的值减1.循环体是当y能被3整除时输出表达式——y,输出的是减1后的y值。这样,第一次循环因y为9,能被3整除,输出8,y也变成8.又经两次循环,y的值变为6,又让y减1变成5,并输出5;又经两次循环,y的值变成3,让y减至变成2,输出2;再经两次循环后,y的值变成0,结束循环。所以程序输出852.

  为广大考生提供在线模考免费课程,欢迎免费使用。同时为您提供考试指南,遇到疑问可进入你问我答 进行咨询。

自考

上一页123下一页

百分百考试网 考试宝典

立即免费试用