【MOOC答案】《C語言程序設(shè)計(jì)精髓》(哈爾濱工業(yè)大學(xué))章節(jié)作業(yè)慕課答案_第1頁
【MOOC答案】《C語言程序設(shè)計(jì)精髓》(哈爾濱工業(yè)大學(xué))章節(jié)作業(yè)慕課答案_第2頁
【MOOC答案】《C語言程序設(shè)計(jì)精髓》(哈爾濱工業(yè)大學(xué))章節(jié)作業(yè)慕課答案_第3頁
【MOOC答案】《C語言程序設(shè)計(jì)精髓》(哈爾濱工業(yè)大學(xué))章節(jié)作業(yè)慕課答案_第4頁
【MOOC答案】《C語言程序設(shè)計(jì)精髓》(哈爾濱工業(yè)大學(xué))章節(jié)作業(yè)慕課答案_第5頁
已閱讀5頁,還剩143頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

【MOOC答案】《C語言程序設(shè)計(jì)精髓》(哈爾濱工業(yè)大學(xué))章節(jié)作業(yè)慕課答案

有些題目順序不一致,下載后按鍵盤ctrl+F進(jìn)行搜索第1周——初識C語言從認(rèn)識變量和常量開始第1周測驗(yàn)1.單選題:下列選項(xiàng)中,合法的C語言標(biāo)識符是

選項(xiàng):

A、_a1

B、#abc123

C、width.x

D、123abc

E、o*k

F、a?

G、a+b

H、%a

I、b!

答案:【_a1】2.單選題:C語言用sizeof計(jì)算變量在內(nèi)存中的字節(jié)數(shù),其中sizeof是()

選項(xiàng):

A、運(yùn)算符

B、一元運(yùn)算符

C、只需要一個(gè)操作數(shù)的運(yùn)算符

D、函數(shù)

E、語句

F、標(biāo)識符

G、變量

答案:【運(yùn)算符】3.單選題:若變量a是int類型,并執(zhí)行了語句:a='A'+1.6;,則正確的敘述是

選項(xiàng):

A、'A'+1.6的結(jié)果是浮點(diǎn)型

B、a的值還是整型

C、a的值是字符C

D、a的值是浮點(diǎn)型

E、不允許字符型和浮點(diǎn)型相加

答案:【'A'+1.6的結(jié)果是浮點(diǎn)型】4.單選題:關(guān)于可執(zhí)行文件說法正確的是

選項(xiàng):

A、可執(zhí)行文件是編譯鏈接后生成的文件

B、可執(zhí)行文件就是源代碼文件

C、可執(zhí)行文件后綴為.obj

D、可執(zhí)行文件就是main.c文件

答案:【可執(zhí)行文件是編譯鏈接后生成的文件】5.單選題:用8位無符號二進(jìn)制數(shù)能表示的最大十進(jìn)制數(shù)為

選項(xiàng):

A、255

B、127

C、128

D、256

答案:【255】6.單選題:程序編譯鏈接后顯示"0error,0warning"代表

選項(xiàng):

A、程序中沒有語法錯誤

B、程序是正確的

C、程序是不正確的

D、程序中可能存在語法錯誤

E、程序中有語義錯誤

答案:【程序中沒有語法錯誤】7.單選題:在windows下,程序編譯鏈接后形成的可執(zhí)行文件是

選項(xiàng):

A、.obj文件

B、.exe文件

C、.o文件

D、.c文件

E、.h文件

答案:【.exe文件】8.單選題:#include是

選項(xiàng):

A、編譯預(yù)處理指令

B、語句

C、函數(shù)

D、什么都不是

E、有語法錯誤

答案:【編譯預(yù)處理指令】9.單選題:以下不適合定義為用戶標(biāo)識符的是

選項(xiàng):

A、int

B、_3com_

C、a2

D、Pi

E、def2

F、Source

G、abc

答案:【int】10.單選題:下列說法正確的是

選項(xiàng):

A、在C語言中,變量必須先定義后使用。

B、一條變量定義語句可定義多個(gè)同類型的變量。

C、C89規(guī)定所有變量必須在第一條可執(zhí)行語句前定義。

D、一條變量定義語句不可以同時(shí)定義多個(gè)變量。

E、const常量只能在定義時(shí)賦值。

F、不同類型的變量分配的存儲空間大小都是相同的。

G、實(shí)型常量的默認(rèn)類型是double類型。

H、在C語言中,所有變量都必須在定義時(shí)進(jìn)行初始化。

I、變量在沒有初始化的時(shí)候,其值都是0

J、宏常量有數(shù)據(jù)類型,編譯器在宏替換時(shí)可以進(jìn)行類型檢查。

答案:【在C語言中,變量必須先定義后使用?!?1.單選題:以下選項(xiàng)中可作為C語言合法整數(shù)的是

選項(xiàng):

A、0xffa

B、10110B

C、038x

D、x2a2

答案:【0xffa】12.單選題:以下符合C語言語法的實(shí)型常量是

選項(xiàng):

A、5e-3

B、3.14.159e

C、1.2e0.5

D、e15

答案:【5e-3】13.單選題:在C語言中,字符型數(shù)據(jù)在內(nèi)存中以字符的()形式存放

選項(xiàng):

A、ASCII碼

B、國標(biāo)碼

C、BCD碼

D、反碼

答案:【ASCII碼】14.單選題:若有定義:inta=8,b=5,c;,執(zhí)行語句c=a/b+0.4;后,c的值為

選項(xiàng):

A、1

B、1.4

C、2.0

D、2

答案:【1】15.單選題:下列說法中錯誤的是()

選項(xiàng):

A、尾數(shù)決定了實(shí)數(shù)的表數(shù)范圍,階碼決定了實(shí)數(shù)的表數(shù)精度。

B、內(nèi)存是按位編址的。

C、有符號和無符號整數(shù)的表數(shù)范圍是相同的。

D、int型在所有的計(jì)算機(jī)上都占4個(gè)字節(jié)的存儲單元。

E、編譯器按變量定義的類型對不同類型的變量分配不同大小的內(nèi)存空間。

F、內(nèi)存是按字節(jié)編址的。

G、對于同樣的尾數(shù),階碼的值越大,則浮點(diǎn)數(shù)所表示的數(shù)值的絕對值就越大。

H、sizeof是編譯時(shí)執(zhí)行的運(yùn)算符,不會導(dǎo)致額外的運(yùn)行時(shí)間開銷。

答案:【尾數(shù)決定了實(shí)數(shù)的表數(shù)范圍,階碼決定了實(shí)數(shù)的表數(shù)精度?!?6.單選題:程序的開發(fā)步驟中不包括

選項(xiàng):

A、撰寫文檔

B、運(yùn)行程序

C、編譯鏈接

D、程序測試

E、編輯(編寫代碼)

答案:【撰寫文檔】17.單選題:以下不屬于Codeblocks中用于調(diào)試程序的工具是

選項(xiàng):

A、run

B、build

C、runtocursor

D、nextline

E、stopdebugger

F、watches

答案:【run】18.單選題:下列變量定義中合法的是

選項(xiàng):

A、longao=0xfdaL;

B、short_a=1-.1e-1;

C、doubleb=1+5e2.5;

D、float2_and=1-e-3;

答案:【longao=0xfdaL;】練兵區(qū)——單選題——不計(jì)入總分1.單選題:關(guān)于可執(zhí)行文件說法正確的是

選項(xiàng):

A、可執(zhí)行文件是編譯鏈接后生成的文件

B、可執(zhí)行文件就是源代碼文件

C、可執(zhí)行文件后綴為.obj

D、可執(zhí)行文件就是main.c文件

