freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

word版可編輯-c語言程序設(shè)計(jì)練習(xí)題精心整理(編輯修改稿)

2025-04-23 23:43 本頁(yè)面
 

【文章內(nèi)容簡(jiǎn)介】 注釋:當(dāng)通過一個(gè)運(yùn)算對(duì)象即可決定邏輯運(yùn)算amp。amp。的結(jié)果時(shí),則對(duì)另一個(gè)運(yùn)算對(duì)象不做處理?!尽看鸢福篋 【】答案:B注釋:數(shù)組元素在內(nèi)存中按行排列,此數(shù)組的前3個(gè)元素的值分別是1,表達(dá)式中雖然數(shù)組下標(biāo)的寫法似乎每行有3個(gè)元素,和定義時(shí)的3行2列不一致,但是C語言引用數(shù)組元素時(shí)是根據(jù)數(shù)組的首地址和給出的下標(biāo)進(jìn)行運(yùn)算決定元素的地址。題中表達(dá)式引用了數(shù)組前3個(gè)元素。【】答案: A【】答案:C【】答案:C【】答案:D【】答案:D【】答案:C【】答案:D【】答案:C注釋:在C語言中, 經(jīng)常用一個(gè)變量來作為邏輯表達(dá)式,其含義就是:當(dāng)變量的值不為0時(shí)關(guān)系成立?!尽看鸢福篋注釋:break語句僅可跳出switch語句,不會(huì)跳出while循環(huán),這是一個(gè)死循環(huán)。【】答案:A 【】答案:C【】答案:C 【】答案:D注釋:當(dāng)除數(shù)y為0時(shí),程序發(fā)生溢出錯(cuò)誤?!尽看鸢福篊【】答案:A【】答案:C【】答案:C注釋:答案C的賦值號(hào)左側(cè)是數(shù)組s的首地址,是一個(gè)常量,賦值號(hào)右側(cè)是一個(gè)字符串常量,不可能將一個(gè)字符串常量賦給一個(gè)地址常量?!尽看鸢福篋注釋:D選項(xiàng)缺少字符串結(jié)束標(biāo)志。【】答案:A【】答案:D注釋:這里首先要明確一些基本概念。在C語言中,程序與文件是不同的概念,一個(gè)程序可以由一個(gè)文件組成,也可以由多個(gè)文件組成。 一個(gè)文件中又可以包含多個(gè)函數(shù)。 函數(shù)是構(gòu)成C程序的基本單位。變量的作用域因變量的存儲(chǔ)類型不同而不同。auto和register類型的變量的作用域是說明變量的當(dāng)前函數(shù)。 外部變量的作用域是整個(gè)程序,即外部變量的作用域可以跨越多個(gè)文件。 內(nèi)部靜態(tài)變量(定義在一個(gè)函數(shù)內(nèi)部的static型的變量)的作用域是當(dāng)前函數(shù),外部靜態(tài)變量(定義在函數(shù)外面的static型的變量)的作用域是當(dāng)前文件,即可以跨越同一文件中的不同函數(shù)?!尽看鸢福篈【】答案:A注釋:它和參數(shù)a一樣,數(shù)據(jù)類型說明被省略,按照C語言的規(guī)定,在這種情況下,表示它們是int型?!尽看鸢福篊注釋:函數(shù)swapa是值傳遞,函數(shù)的執(zhí)行結(jié)果不能返回。 函數(shù)swapb中變量temp不是指針變量,所以它不能接受地址量,用指針變量x為它賦值是不對(duì)的。 函數(shù)swap中雖然指針變量交換了地址,即它們的指向的目標(biāo)變量進(jìn)行了交換,但是目標(biāo)變量并沒有行值的交換?!尽看鸢福築【】答案:D【】答案:D注釋:主調(diào)函數(shù)中b=0,在執(zhí)行fun1函數(shù)里的除法時(shí)發(fā)生溢出錯(cuò)誤?!尽看鸢福築【】答案:C【】答案:C注釋:要注意與說明語句int (*p)[ ]。 的區(qū)別。說明語句int (*p)[ ]。 說明的是一個(gè)指向數(shù)組的指針?!尽看鸢福篊注釋:題干中由于*和p被小括號(hào)括起,所以p應(yīng)被解釋為一個(gè)指針,而后的下標(biāo)運(yùn)算符[]說明所指向的對(duì)象是一個(gè)有4個(gè)int型元素的一維數(shù)組。 如果是int (*p)(), 則是指向函數(shù)的指針。對(duì)于int *p[4], 則根據(jù)運(yùn)算符的優(yōu)先級(jí),先考慮p和[]運(yùn)算符的關(guān)系,所以它就是一個(gè)指針數(shù)組了?!尽看鸢福築注釋:選項(xiàng)B有兩處錯(cuò)誤,一是數(shù)組名是常量,不能出現(xiàn)的賦值好的左側(cè),二是指針變量只能和整數(shù)做加,不能和作為地址常量的數(shù)組名相加?!尽看鸢福篋注釋:s作為數(shù)組名是地址常量,而s++是s=s+1,C語言不允許對(duì)常量進(jìn)行賦值?!尽看鸢福篊【】答案:A注釋:p是一個(gè)一級(jí)指針,選項(xiàng)B中對(duì)它進(jìn)行了兩次*運(yùn)算是錯(cuò)誤的。ptr是一個(gè)指向一維數(shù)組的指針,它所指向的數(shù)組有三個(gè)元素,對(duì)于這樣一個(gè)指針,對(duì)它進(jìn)行兩次**運(yùn)算才能取出地址單元中所存的數(shù)據(jù),C選項(xiàng)中*ptr表示數(shù)組第一行的首地址,該地址是一維數(shù)組的地址,+3表示加上三個(gè)它所指向的數(shù)據(jù)類型的長(zhǎng)度,所以(*ptr+1)+2是數(shù)組中數(shù)值4的地址。根據(jù)以上分析,選項(xiàng)D對(duì)ptr進(jìn)行了兩次地址操作(*和[]),所以結(jié)果應(yīng)是數(shù)據(jù),但是它加1后指向數(shù)組第二行,根據(jù)后面[]中2它的地址增加兩個(gè)一維數(shù)組的長(zhǎng)度,就指向數(shù)組的最后一行,再做*運(yùn)算就是數(shù)10,即a[3][0]?!尽看鸢福篈【】答案:B B【】答案:D【】答案:B【】答案:D注釋:答案D是另一種交換兩個(gè)變量值的算法?!尽看鸢福築【】答案:C注釋:使用C對(duì)p進(jìn)行賦值,則pnext是a[0]的地址,引用其成員n再做前增1運(yùn)算,結(jié)果就是2?!尽看鸢福築【】答案:D【】答案:A【】答案:C注釋:聯(lián)合變量temp的成員是占用同一存儲(chǔ)單元,它的長(zhǎng)度是4個(gè)字節(jié)。266的二進(jìn)制表示是100001010,存放在存儲(chǔ)單元的低端兩個(gè)字節(jié),如下圖:高字節(jié) 0 0 0 0 0 0 0 1低字節(jié) 0 0 0 0 1 0 1 0,只取最低的第一個(gè)字節(jié)?!尽看鸢福篋注釋:由于結(jié)構(gòu)指針指向了結(jié)構(gòu)數(shù)組的0號(hào)元素,所以表達(dá)式(p++)m的含義是先取出m(變量a的地址),然后指針p加1。表達(dá)式*(p++)m的含義是先取出m的內(nèi)容(變量a的值),然后指針p再加1。表達(dá)式(*p).m的含義是取出m(變量a的地址)。表達(dá)式*(++p)m的含義是先將指針p加1,然后再取m的內(nèi)容(變量b的值)?!尽看鸢福篋【】答案:B【】答案:C【】答案:D【】答案:D【】答案:B【】答案:B注釋:語句z=2*(N+Y(5+1)引用了兩個(gè)宏定義。C語言是區(qū)分字母大小的,第二個(gè)宏定義中的N直接用3替換,用5+1替換n,則有z=2*(3+(3+1)*5+1)。 結(jié)果是48。注意對(duì)于帶參數(shù)的宏亦是直接的文本替換,此例中n用5+1去替換,結(jié)果是(N+1)*5+1,而不是(N+1)*(5+1)。 【】答案:C注釋:宏替換后的結(jié)果是printf(%d, 10/3*3)。【】答案:C二、 閱讀程序題導(dǎo)讀:學(xué)會(huì)閱讀程序?qū)τ诔鯇W(xué)者來說很重要,一方面可以鞏固所學(xué)的語法知識(shí),另一方面通過閱讀別人寫好的程序來打開自己的思路,就所謂見多識(shí)廣。讀者通過閱讀理解程序,從給出的四個(gè)備選參考答案中,選擇程序的正確輸出。如果選擇有誤,就要認(rèn)真分析原因,是概念方面的錯(cuò)誤還是對(duì)程序邏輯理解不對(duì),從而加深對(duì)語法規(guī)則的理解,提高程序設(shè)計(jì)能力。程序設(shè)計(jì)語言是開發(fā)程序的一個(gè)工具,學(xué)習(xí)語言的目的是為了編寫程序來解決實(shí)際問題,所以特別提倡通過實(shí)際上機(jī)來檢驗(yàn)備選答案,增強(qiáng)動(dòng)手能力?!尽恳韵鲁绦虻妮敵鼋Y(jié)果是 。 include void main( ){ float a。 a=1/100000000。 printf(%g, a)。 }A) +00 B) C) D) 0【】下面程序的輸出結(jié)果是____。include   void main( ){ int x=10。 { int x=20。 printf (%d, , x)。 }printf(%d\n, x)。 }A) 10,20 B) 20,10 C) 10,10 D) 20,20【】以下程序的輸出結(jié)果是____。include void main(){ unsigned int n。 int i=521。 n=i。 printf(n=%u\n, n)。 }A) n=521 B) n=521 C) n=65015 D) n=102170103【】以下程序的輸出結(jié)果是 。 include void main( ){ int x=10, y=10。 printf(%d %d\n, x――, ――y)。 }A) 10 10 B) 9 9 C) 9 10 D) 10 9【】以下程序的輸出結(jié)果是____。include void main(){ int n=1。 printf(%d %d %d\n, n, n++, n)。 }A) 1 1 1 B) 1 0 1 C) 1 1 0 D) 1 2 1【】以下程序的輸出結(jié)果是____。include void main(){ int a=1。 char c=39。a39。 float f=。 printf(%d\n, (!(a==0), f!=0amp。amp。c==39。A39。))。 }A) 0 B) 1 【】下面程序的輸出結(jié)果是____。include void main(){ char s[12]= a book。 printf(%.4s, s)。 }A) a book! B) a book!四個(gè)空格》C) a bo D) 格式描述錯(cuò)誤,輸出不確定【】下面程序的輸出結(jié)果是____。include void main(){ int a, b。 scanf(%2d%3d, amp。a, amp。b)。 printf(a=%d b=%d\n, a, b)。 }A) a=12 b=34 B) a=123 b=45 C) a=12 b=345 D) 語句有錯(cuò)誤【】以下程序段的輸出結(jié)果是 。 int a=10, b=50, c=30。 if(ab)a=b。 b=c。 c=a。 printf(a=%d b=%d c=%d\n, a, b, c)。 A) a=10 b=50 c=10 B) a=10 b=30 c=10C) a=50 b=30 c=10 D) a=50 b=30 c=50【】以下程序的輸出結(jié)果是 。 include void main(){ int a=0, b=1, c=0, d=20。 if(a) d=d10。 else if(!b)if(!c) d=15。 else d=25。 printf(d=%d\n, d)。 }A) d=10 B) d=15 C) d=20 D) d=25【】下面程序的輸出結(jié)果為 。include void main(){ int a=1, b=0。 switch(a){ case 1: switch (b){ case 0: printf(**0**)。 break。 case 1: printf(**1**)。 break。 }case 2: printf(**2**)。 break。 }}A) **0** B) **0****2** C) **0****1****2** D) 有語法錯(cuò)誤【】以下程序的輸出結(jié)果是 。 include void main(){ char *s=12134211。 int v1=0, v2=0, v3=0, v4=0, k。 for(k=0。 s[k]。 k++)switch(s[k]){ case 39。139。: v1++。 case 39。339。: v3++。 case 39。239。: v2++。 default: v4++。 }printf(v1=%d, v2=%d, v3=%d, v4=%d\n, v1, v2, v3, v4)。 }A) v1=4, v2=2, v3=1, v4=1 B) v1=4, v2=9, v3=3, v4=1C) v1=5, v2=8, v3=6, v4=1 D) v1=4, v2=7, v3=5, v4=8【】下面程序的輸出是 。include void main(){ int x=1, y=0, a=0, b=0。 switch(x){ case 1: switch(y){ case 0: a++。 break。 case 1: b++。 break。 }case 2: a++。 b++。 break。 }printf(a=%d, b=%d\n, a, b)。 }A) a=2, b=1 B) a=1, b=1 C) a=1, b=0 D) a=2, b=2【】下面程序的輸出是____。include void main(){ int num=0。 while(num=2){ num++。 printf(%d, num)。 }}A) 1 B) 1234 C) 123 D) 12【】下面程序的輸出結(jié)果是____。include void main(){ int a=1, b=0。 do{ switch(a){ case 1: b=1。 break。 case 2: b=2。 break。 default : b=0。 }b=a+b。 }while(!b)。 printf(a=%d, b=%d, a, b)。 }A) 1, 2 B) 2, 1 C) 1, 1 D) 2, 2【】從鍵盤上輸入446755時(shí),下面程序的輸出是____。include void main(){ int c。 while((c=getchar())!=39。\n39。)switch(c 39。239。){ case 0:case 1: putchar(c+4)。 case 2: putchar(c+4)。 break。 case 3: putchar(c+3)。 default: putchar(c+2)。 break。 }printf(\n)。 }A) 888988 B) 668966 C) 88898787 D) 66898787【】下面程序的輸出結(jié)果是____。include void main(){ int k=0。 char c=39。A39。 do{ switch(c++){ case 39。A39。
點(diǎn)擊復(fù)制文檔內(nèi)容
環(huán)評(píng)公示相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖片鄂ICP備17016276號(hào)-1