学历改变命运
24小时客服:4008135555/010-82335555
当前位置:首页 > 笔记串讲 > 自考“高级语言程序设计”习题答案详解(18

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

2007年09月04日    来源:   字体:   打印

  2.说明下列程序的功能。

  main()

  { int i,j;

  float a[3][3],b[3][3],x;

  for(i=0;i<3;i++)

  for(j=0;j<3 ;j++)

  { scanf(“%f”,&x); a[j]= x;

  }

  for(i=0;i<3;i++)

  for(j=0;j<3;j++)

  b[j]=a[j];

  for(i=0;i<3;i++)

  {printf(“\n”);

  for(j=0;j<3;j++)

  printf(“%f”,b[j]);

  }

  printf(“\n”);

  }

  「解」程序第一段两重循环,实现按行顺序输入数组a的全部元素的值。程序第二段两重循环是将数组a转置复制到数组b.程序第三段两重循环实现按行输出数组b的全部元素。所以程序的功能是按行顺序输入3*3二维数组的全部元素,然后按列顺序输出。

  3.写出下列程序的运行结果。

  main()

  {static char a[]={‘*’,‘*’,‘*’,‘*’,‘*’,‘*’};

  int i,j,k;

  for( i=0;i<5;i++)

  { printf(“\n”)

  for(j= 0;j<I;J++) PRINTF(“%C”,‘’);

  for(j=0;j<5 ;j++)printf(“%c”,a[k]);

  }

  printf( “\n”);

  }

  「解」程序的外循环控制循环五次,每次开始先输出一个换行符,共输出5行信息。对于i(自0开始计算)行,先输出i个空白符,接着输出字符数组a中的五个字符,由于a中的五个字符都是字符。,所以输出五个*字符。这样程序是输出以下形式的图案:

  * * * * *

  * * * * *

  * * * * *

  * * * * *

  * * * * *

关闭