自考“高級語言程序設(shè)計”習(xí)題答案詳解(18)

字號:

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”);
    }
    「解」程序第一段兩重循環(huán),實現(xiàn)按行順序輸入數(shù)組a的全部元素的值。程序第二段兩重循環(huán)是將數(shù)組a轉(zhuǎn)置復(fù)制到數(shù)組b.程序第三段兩重循環(huán)實現(xiàn)按行輸出數(shù)組b的全部元素。所以程序的功能是按行順序輸入3*3二維數(shù)組的全部元素,然后按列順序輸出。
    3.寫出下列程序的運行結(jié)果。
    main()
    {static char a[]={‘*’,‘*’,‘*’,‘*’,‘*’,‘*’};
    int i,j,k;
    for( i=0;i<5;i++)
    { printf(“\n”)
    for(j= 0;j    for(j=0;j<5 ;j++)printf(“%c”,a[k]);
    }
    printf( “\n”);
    }
    「解」程序的外循環(huán)控制循環(huán)五次,每次開始先輸出一個換行符,共輸出5行信息。對于i(自0開始計算)行,先輸出i個空白符,接著輸出字符數(shù)組a中的五個字符,由于a中的五個字符都是字符。,所以輸出五個*字符。這樣程序是輸出以下形式的圖案:
    * * * * *
    * * * * *
    * * * * *
    * * * * *
    * * * * *