答案:【可執(zhí)行文件是編譯鏈接后生成的文件】2.單選題:用8位無符號二進(jìn)制數(shù)能表示的最大十進(jìn)制數(shù)為

選項(xiàng):

A、255

B、127

C、128

D、256

答案:【255】3.單選題:程序編譯鏈接后顯示"0error,0warning"代表

選項(xiàng):

A、程序中沒有語法錯誤

B、程序是正確的

C、程序是不正確的

D、程序中可能存在語法錯誤

E、程序中有語義錯誤

答案:【程序中沒有語法錯誤】4.單選題:在windows下,程序編譯鏈接后形成的可執(zhí)行文件是

選項(xiàng):

A、.obj文件

B、.exe文件

C、.o文件

D、.c文件

E、.h文件

答案:【.exe文件】5.單選題:#include是

選項(xiàng):

A、編譯預(yù)處理指令

B、語句

C、函數(shù)

D、什么都不是

E、有語法錯誤

答案:【編譯預(yù)處理指令】6.單選題:以下不適合定義為用戶標(biāo)識符的是

選項(xiàng):

A、float

B、main

C、define

D、_3com_

E、Pi

F、Source

G、abc

答案:【float】7.單選題:下列選項(xiàng)中,合法的C語言標(biāo)識符是

選項(xiàng):

A、_a1

B、width

C、#abc123

D、123abc

E、o*k

F、a?

G、a+b

H、%a

I、b!

答案:【_a1】8.單選題:以下符合C語言語法的實(shí)型常量是

選項(xiàng):

A、5e-3

B、3.14.159e

C、1.2e0.5

D、e15

答案:【5e-3】9.單選題:在C語言中,字符型數(shù)據(jù)在內(nèi)存中以字符的()形式存放

選項(xiàng):

A、ASCII碼

B、國標(biāo)碼

C、BCD碼

D、反碼

答案:【ASCII碼】10.單選題:若有定義:inta=8,b=5,c;,執(zhí)行語句c=a/b+0.4;后,c的值為

選項(xiàng):

A、1

B、1.4

C、2.0

D、2

答案:【1】11.單選題:下列說法中錯誤的是()

選項(xiàng):

A、尾數(shù)決定了實(shí)數(shù)的表數(shù)范圍,階碼決定了實(shí)數(shù)的表數(shù)精度。

B、內(nèi)存是按位編址的。

C、有符號和無符號整數(shù)的表數(shù)范圍是相同的。

D、int型在所有的計(jì)算機(jī)上都占4個(gè)字節(jié)的存儲單元。

E、編譯器按變量定義的類型對不同類型的變量分配不同大小的內(nèi)存空間。

F、內(nèi)存是按字節(jié)編址的。

G、對于同樣的尾數(shù),階碼的值越大,則浮點(diǎn)數(shù)所表示的數(shù)值的絕對值就越大。

H、sizeof是編譯時(shí)執(zhí)行的運(yùn)算符,不會導(dǎo)致額外的運(yùn)行時(shí)間開銷。

答案:【尾數(shù)決定了實(shí)數(shù)的表數(shù)范圍,階碼決定了實(shí)數(shù)的表數(shù)精度?!?2.單選題:程序的開發(fā)步驟中不包括

選項(xiàng):

A、撰寫文檔

B、運(yùn)行程序

C、編譯鏈接

D、程序測試

E、編輯(編寫代碼)

答案:【撰寫文檔】13.單選題:以下不屬于Codeblocks中用于調(diào)試程序的工具是

選項(xiàng):

A、run

B、build

C、runtocursor

D、nextline

E、stopdebugger

F、watches

答案:【run】14.單選題:C語言用sizeof計(jì)算變量在內(nèi)存中的字節(jié)數(shù),其中sizeof是()

選項(xiàng):

A、運(yùn)算符

B、一元運(yùn)算符

C、只需要一個(gè)操作數(shù)的運(yùn)算符

D、函數(shù)

E、語句

F、標(biāo)識符

G、變量

答案:【運(yùn)算符】15.單選題:若變量a是int類型,并執(zhí)行了語句:a='A'+1.6;,則正確的敘述是

選項(xiàng):

A、'A'+1.6的結(jié)果是浮點(diǎn)型

B、a的值還是整型

C、a的值是字符C

D、a的值是浮點(diǎn)型

E、不允許字符型和浮點(diǎn)型相加

答案:【'A'+1.6的結(jié)果是浮點(diǎn)型】16.單選題:下列變量定義中合法的是

選項(xiàng):

A、longao=0xfdaL;

B、short_a=1-.1e-1;

C、doubleb=1+5e2.5;

D、float2_and=1-e-3;

答案:【longao=0xfdaL;】17.單選題:下列說法正確的是

選項(xiàng):

A、在C語言中,變量必須先定義后使用。

B、一條變量定義語句可定義多個(gè)同類型的變量。

C、C89規(guī)定所有變量必須在第一條可執(zhí)行語句前定義。

D、const常量只能在定義時(shí)賦值。

E、實(shí)型常量的默認(rèn)類型是double類型。

F、一條變量定義語句不可以同時(shí)定義多個(gè)變量。

G、不同類型的變量分配的存儲空間大小都是相同的。

H、在C語言中,所有變量都必須在定義時(shí)進(jìn)行初始化。

I、變量在沒有初始化的時(shí)候,其值都是0

J、宏常量有數(shù)據(jù)類型,編譯器在宏替換時(shí)可以進(jìn)行類型檢查。

答案:【在C語言中,變量必須先定義后使用?!?8.單選題:以下選項(xiàng)中可作為C語言合法整數(shù)的是

選項(xiàng):

A、0xffa

B、10110B

C、038x

D、x2a2

答案:【0xffa】第2周測驗(yàn)1.單選題:設(shè)有以下定義,則下面給出的語句中錯誤的是inta=0;floatb=1.25;charc='A';#defined2

選項(xiàng):

A、d++;

B、(a+b)++;

C、a++;

D、(-a)++;

E、b++;

F、(a+1)++;

G、c++;

答案:【d++;】2.單選題:已知inta,b;并且有a=5%3;以及b=5/3;,則a和b的值分別是()。

選項(xiàng):

A、2和1

B、0和1.67

C、3和1

D、5和1

E、0和1

F、3和1.67

G、5和1.67

答案:【2和1】3.單選題:在C語言中,要求操作數(shù)必須是整型的運(yùn)算符是

選項(xiàng):

A、%

B、/

C、*

D、+

E、-

答案:【%】4.單選題:設(shè)有語句“inta=3;”,執(zhí)行語句“a+=a-=a*a;”后,變量a的值是

選項(xiàng):

A、-12

B、3

C、0

D、9

答案:【-12】5.單選題:以下程序的運(yùn)行結(jié)果是#includeintmain(){inta=12,b=3;floatx=18.5,y=4.5;printf("%f\n",(float)(a*b)/2);printf("%d\n",(int)x%(int)y);return0;}

選項(xiàng):

A、18.0000002

B、182

C、182.000000

D、18.0000002.000000

答案:【18.0000002】6.單選題:設(shè)a和b均為double型變量,且a=5.5、b=2.5,則表達(dá)式(int)a+b/b的值是

選項(xiàng):

A、6.000000

B、6.500000

C、6

D、5.500000

答案:【6.000000】7.單選題:以下非法的賦值語句是

選項(xiàng):

A、++(i+1);

B、x=(j--);

C、n=++i;

D、j++;

答案:【++(i+1);】8.單選題:下面程序的運(yùn)行結(jié)果是#includeintmain(){inta=2,b=3;floatx=3.5,y=2.5;printf("%f",(float)(a+b)/2+(int)x%(int)y);return0;}

選項(xiàng):

A、3.500000

B、3.000000

C、3.5

D、3

