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

  • 發(fā)布時(shí)間:2024-09-15 16:21:23
  • 來(lái)源:本站整理
  • 閱讀:
導(dǎo)讀:
  3.2 填充題
  1.結(jié)構(gòu)化程序設(shè)計(jì)規(guī)定的三種基本結(jié)構(gòu)是________結(jié)構(gòu),選擇結(jié)構(gòu)和_______結(jié)構(gòu)。
  「解」結(jié)構(gòu)化程序設(shè)計(jì)的三種基本控制結(jié)構(gòu)是順序結(jié)構(gòu)、選擇結(jié)構(gòu)和循環(huán)結(jié)構(gòu)。
  2.若有定義“int a=25,b=14, c=19;”,以下語(yǔ)句的執(zhí)行結(jié)果是______.
  if a++<=25&&b——<=2&&c++)
  prinif(

3.2 填充題

1.結(jié)構(gòu)化程序設(shè)計(jì)規(guī)定的三種基本結(jié)構(gòu)是________結(jié)構(gòu),選擇結(jié)構(gòu)和_______結(jié)構(gòu)。

「解」結(jié)構(gòu)化程序設(shè)計(jì)的三種基本控制結(jié)構(gòu)是順序結(jié)構(gòu)、選擇結(jié)構(gòu)和循環(huán)結(jié)構(gòu)。

2.若有定義“int a=25,b=14, c=19;”,以下語(yǔ)句的執(zhí)行結(jié)果是______.

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);

「解」問(wèn)題所給的if語(yǔ)句中,條件a++<=25&&b——<=2&&c++是先求邏輯與的第一個(gè)運(yùn)算分量,它是一個(gè)關(guān)系式,關(guān)系成立。接著判定第二個(gè)邏輯與運(yùn)算分量,又是一個(gè)關(guān)系式,由于變量b的值是14,b不小于等于2,運(yùn)算分量的關(guān)系式不成立,導(dǎo)致if語(yǔ)句的條件為假,執(zhí)行else部分。在求且語(yǔ)句的條件時(shí),計(jì)算了2個(gè)邏輯與分量,使變量a的值增了1,變量 b的值被減了1.所以輸出內(nèi)容是:###a=26,b=13,c=19.

3.以下兩條if語(yǔ)句可合并成一條if語(yǔ)句為_(kāi)____________.

if(a<=b) x=1;

else y=2;

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

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

「解」在以上兩條if語(yǔ)句中,兩個(gè)條件剛巧相反。若將前一個(gè)if語(yǔ)句的第一個(gè)成分語(yǔ)句與第二個(gè)if語(yǔ)句的第二個(gè)成分語(yǔ)句合并;第一個(gè)if語(yǔ)句的第二個(gè)成分語(yǔ)句與第二個(gè)if語(yǔ)句的第一個(gè)成分語(yǔ)句合并,寫(xiě)成一條if語(yǔ)句如下:

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

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

4.設(shè) i,j,k均為 int型變量,則執(zhí)行完下面的for語(yǔ)句后,k的值為_(kāi)______.

for(i=0,j=10;i<=j(luò);i++,j——)k=i+j;

「解」該 for語(yǔ)句以i為0、j為10初始化,循環(huán)條件是 i<=j(luò),每次循環(huán)后 i增 1、j減 1,循環(huán)體是將 i與j的和賦給 k.這樣變量 k將保存的是最后一次賦給它的值。一次循環(huán)后 i為 l.j為 9,二次循環(huán)后 i為 2.j為 8,……,五次循環(huán)后 i為 5.j為 5,繼續(xù)第六次循環(huán),將 i與 j的和10存于 k后,i為 6、j為 4,結(jié)束循環(huán)。所以循環(huán)執(zhí)行后 k為10.

5.下列程序的功能是輸入一個(gè)整數(shù),判斷是不是素?cái)?shù),若為素?cái)?shù)輸出1,否則輸出0,請(qǐng)為程序填空。

main()

{int i,X,y=1;

scanf(“%d”,&x);

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

if________________ { y=0; break; }

printf(“%d\n”,y);

}

「解」為判數(shù)x是否是素?cái)?shù),預(yù)置變量y的值為1(x可能是素?cái)?shù)),然后用循環(huán),用2至x/2的整數(shù)i測(cè)試對(duì)X的整除性,若能被其中的某個(gè)整數(shù)整除,則X是合數(shù),置y的值為0(不是素?cái)?shù)),結(jié)束測(cè)試循環(huán)。若都不能整除,則X為素?cái)?shù)。i能否整除X,可用求余運(yùn)算X%i等于0來(lái)判定。所以程序中的空框可填 X% i==0.測(cè)試 X為素?cái)?shù)的代碼可寫(xiě)成:

y=l;

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

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

相關(guān)閱讀

熱門(mén)標(biāo)簽

關(guān)于自考“高級(jí)語(yǔ)言程序設(shè)計(jì)”習(xí)題答案詳解(9)文章

2021年自學(xué)考試報(bào)考入口 2021年自學(xué)考試報(bào)考入口

熱門(mén)文章