2013自考“高級(jí)語(yǔ)言程序設(shè)計(jì)”習(xí)題答案詳解(17)
5.下面程序的功能是將一個(gè)字符串str的內(nèi)容顛倒過(guò)來(lái),請(qǐng)?zhí)羁铡?/P>
# include
main()
{int i, j,_____________;
char str[]={“1234567”};
for(i=0,j=strlen(str); i<J;I++,J++)
{ k=str; str=str[j]; str[j]=k; }
printf(“%s\n”, str);
}
「解」顛倒一個(gè)字符串中的字符,就是首尾對(duì)應(yīng)的元素兩兩交換。簡(jiǎn)單地可用兩個(gè)游標(biāo)變量i和j, j是前端元素的下標(biāo), j是后端元素的下標(biāo), 交換以這兩個(gè)變量值為下標(biāo)的元素str和 str[j].開(kāi)始時(shí),i的值為 0,j的值為字符率未元素的不標(biāo)(字符串長(zhǎng)度減1)。每次交換后,i增 1,j減1.繼續(xù)交換的條件是str還位于str[j]的前面,即i<J.字符串末元素的不標(biāo)是它的長(zhǎng)度減1,所以在第二個(gè)空框處應(yīng)填入-1.程序?yàn)榱私粨QSTR[I]和STR[J],使用了變量K,該變量應(yīng)在程序的變量定義部分中一起定義,所以在第一個(gè)空框處應(yīng)填入K.
6.以下程序可把輸入的十進(jìn)制數(shù)以十六進(jìn)制數(shù)的形式輸出,請(qǐng)?zhí)羁铡?/P>
main( )
{ char b[17]={“0123456789ABCDEF”}
;
int c[64],d,i=0,base=16;
long n;
printf(“Enter a number:\n”);。
scanf(“%ld”, &n):
do { c=________;i++;n=n/base;}
while(n?。?);
printf(“Transmite new base:\n”);
for(――i; i>= 0;――i)
{d=c; printf(“%c”,b);}
printf(“\n”);
「解」程序中,字符數(shù)組b存儲(chǔ)十六進(jìn)制的 16個(gè)數(shù)字符,整型數(shù)組C存儲(chǔ)澤出的十六進(jìn)制數(shù)的各位數(shù)值。從整數(shù)n譯出它的各位十六進(jìn)制數(shù)值,需采用除16取余的方法,即求n除16 的余。得到它的十六進(jìn)制的個(gè)位數(shù),接著將n除以16.在n不等于0的情況下循環(huán),能順序求出n的十六進(jìn)制的個(gè)位數(shù)、十位數(shù)、百位數(shù)等等。程序中變量base已預(yù)置16,所以在第一個(gè)空框處可填代碼nose或n.當(dāng)n的十六進(jìn)制數(shù)的個(gè)位、十位、百位等數(shù)字依次存放于數(shù)組C中后,就從最高位至最低位,參照數(shù)組c的內(nèi)容d(以其內(nèi)容為下標(biāo)),取十六進(jìn)制數(shù)字符表中的字符b[d]輸出。所以在第二個(gè)空框處可填入代碼[d].
4.3 程序分析題
1.閱讀程序,寫(xiě)出程序運(yùn)行結(jié)果。,
main()
{ static int a[][3]={9,7,5,3,l,2,4,6,8};
int i,j,sl=0,s2=0;
for(i=0; i<3;i++)
for(j=0;j<3;j++)
{ if(i==j(luò)) s1=s1+a[j];
if(i+j== 2) s2=s2+a[j];
}
printf(“%d\n%d\n”, sl,s2);
}
「解」已知數(shù)組。共有3行3列席一行依次是9,7,5;每二行是3,1,2;第三行是4,6,8.程序引用數(shù)組元素的游標(biāo)變量是i和j,外循環(huán)控制變量i是數(shù)組的行下橋,內(nèi)循環(huán)控制變量j是數(shù)組的列下標(biāo)。循環(huán)體的工作是將數(shù)組的某些元素累計(jì)到sl,某些元素累計(jì)到S2.將行下標(biāo)i和列下標(biāo)j相同的元素累計(jì)到sl,sl=a[0][0]+a[l][1]+a[2][2].將行下標(biāo)i與列下標(biāo)j的和為 2的元素累計(jì)到 s2,s2=a[0][2]+a[l][l]+a[2][0].所以sl是18,s2是10.程序輸出:
18
10
?2013年高教自考網(wǎng)絡(luò)輔導(dǎo)課程招生簡(jiǎn)章![]()
更多信息請(qǐng)?jiān)L問(wèn):自學(xué)考試頻道 自學(xué)考試論壇
最新資訊
- 2026年1月廣東自考各專(zhuān)業(yè)必考100題,考前刷完!【免費(fèi)領(lǐng)取】2026-01-07
- 2026年4月自考各專(zhuān)業(yè)必考100題發(fā)布!背的越早,分?jǐn)?shù)越高!2025-12-19
- 備考資料:2024年自考《英語(yǔ)二》閱讀判斷模擬試題2024-04-05
- 2024年4月自學(xué)考試《馬克思主義基本原理概論》模擬題——簡(jiǎn)答題2024-03-23
- 2024年4月自學(xué)考試《馬克思主義基本原理概論》模擬題——論述題2024-03-21
- 2021年10月自考《思修》考前2天沖刺卷2021-10-14
- 2021年10月自考《馬克思主義基本原理概論》考前2天沖刺卷!2021-10-14
- 2021年10月自考《中國(guó)近現(xiàn)代史綱要》模擬題(五)2021-08-01
- 2021年10月自考《中國(guó)近現(xiàn)代史綱要》模擬題(四)2021-07-31
- 2021年10月自考《中國(guó)近現(xiàn)代史綱要》模擬題(六)2021-07-30