答案:【3.500000】9.單選題:程序運(yùn)行后的輸出結(jié)果是#includeintmain(){intm=3,n=4,x;x=m++;++n;x=x+8/n;printf("%d,%d\n",x,m);return0;}

選項(xiàng):

A、4,4

B、4,3

C、5,4

D、5,3

答案:【4,4】10.單選題:以下程序的輸出結(jié)果是:#includeintmain(){inta=1,b=2;a=a+b;b=a-b;a=a-b;printf("%d,%d\n",a,b);return0;}

選項(xiàng):

A、2,1

B、3,1

C、3,2

D、1,2

答案:【2,1】11.單選題:在C語言中對下面的語句而言,哪個(gè)說法是錯誤的?inta,b;

選項(xiàng):

A、變量a和b中的值都是0

B、變量a和b中都沒有數(shù)值

C、變量a和b中的值都是未知的隨機(jī)數(shù)

D、a和b都是整型變量

E、變量a和b占用的內(nèi)存空間的大小是相同的

答案:【變量a和b中的值都是0】12.單選題:十進(jìn)制3位數(shù)整數(shù)x,下面哪條語句能正確分離出它的十位上的數(shù)字d?

選項(xiàng):

A、d=(x-(x/100)*100)/10;

B、d=(x%100)/10;

C、d=(x/10)%10;

D、d=x%10;

E、d=(x-x%10)/10;

F、d=x%100;

答案:【d=(x-(x/100)*100)/10;】13.單選題:在C程序中如果要使用數(shù)學(xué)函數(shù),如sin(x),log(x)等,需要在程序中加入的語句是

選項(xiàng):

A、#include

B、#include

C、#define

D、#define

答案:【#include】14.單選題:若有以下定義,則表達(dá)式“a*b+d–c”的值的類型為#includeintmain(){chara;intb;floatc;doubled;....return0;}

選項(xiàng):

A、double

B、int

C、float

D、char

答案:【double】15.單選題:若以下選項(xiàng)中的變量已正確定義,則正確的賦值語句是

選項(xiàng):

A、x3=x2=x1=0;

B、x1=26.8%3;

C、1+2=x2;

D、x4=1+2=3;

答案:【x3=x2=x1=0;】16.單選題:在下面的C語言語句中,存在錯誤的是

選項(xiàng):

A、inta=b=10;

B、inta=10,b=10;

C、inta,b;a=b=10;

D、inta,b;a=10;b=10;

答案:【inta=b=10;】17.單選題:下面哪條語句可以生成0-9之間的隨機(jī)數(shù)

選項(xiàng):

A、magic=rand()%10;

B、magic=rand()%10+1;

C、magic=rand()/10;

D、magic=rand()/10+1;

答案:【magic=rand()%10;】18.單選題:程序運(yùn)行后的輸出結(jié)果是#includeintmain(){chara='a';printf("%c,",++a);printf("%c\n",a++);return0;}

選項(xiàng):

A、b,b

B、b,c

C、a,b

D、a,c

答案:【b,b】19.單選題:下列關(guān)于單目運(yùn)算符++、--的敘述中正確的是

選項(xiàng):

A、a++的運(yùn)算過程是:先使用變量a的值,然后再執(zhí)行a=a+1。

B、++a的運(yùn)算過程是:先使用變量a的值,然后再執(zhí)行a=a+1。

C、a++的運(yùn)算過程是:先執(zhí)行a=a+1,然后再使用變量a的值。

D、a++和++a都是最終使變量a執(zhí)行a=a+1,因此對于包含a++或++a的表達(dá)式而言(如j=a++;或者j=++a;),兩種情況下表達(dá)式的最終運(yùn)算結(jié)果一定是相同的。

答案:【a++的運(yùn)算過程是:先使用變量a的值,然后再執(zhí)行a=a+1?!?0.單選題:下列程序的輸出結(jié)果是#includeintmain(){inta=7,b=5;printf("%d\n",b/a);return0;}

選項(xiàng):

A、0

B、5

C、1

D、0.7

答案:【0】練兵區(qū)——單選題——不計(jì)入總分1.單選題:下面哪條語句可以生成0-9之間的隨機(jī)數(shù)

選項(xiàng):

A、magic=rand()%10;

B、magic=rand()%10+1;

C、magic=rand()/10;

D、magic=rand()/10+1;

答案:【magic=rand()%10;】2.單選題:以下程序的輸出結(jié)果是:#includeintmain(){inta=1,b=2;a=a+b;b=a-b;a=a-b;printf("%d,%d\n",a,b);return0;}

選項(xiàng):

A、2,1

B、3,1

C、3,2

D、1,2

答案:【2,1】3.單選題:下列關(guān)于單目運(yùn)算符++、--的敘述中正確的是

選項(xiàng):

A、a++的運(yùn)算過程是:先使用變量a的值,然后再執(zhí)行a=a+1。

B、++a的運(yùn)算過程是:先使用變量a的值,然后再執(zhí)行a=a+1。

C、a++的運(yùn)算過程是:先執(zhí)行a=a+1,然后再使用變量a的值。

D、a++和++a都是最終使變量a執(zhí)行a=a+1,因此對于包含a++或++a的表達(dá)式而言(如j=a++;或者j=++a;),兩種情況下表達(dá)式的最終運(yùn)算結(jié)果一定是相同的。

答案:【a++的運(yùn)算過程是:先使用變量a的值,然后再執(zhí)行a=a+1。】4.單選題:設(shè)有以下定義,則下面給出的語句中錯誤的是inta=0;floatb=1.25;charc='A';#defined2

選項(xiàng):

A、d++;

B、(a+b)++;

C、(-a)++;

D、(a+1)++;

E、a++;

F、b++;

G、c++;

答案:【d++;】5.單選題:在C程序中如果要使用數(shù)學(xué)函數(shù),如sin(x),log(x)等,需要在程序中加入的語句是

選項(xiàng):

A、#include

B、#include

C、#define

D、#define

答案:【#include】6.單選題:設(shè)有語句“inta=3;”,執(zhí)行語句“a+=a-=a*a;”后,變量a的值是

選項(xiàng):

A、-12

B、3

C、0

D、9

答案:【-12】7.單選題:以下非法的賦值語句是

選項(xiàng):

A、++(i+1);

B、x=(j--);

C、n=++i;

D、j++;

答案:【++(i+1);】8.單選題:下面程序的運(yùn)行結(jié)果是#includeintmain(){inta=2,b=3;floatx=3.5,y=2.5;printf("%f",(float)(a+b)/2+(int)x%(int)y);return0;}

選項(xiàng):

A、3.500000

B、3.000000

C、3.5

D、3

答案:【3.500000】9.單選題:程序運(yùn)行后的輸出結(jié)果是#includeintmain(){intm=3,n=4,x;x=m++;++n;x=x+8/n;printf("%d,%d\n",x,m);return0;}

選項(xiàng):

A、4,4

B、4,3

C、5,4

D、5,3

答案:【4,4】10.單選題:下列程序的輸出結(jié)果是#includeintmain(){inta=7,b=5;printf("%d\n",b/a);return0;}

選項(xiàng):

A、0

B、5

C、1

D、0.7

答案:【0】11.單選題:在C語言中對下面的語句而言,哪個(gè)說法是錯誤的?inta,b;

選項(xiàng):

A、變量a和b中的值都是0

B、變量a和b中都沒有數(shù)值

C、變量a和b中的值都是未知的隨機(jī)數(shù)

D、a和b都是整型變量

E、變量a和b占用的內(nèi)存空間的大小是相同的

答案:【變量a和b中的值都是0】12.單選題:十進(jìn)制3位數(shù)整數(shù)x,下面哪條語句能正確分離出它的十位上的數(shù)字d?

選項(xiàng):

A、d=(x-(x/100)*100)/10;

B、d=(x%100)/10;

C、d=(x/10)%10;

D、d=x%10;

E、d=(x-x%10)/10;

F、d=x%100;

答案:【d=(x-(x/100)*100)/10;】13.單選題:若有以下定義,則表達(dá)式“a*b+d–c”的值的類型為#includeintmain(){chara;intb;floatc;doubled;....return0;}

選項(xiàng):

A、double

B、int

C、float

D、char

答案:【double】14.單選題:在下面的C語言語句中,存在錯誤的是

選項(xiàng):

A、inta=b=10;

B、inta=10,b=10;

C、inta,b;a=b=10;

D、inta,b;a=10;b=10;

答案:【inta=b=10;】15.單選題:若以下選項(xiàng)中的變量已正確定義,則正確的賦值語句是

選項(xiàng):

A、x3=x2=x1=0;

B、x1=26.8%3;

C、1+2=x2;

D、x4=1+2=3;

答案:【x3=x2=x1=0;】16.單選題:程序運(yùn)行后的輸出結(jié)果是#includeintmain(){chara='a';printf("%c,",++a);printf("%c\n",a++);return0;}

選項(xiàng):

A、b,b

B、b,c

C、a,b

D、a,c

答案:【b,b】17.單選題:在C語言中,要求操作數(shù)必須是整型的運(yùn)算符是

選項(xiàng):

A、%

B、/

C、*

D、+

E、-

答案:【%】18.單選題:以下程序的運(yùn)行結(jié)果是#includeintmain(){inta=12,b=3;floatx=18.5,y=4.5;printf("%f\n",(float)(a*b)/2);printf("%d\n",(int)x%(int)y);return0;}

選項(xiàng):

A、18.0000002

B、182

C、182.000000

D、18.0000002.000000

答案:【18.0000002】19.單選題:設(shè)a和b均為double型變量,且a=5.5、b=2.5,則表達(dá)式(int)a+b/b的值是

選項(xiàng):

A、6.000000

B、6.500000

C、6

D、5.500000

答案:【6.000000】20.單選題:已知inta,b;并且有a=5%3;以及b=5/3;,則a和b的值分別是

選項(xiàng):

A、2和1

B、0和1.67

C、3和1

D、5和1

E、0和1

F、3和1.67

G、5和1.67

答案:【2和1】第3周——從鍵盤中來,到鍵盤中去,開始輸入和輸出啦第3周測驗(yàn)1.單選題:以下程序的輸出結(jié)果是#includeintmain(){inta=1234;printf("%2d\n",a);return0;}

選項(xiàng):

A、1234

B、12

C、34

D、提示出錯、無結(jié)果

答案:【1234】2.單選題:給出程序的運(yùn)行結(jié)果#includeintmain(){chara,b;ints;printf("pleaseinputaandb:\n");a=getchar();b=getchar();s=a+b;printf("a=%c,b=%c",a,b);return0;}程序運(yùn)行時(shí)從鍵盤輸入:1<空格>2<回車>

選項(xiàng):

A、a=1,b=

B、a=1,b=2

C、a=,b=2

D、輸出亂碼

答案:【a=1,b=】3.單選題:以下程序運(yùn)行后的輸出結(jié)果是#includeintmain(){inta;intc=10;floatf=100.0;doublex;a=f/=c*=(x=6.5);printf("%d,%d,%3.1f,%3.1f\n",a,c,f,x);return0;}

選項(xiàng):

A、1,65,1.5,6.5

B、1,65,1,6.5

C、1,65,1.0,6.5

D、2,65,1.5,6.5

答案:【1,65,1.5,6.5】4.單選題:以下程序的執(zhí)行結(jié)果是#includeintmain(){inta=5,b=4,x,y;x=2*a++;y=--b*2;printf("a=%d,x=%d\n",a,x);printf("b=%d,y=%d\n",b,y);return0;}

選項(xiàng):

A、a=6,x=10b=3,y=6

B、a=6,x=10b=3,y=8

C、a=6,x=12b=3,y=6

D、以上均不對

答案:【a=6,x=10b=3,y=6】5.單選題:在下列語句中存在錯誤的是

選項(xiàng):

A、inta,b;scanf("%d%f",&a,&b);

B、inta,b;scanf("%d%d",a,b);

C、inta,b;scanf("%d%d\n",&a,&b);printf("%d%d",a,b);

D、floata,b;scanf("%3.2f%4.2f",&a,&b);printf("%f%f",a,b);

E、floata,b;scanf("%f%f",&a,&b);printf("%f%f",a,b);

F、floata,b;scanf("%f%f",&a,&b);printf("a=%4.3f,b=%4.3f",a,b);

G、inta,b;scanf("%2d%2d",&a,&b);printf("a=%d,b=%d",a,b);

H、inta,b;scanf("%d,%d",&a,&b);printf("a=%2d,b=%2d",a,b);

I、inta,b;scanf("a=%d,b=%d",&a,&b);printf("a=%d,b=%d",a,b);

答案:【inta,b;scanf("%d%f",&a,&b);】6.單選題:設(shè)有語句“charc='\72';”,則變量c

選項(xiàng):

A、包含1個(gè)字符

B、包含2個(gè)字符

C、包含3個(gè)字符

D、不合法

答案:【包含1個(gè)字符】7.單選題:在調(diào)用printf函數(shù)輸出數(shù)據(jù)時(shí),當(dāng)數(shù)據(jù)的實(shí)際位寬小于printf函數(shù)中的指定位寬時(shí),下面敘述正確的是

選項(xiàng):

A、如果格式字符前面沒有負(fù)號,那么輸出的數(shù)據(jù)將會右對齊、左補(bǔ)空格;如果格式字符前面有負(fù)號,那么輸出的數(shù)據(jù)將會左對齊、右補(bǔ)空格。

B、如果格式字符前面沒有負(fù)號,那么輸出的數(shù)據(jù)將會左對齊、右補(bǔ)空格;如果格式字符前面有負(fù)號,那么輸出的數(shù)據(jù)將會右對齊、左補(bǔ)空格。

C、如果格式字符前面沒有負(fù)號,那么輸出的數(shù)據(jù)將會右對齊、左補(bǔ)0;如果格式字符前面有負(fù)號,那么輸出的數(shù)據(jù)將會左對齊、右補(bǔ)0。

D、如果格式字符前面沒有負(fù)號,那么輸出的數(shù)據(jù)將會左對齊、右補(bǔ)0;如果格式字符前面有負(fù)號,那么輸出的數(shù)據(jù)將會右對齊、左補(bǔ)0。

答案:【如果格式字符前面沒有負(fù)號,那么輸出的數(shù)據(jù)將會右對齊、左補(bǔ)空格;如果格式字符前面有負(fù)號,那么輸出的數(shù)據(jù)將會左對齊、右補(bǔ)空格。】8.單選題:有以下程序,運(yùn)行時(shí)若輸入為B,則輸出是#includeintmain(){charch;ch=getchar();ch=ch+32;printf("%c",ch);return0;}

選項(xiàng):

A、b

B、98

C、32

D、66

答案:【b】9.單選題:以下程序的輸出結(jié)果為#includeintmain(){inta=2,c=5;printf("a=%%d,b=%%d\n",a,c);return0;}

選項(xiàng):

A、a=%d,b=%d

B、a=%2,b=%5

C、a=2,b=5

D、a=%%d,b=%%d

答案:【a=%d,b=%d】10.單選題:以下程序的輸出結(jié)果為#includeintmain(){floata=1234.567,b=55.32;printf("a=%4.2f,b=%5.1f\n",a,b);return0;}

選項(xiàng):

A、a=1234.57,b=55.3

B、a=1234,b=55

C、a=1234.6,b=5.32

D、a=1234.567,b=55.32

答案:【a=1234.57,b=55.3】11.單選題:給出程序的運(yùn)行結(jié)果,程序運(yùn)行時(shí)從鍵盤輸入:54321<回車>#includeintmain(){inta,b,s;scanf("%2d%2d",&a,&b);s=a/b;printf("s=%d",s);return0;}

選項(xiàng):

A、1

B、1.6875

C、2

D、0

答案:【1】12.單選題:#includeintmain(){inta,b,c,d;scanf("%c%c%d,%d",&a,&b,&c,&d);printf("%c,%c,%c,%c\n",a,b,c,d);return0;}若運(yùn)行以上程序時(shí)從鍵盤上輸入:6565,66<回車>。則輸出結(jié)果是

選項(xiàng):

A、6,5,A,B

B、6,5,65,66

C、6,5,6,5

D、6,5,6,6

答案:【6,5,A,B】13.單選題:在C語言中,字符型數(shù)據(jù)在內(nèi)存中以()形式存放

選項(xiàng):

A、ASCII碼

B、國標(biāo)碼

C、BCD碼

D、反碼

答案:【ASCII碼】14.單選題:給出程序的運(yùn)行結(jié)果#includeintmain(){inta,b,c,d;charop1,op2,op3;intsum;printf("pleaseinput:a+b+c+d\n");scanf("%d%c%d%c%d%c%d",&a,&op1,&b,&op2,&c,&op3,&d);sum=a+b+c+d;printf("sum=%d",sum);return0;}程序運(yùn)行時(shí)從鍵盤輸入:1<回車>2+3+1<回車>

選項(xiàng):

A、7

B、1

C、3

D、6

答案:【7】15.單選題:給出程序的運(yùn)行結(jié)果#includeintmain(){inta,b,s;charop;scanf("%d%c%d",&a,&op,&b);s=a%b;printf("s=%d",s);return0;}程序運(yùn)行時(shí)從鍵盤輸入:15<回車>%5<回車>

選項(xiàng):

A、0

B、程序報(bào)錯

C、輸出一個(gè)隨機(jī)數(shù)

D、3

答案:【0】16.單選題:給出程序的運(yùn)行結(jié)果,程序運(yùn)行時(shí)從鍵盤輸入:45-12<回車>#includeintmain(){inta,b,sum;scanf("%d%*c%d",&a,&b);sum=a+b;printf("sum=%d",sum);return0;}

選項(xiàng):

A、57

B、輸出報(bào)錯

C、33

D、輸出一個(gè)隨機(jī)數(shù)

答案:【57】17.單選題:寫出下面程序的輸出結(jié)果#includeintmain(){intx=6,y,z;x*=18+1;printf("%d,",x--);x+=y=z=11;printf("%d",x);return0;}

選項(xiàng):

A、114,124

B、113,124

C、109,116

D、110,116

答案:【114,124】18.單選題:以下選項(xiàng)中合法的字符常量是

選項(xiàng):

A、'\010'

B、"B"

C、68

D、D

答案:【'\010'】19.單選題:有以下語句段#includeintmain(){intn1=10,n2=20;printf("_________",n1,n2);return0;}要求按以下格式輸出n1和n2的值,每個(gè)輸出行都是從第一列開始,則空白處代碼填寫正確的是運(yùn)行結(jié)果示例如下:n1=10n2=20

選項(xiàng):

A、n1=%d\nn2=%d

B、n1=%dn2=%d\n

C、n1=%d,n2=%d

D、n1=%dn2=%d\n

答案:【n1=%d\nn2=%d】20.單選題:程序運(yùn)行后的輸出結(jié)果是#includeintmain(){inta=666,b=888;printf("%d\n",a,b);return0;}

選項(xiàng):

A、666

B、錯誤信息

C、888

D、666,888

答案:【666】21.單選題:有如下語句,為使變量a的值為1,b的值為2,從鍵盤輸入數(shù)據(jù)的正確形式是scanf("a=%d,b=%d",&a,&b);

選項(xiàng):

A、a=1,b=2

B、12

C、1,2

D、a=1b=2

答案:【a=1,b=2】22.單選題:分析下列程序,寫出程序運(yùn)行結(jié)果#includeintmain(){charc1='a',c2='b',c3='c';printf("a%cb%cc%cabc\n",c1,c2,c3);return0;}

選項(xiàng):

A、aabbccabc

B、acbcabc

C、aabcabc

D、acbbcabc

答案:【aabbccabc】第3周編程題在線測試練兵區(qū)——單選題——不計(jì)入總分1.單選題:以下程序的執(zhí)行結(jié)果是#includeintmain(){inta=5,b=4,x,y;x=2*a++;y=--b*2;printf("a=%d,x=%d\n",a,x);printf("b=%d,y=%d\n",b,y);return0;}

選項(xiàng):

A、a=6,x=10b=3,y=6

B、a=6,x=10b=3,y=8

C、a=6,x=12b=3,y=6

D、以上均不對

答案:【a=6,x=10b=3,y=6】2.單選題:給出程序的運(yùn)行結(jié)果#includeintmain(){inta,b,c,d;charop1,op2,op3;intsum;printf("pleaseinput:a+b+c+d\n");scanf("%d%c%d%c%d%c%d",&a,&op1,&b,&op2,&c,&op3,&d);sum=a+b+c+d;printf("sum=%d",sum);return0;}程序運(yùn)行時(shí)從鍵盤輸入:1<回車>2+3+1<回車>

選項(xiàng):

A、7

B、1

C、3

D、6

答案:【7】3.單選題:寫出下面程序的輸出結(jié)果#includeintmain(){intx=6,y,z;x*=18+1;printf("%d,",x--);x+=y=z=11;printf("%d",x);return0;}

選項(xiàng):

A、114,124

B、113,124

C、109,116

D、110,116

答案:【114,124】4.單選題:在下列語句中存在錯誤的是

選項(xiàng):

A、inta,b;scanf("%d%f",&a,&b);

B、inta,b;scanf("%d%d",a,b);

C、inta,b;scanf("%d%d\n",&a,&b);printf("%d%d",a,b);

D、floata,b;scanf("%3.2f%4.2f",&a,&b);printf("%f%f",a,b);

E、floata,b;scanf("%f%f",&a,&b);printf("%f%f",a,b);

F、floata,b;scanf("%f%f",&a,&b);printf("a=%4.3f,b=%4.3f",a,b);

G、inta,b;scanf("%2d%2d",&a,&b);printf("a=%d,b=%d",a,b);

H、inta,b;scanf("%d,%d",&a,&b);printf("a=%2d,b=%2d",a,b);

I、inta,b;scanf("a=%d,b=%d",&a,&b);printf("a=%d,b=%d",a,b);

答案:【inta,b;scanf("%d%f",&a,&b);】5.單選題:有以下程序,運(yùn)行時(shí)若輸入為B,則輸出是#includeintmain(){charch;ch=getchar();ch=ch+32;printf("%c",ch);return0;}

選項(xiàng):

A、b

B、98

C、32

D、66

答案:【b】6.單選題:以下程序的輸出結(jié)果為#includeintmain(){inta=2,c=5;printf("a=%%d,b=%%d\n",a,c);return0;}

選項(xiàng):

A、a=%d,b=%d

B、a=%2,b=%5

C、a=2,b=5

D、a=%%d,b=%%d

答案:【a=%d,b=%d】7.單選題:分析下列程序,寫出程序運(yùn)行結(jié)果#includeintmain(){charc1='a',c2='b',c3='c';printf("a%cb%cc%cabc\n",c1,c2,c3);return0;}

選項(xiàng):

A、aabbccabc

B、acbcabc

C、aabcabc

D、acbbcabc

答案:【aabbccabc】8.單選題:給出程序的運(yùn)行結(jié)果#includeintmain(){inta,b,s;charop;scanf("%d%c%d",&a,&op,&b);s=a%b;printf("s=%d",s);return0;}程序運(yùn)行時(shí)從鍵盤輸入:15<回車>%5<回車>

選項(xiàng):

A、0

B、程序報(bào)錯

C、輸出一個(gè)隨機(jī)數(shù)

D、3

答案:【0】9.單選題:給出程序的運(yùn)行結(jié)果,程序運(yùn)行時(shí)從鍵盤輸入:54321<回車>#includeintmain(){inta,b,s;scanf("%2d%2d",&a,&b);s=a/b;printf("s=%d",s);return0;}

選項(xiàng):

A、1

B、1.6875

C、2

D、0

答案:【1】10.單選題:#includeintmain(){inta,b,c,d;scanf("%c%c%d,%d",&a,&b,&c,&d);printf("%c,%c,%c,%c\n",a,b,c,d);return0;}若運(yùn)行以上程序時(shí)從鍵盤上輸入:6565,66<回車>。則輸出結(jié)果是

選項(xiàng):

A、6,5,A,B

B、6,5,65,66

C、6,5,6,5

D、6,5,6,6

答案:【6,5,A,B】11.單選題:有如下語句,為使變量a的值為1,b的值為2,從鍵盤輸入數(shù)據(jù)的正確形式是scanf("a=%d,b=%d",&a,&b)

選項(xiàng):

A、a=1,b=2

B、12

C、1,2

D、a=1b=2

答案:【a=1,b=2】12.單選題:給出程序的運(yùn)行結(jié)果程序運(yùn)行時(shí)從鍵盤輸入:1<空格>2<回車>#includeintmain(){chara,b;ints;printf("pleaseinputaandb:\n");a=getchar();b=getchar();s=a+b;printf("a=%c,b=%c",a,b);return0;}

選項(xiàng):

A、a=1,b=

B、a=1,b=2

C、a=,b=2

D、輸出亂碼

答案:【a=1,b=】13.單選題:以下選項(xiàng)中合法的字符常量是

選項(xiàng):

A、'\010'

B、"B"

C、68

D、D

答案:【'\010'】14.單選題:以下程序的輸出結(jié)果為#includeintmain(){floata=1234.567,b=55.32;printf("a=%4.2f,b=%5.1f\n",a,b);return0;}

選項(xiàng):

A、a=1234.57,b=55.3

B、a=1234,b=55

C、a=1234.6,b=5.32

D、a=1234.567,b=55.32

答案:【a=1234.57,b=55.3】15.單選題:給出程序的運(yùn)行結(jié)果,程序運(yùn)行時(shí)從鍵盤輸入:45-12<回車>#includeintmain(){inta,b,sum;scanf("%d%*c%d",&a,&b);sum=a+b;printf("sum=%d",sum);return0;}

選項(xiàng):

A、57

B、輸出報(bào)錯

C、33

D、輸出一個(gè)隨機(jī)數(shù)

答案:【57】16.單選題:有以下語句段#includeintmain(){intn1=10,n2=20;printf("_________",n1,n2);return0;}要求按以下格式輸出n1和n2的值,每個(gè)輸出行都是從第一列開始,則空白處代碼填寫正確的是運(yùn)行結(jié)果示例如下:n1=10n2=20

選項(xiàng):

A、n1=%d\nn2=%d

B、n1=%dn2=%d\n

C、n1=%d,n2=%d

D、n1=%dn2=%d\n

答案:【n1=%d\nn2=%d】17.單選題:設(shè)有語句“charc='\72';”,則變量c

選項(xiàng):

A、包含1個(gè)字符

B、包含2個(gè)字符

C、包含3個(gè)字符

D、不合法

答案:【包含1個(gè)字符】18.單選題:以下程序的輸出結(jié)果是#includeintmain(){inta=1234;printf("%2d\n",a);return0;}

選項(xiàng):

A、1234

B、12

C、34

D、提示出錯、無結(jié)果

答案:【1234】19.單選題:以下程序運(yùn)行后的輸出結(jié)果是#includeintmain(){inta;intc=10;floatf=100.0;doublex;a=f/=c*=(x=6.5);printf("%d,%d,%3.1f,%3.1f\n",a,c,f,x);return0;}

選項(xiàng):

A、1,65,1.5,6.5

B、1,65,1,6.5

C、1,65,1.0,6.5

D、2,65,1.5,6.5

答案:【1,65,1.5,6.5】20.單選題:在C語言中,字符型數(shù)據(jù)在內(nèi)存中以()形式存放

選項(xiàng):

A、ASCII碼

B、國標(biāo)碼

C、BCD碼

D、反碼

答案:【ASCII碼】21.單選題:程序運(yùn)行后的輸出結(jié)果是#includeintmain(){inta=666,b=888;printf("%d\n",a,b);return0;}

選項(xiàng):

A、666

B、錯誤信息

C、888

D、666,888

答案:【666】22.單選題:在調(diào)用printf函數(shù)輸出數(shù)據(jù)時(shí),當(dāng)數(shù)據(jù)的實(shí)際位寬小于printf函數(shù)中的指定位寬時(shí),下面敘述正確的是

選項(xiàng):

A、如果格式字符前面沒有負(fù)號,那么輸出的數(shù)據(jù)將會右對齊、左補(bǔ)空格;如果格式字符前面有負(fù)號,那么輸出的數(shù)據(jù)將會左對齊、右補(bǔ)空格。

B、如果格式字符前面沒有負(fù)號,那么輸出的數(shù)據(jù)將會左對齊、右補(bǔ)空格;如果格式字符前面有負(fù)號,那么輸出的數(shù)據(jù)將會右對齊、左補(bǔ)空格。

C、如果格式字符前面沒有負(fù)號,那么輸出的數(shù)據(jù)將會右對齊、左補(bǔ)0;如果格式字符前面有負(fù)號,那么輸出的數(shù)據(jù)將會左對齊、右補(bǔ)0。

D、如果格式字符前面沒有負(fù)號,那么輸出的數(shù)據(jù)將會左對齊、右補(bǔ)0;如果格式字符前面有負(fù)號,那么輸出的數(shù)據(jù)將會右對齊、左補(bǔ)0。

答案:【如果格式字符前面沒有負(fù)號,那么輸出的數(shù)據(jù)將會右對齊、左補(bǔ)空格;如果格式字符前面有負(fù)號,那么輸出的數(shù)據(jù)將會左對齊、右補(bǔ)空格。】練兵區(qū)——編程題——不計(jì)入總分第4周測驗(yàn)1.單選題:下面程序運(yùn)行后的輸出結(jié)果是#includeintmain(){inta=3,b=4,c=5,d=2;if(a>b){if(b>c){printf("%d",d+++1);}else{printf("%d",++d+1);}}printf("%d\n",d);return0;}

選項(xiàng):

A、2

B、3

C、43

D、44

答案:【2】2.單選題:執(zhí)行以下程序后的輸出結(jié)果為#includeintmain(){inta=1,b=0;switch(a){case1:switch(b){case0:printf("**0**");break;case1:printf("**1**");break;}case2:printf("**2**");break;}return0;}

選項(xiàng):

A、**0****2**

B、**0**

C、**0****1****2**

D、有語法錯誤

答案:【**0****2**】3.單選題:以下程序運(yùn)行后的輸出結(jié)果是#includeintmain(){inta=5,b=4,c=3,d;d=(a>b>c);printf("%d\n",d);return0;}

選項(xiàng):

A、0

B、1

C、5

D、4

E、3

答案:【0】4.單選題:寫出下面程序的輸出結(jié)果#includeintmain(){intx=1,y=0,a=0,b=0;switch(x){case1:switch(y){case0:a++;case1:b++;}case2:a++;b++;}printf("a=%d,b=%d\n",a,b);return0;}

選項(xiàng):

A、a=2,b=2

B、a=2,b=1

C、a=1,b=1

D、a=1,b=0

答案:【a=2,b=2】5.單選題:下列復(fù)合語句中,不能實(shí)現(xiàn)兩數(shù)交換的是

選項(xiàng):

A、{a=b;b=a;}

B、{b=a*b;a=b/a;b=b/a;}

C、{t=a;a=b;b=t;}

D、{a=a+b;b=a–b;a=a–b;}

答案:【{a=b;b=a;}】6.單選題:若x和y代表整型數(shù),以下表達(dá)式中不能正確表示數(shù)學(xué)關(guān)系|x-y|<10的是

選項(xiàng):

A、(x-y)<-10||!(y-x)>10

B、fabs(x-y)<10

C、x-y>-10&&x-y<10

D、(x-y)*(x-y)<100

答案:【(x-y)<-10||!(y-x)>10】7.單選題:編程設(shè)計(jì)一個(gè)簡單的計(jì)算器程序,要求用戶從鍵盤輸入如下形式的表達(dá)式:操作數(shù)1運(yùn)算符op操作數(shù)2然后,計(jì)算并輸出表達(dá)式的值指定的運(yùn)算符為:加(+)減(-)乘(*)除(/)代碼如下,所給程序是否存在錯誤,若有,找出錯誤所在并改正。#includeintmain(){floatdata1,data2;charop;printf("Pleaseentertheexpression:");scanf("%f%c%f",&data1,&op,&data2);/*%c前有一個(gè)空格*/switch(op){case'+':printf("%f+%f=%f\n",data1,data2,data1+data2);break;case'-':printf("%f-%f=%f\n",data1,data2,data1-data2);break;case'*':printf("%f*%f=%f\n",data1,data2,data1*data2);break;case'/':printf("%f/%f=%f\n",data1,data2,data1/data2);break;default:printf("Invalidoperator!\n");}return0;}

選項(xiàng):

A、第20行語句有錯誤,改成:if(fabs(data2)<=EPS)printf("Divisionbyzero!\n");elseprintf("%f/%f=%f\n",data1,data2,data1/data2);同時(shí),第1行語句下方應(yīng)加入#include#defineEPS1e-6

B、default分支缺少break語句

C、沒有錯誤

D、第20行語句有錯誤,改成:if(data2=0)printf("Divisionbyzero!\n");elseprintf("%f/%f=%f\n",data1,data2,data1/data2);

答案:【第20行語句有錯誤,改成:if(fabs(data2)<=EPS)printf("Divisionbyzero!\n");elseprintf("%f/%f=%f\n",data1,data2,data1/data2);同時(shí),第1行語句下方應(yīng)加入#include#defineEPS1e-6】8.單選題:從鍵盤輸入三角形的三邊長為a,b,c,按下面公式計(jì)算并輸出三角形的面積。程序代碼如下,但程序運(yùn)行后輸出結(jié)果不正確,請找出有問題的語句。#include#includeintmain(){floata,b,c;floats,area;printf("Inputa,b,c:");scanf("%f,%f,%f",&a,&b,&c);if(a+b>c&&b+c>a&&a+c>b){s=1/2*(a+b+c);area=sqrt(s*(s-a)*(s-b)*(s-c));printf("area=%.2f\n",area);}else{printf("Itisnotatriangle\n");}return0;}

選項(xiàng):

A、第11行:s=1/2*(a+b+c);

B、第9行:if(a+b>c&&b+c>a&&a+c>b)

C、第12行:area=sqrt(s*(s-a)*(s-b)*(s-c));

D、第8行:scanf("%f,%f,%f",&a,&b,&c);

答案:【第11行:s=1/2*(a+b+c);】9.單選題:下列說法錯誤的是()。

選項(xiàng):

A、case后的“常量表達(dá)式”的類型只能是整型。

B、若case后面的語句省略不寫,則表示它什么也不做。

C、switch語句中的break和default可有可無。

D、每個(gè)case后的“常量表達(dá)式”的類型應(yīng)該與switch后括號內(nèi)表達(dá)式的類型一致。

E、程序執(zhí)行到switch語句時(shí),先計(jì)算表達(dá)式的值,然后自上而下尋找與該值匹配的case常量,找到后則按順序執(zhí)行此case后的所有語句,而不再進(jìn)行判斷,直到遇break語句或右花括號}為止。

F、若所有的case常量都不能與表達(dá)式的值相匹配,那么就執(zhí)行default后面的語句。通常用于處理不在合理區(qū)間內(nèi)的非法數(shù)據(jù)。

G、每個(gè)case后的常量只起語句標(biāo)號的作用,所以case常量的值必須互不相同,而且在每個(gè)case的語句序列后都有break的情況下,改變case常量出現(xiàn)的次序,不影響程序的運(yùn)行結(jié)果。

H、case后面的表達(dá)式不能是含有變量的關(guān)系表達(dá)式和邏輯表達(dá)式,它不能像if語句那樣起到判斷表達(dá)式真假的作用。

答案:【case后的“常量表達(dá)式”的類型只能是整型。】10.單選題:以下程序的功能是計(jì)算一元二次方程的根。代碼如下,請將第10行標(biāo)號處缺少的語句填寫完整。#include#include#include#defineEPS1e-6intmain(){floata,b,c,disc,p,q;printf("Pleaseenterthecoefficientsa,b,c:");scanf("%f,%f,%f",&a,&b,&c);_________________________________/*a=0時(shí),輸出"不是二次方程"*/{printf("Itisnotaquadraticequation!\n");exit(0);/*C標(biāo)準(zhǔn)庫函數(shù),用于終止整個(gè)程序的執(zhí)行,強(qiáng)制返回操作系統(tǒng)*/}disc=b*b-4*a*c;/*計(jì)算判別式*/p=-b/(2*a);q=sqrt(fabs(disc))/(2*a);if(fabs(disc)<=EPS)/*判別式等于0時(shí),輸出兩相等實(shí)根*/{printf("x1=x2=%.2f\n",p);}else{if(disc>EPS)/*判別式大于0時(shí),輸出兩不等實(shí)根*/{printf("x1=%.2f,x2=%.2f\n",p+q,p-q);}else/*判別式小于0時(shí),輸出兩共軛復(fù)根*/{printf("x1=%.2f+%.2fi,",p,q);printf("x2=%.2f-%.2fi\n",p,q);}}return0;}

選項(xiàng):

A、if(fabs(a)<=EPS)

B、if(a<=EPS)

C、if(a=0)

D、if(a<=EPS||a>=-EPS)

答案:【if(fabs(a)<=EPS)】11.單選題:以下程序運(yùn)行后的輸出結(jié)果是#includeintmain(){inta=1,b=2,m=0,n=0,k;k=(n=b>a)||(m=a

選項(xiàng):

A、1,0

B、0,0

C、0,1

D、1,1

答案:【1,0】12.單選題:編程計(jì)算下面的分段函數(shù),根據(jù)從鍵盤輸入的x值,在屏幕上輸出y值。程序代碼如下,為完成以上功能,請將第13行標(biāo)號處缺少的代碼填寫完整。#include#includeintmain(){intx;doubley;printf("Inputx:");scanf("%d",&x);//輸入一個(gè)整數(shù)if(x>0){y=exp(-x);//如果大于0,計(jì)算y=exp(-x)的值}_____________{y=1;//x=0,則y=1}else{y=-exp(x);//x<0,則y=-exp(x)}printf("y=%f\n",y);return0;}

選項(xiàng):

A、elseif(x==0)

B、elseif(x=0)

C、if(x==0)

D、if(x=0)

答案:【elseif(x==0)】13.單選題:執(zhí)行下列程序,k輸入為1時(shí)的輸出結(jié)果是#includeintmain(){intk;scanf("%d",&k);switch(k){case1:printf("%d",k++);case2:printf("%d",k++);case3:printf("%d",k++);break;default:printf("Full!");}return0;}

選項(xiàng):

A、123

B、1

C、2

D、3

答案:【123】14.單選題:程序功能:從鍵盤輸入一個(gè)字符,判別它是否為大寫字母。如果是,將它轉(zhuǎn)換成小寫字母,如果不是,不轉(zhuǎn)換。在屏幕上輸出最后得到的字符。程序代碼如下,為實(shí)現(xiàn)上述功能,請將第8行標(biāo)號處缺少的語句填寫完整。#includeintmain(){charc;printf("Pleaseinputacharacter:");scanf("%c",&c);if(c>='A'&&c<='Z')c=_______________;printf("%c\n",c);return0;}

選項(xiàng):

A、c+32

B、c+48

C、C+65

D、C+97

答案:【c+32】15.單選題:下面程序代碼的功能是判斷輸入整數(shù)的正負(fù)性和奇偶性,請將第19行和22行標(biāo)號處缺少的代碼填寫完整。#includeintmain(){intm;printf("Inputm:");scanf("%d",&m);//輸入一個(gè)整數(shù)if(m>0)//是否為正數(shù){if(m%2==0)//是正數(shù),且能被2整除,則是正偶數(shù){printf("%disapositiveeven\n",m);}else//不能被2整除,則是正奇數(shù){printf("%disapositiveodd\n",m);}}_______________//判斷是否為負(fù)數(shù){_______________{printf("%disanegativeeven\n",m);//是負(fù)偶數(shù)}else{printf("%disanegativeodd\n",m);//是負(fù)奇數(shù)}}else{printf("%diszero.Itisaneven\n",m);}return0;}

選項(xiàng):

A、第19行代碼:elseif(0<0)第22行代碼:if(m%2==0)

B、第19行代碼:if(0<0)第22行代碼:if(m%2==0)

C、第19行代碼:elseif(0<0)第22行代碼:if(m%2!=0)

D、第19行代碼:if(0<0)第22行代碼:if(m%2!=0)

答案:【第19行代碼:elseif(0<0)第22行代碼:if(m%2==0)】16.單選題:以下程序運(yùn)行后的輸出結(jié)果是#includeintmain(){inta,b,c;a=10;b=20;c=(a%b<1)||(a/b>1);printf("%d,%d,%d",a%b,a/b,c);return0;}

選項(xiàng):

A、10,0,0

B、10,1,0

C、10,0,1

D、10,1,1

答案:【10,0,0】17.單選題:程序代碼如下:#includeintmain(){inta,b;printf("pleaseinputaandb:\n");scanf("%d%d",&a,&b);printf("theoutputdatais%d\n",a從鍵盤輸入以下數(shù)據(jù):2<回車>7<回車>則程序輸出為

選項(xiàng):

A、theoutputdatais7

B、theoutputdatais2

C、theoutputdatais1

D、theoutputdatais0

答案:【theoutputdatais7】練兵區(qū)——單選題——不計(jì)入總分1.單選題:下列說法錯誤的是()。

選項(xiàng):

A、case后的“常量表達(dá)式”的類型只能是整型。

B、若case后面的語句省略不寫,則表示它什么也不做。

C、switch語句中的break和default可有可無。

D、每個(gè)case后的“常量表達(dá)式”的類型應(yīng)該與switch后括號內(nèi)表達(dá)式的類型一致。

E、程序執(zhí)行到switch語句時(shí),先計(jì)算表達(dá)式的值,然后自上而下尋找與該值匹配的case常量,找到后則按順序執(zhí)行此case后的所有語句,而不再進(jìn)行判斷,直到遇break語句或右花括號}為止。

F、若所有的case常量都不能與表達(dá)式的值相匹配,那么就執(zhí)行default后面的語句。通常用于處理不在合理區(qū)間內(nèi)的非法數(shù)據(jù)。

G、每個(gè)case后的常量只起語句標(biāo)號的作用,所以case常量的值必須互不相同,而且在每個(gè)case的語句序列后都有break的情況下,改變case常量出現(xiàn)的次序,不影響程序的運(yùn)行結(jié)果。

H、case后面的表達(dá)式不能是含有變量的關(guān)系表達(dá)式和邏輯表達(dá)式,它不能像if語句那樣起到判斷表達(dá)式真假的作用。

答案:【case后的“常量表達(dá)式”的類型只能是整型?!?.單選題:下面程序運(yùn)行后的輸出結(jié)果是#includeintmain(){inta=3,b=4,c=5,d=2;if(a>b){if(b>c){printf("%d",d+++1);}else{printf("%d",++d+1);}}printf("%d\n",d);return0;}

選項(xiàng):

A、2

B、3

C、43

D、44

答案:【2】3.單選題:以下程序運(yùn)行后的輸出結(jié)果是#includeintmain(){inta=5,b=4,c=3,d;d=(a>b>c);printf("%d\n",d);return0;}

選項(xiàng):

A、0

B、1

C、5

D、4

E、3

答案:【0】4.單選題:下列復(fù)合語句中,不能實(shí)現(xiàn)兩數(shù)交換的是

選項(xiàng):

A、{a=b;b=a;}

B、{b=a*b;a=b/a;b=b/a;}

C、{t=a;a=b;b=t;}

D、{a=a+b;b=a–b;a=a–b;}

答案:【{a=b;b=a;}】5.單選題:編程設(shè)計(jì)一個(gè)簡單的計(jì)算器程序,要求用戶從鍵盤輸入如下形式的表達(dá)式:操作數(shù)1運(yùn)算符op操作數(shù)2然后,計(jì)算并輸出表達(dá)式的值指定的運(yùn)算符為:加(+)減(-)乘(*)除(/)代碼如下,所給程序是否存在錯誤,若有,找出錯誤所在并改正。#includeintmain(){floatdata1,data2;charop;printf("Pleaseentertheexpression:");scanf("%f%c%f",&data1,&op,&data2);/*%c前有一個(gè)空格*/switch(op){case'+':printf("%f+%f=%f\n",data1,data2,data1+data2);break;case'-':printf("%f-%f=%f\n",data1,data2,data1-data2);break;case'*':printf("%f*%f=%f\n",data1,data2,data1*data2);break;case'/':printf("%f/%f=%f\n",data1,data2,data1/data2);break;default:printf("Invalidoperator!\n");}return0;}

選項(xiàng):

A、第20行語句有錯誤,改成:if(fabs(data2)<=EPS)printf("Divisionbyzero!\n");elseprintf("%f/%f=%f\n",data1,data2,data1/data2);同時(shí),第1行語句下方應(yīng)加入#include#defineEPS1e-6

B、default分支缺少break語句

C、沒有錯誤

D、第20行語句有錯誤,改成:if(data2=0)printf("Divisionbyzero!\n");elseprintf("%f/%f=%f\n",data1,data2,data1/data2);

答案:【第20行語句有錯誤,改成:if(fabs(data2)<=EPS)printf("Divisionbyzero!\n");elseprintf("%f/%f=%f\n",data1,data2,data1/data2);同時(shí),第1行語句下方應(yīng)加入#include#defineEPS1e-6】6.單選題:以下程序運(yùn)行后的輸出結(jié)果是#includeintmain(){inta,b,c;a=10;b=20;c=(a%b<1)||(a/b>1);printf("%d,%d,%d",a%b,a/b,c);return0;}

選項(xiàng):

A、10

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論