2021年度C語言程序設(shè)計電大考試必備_第1頁
2021年度C語言程序設(shè)計電大考試必備_第2頁
2021年度C語言程序設(shè)計電大考試必備_第3頁
2021年度C語言程序設(shè)計電大考試必備_第4頁
2021年度C語言程序設(shè)計電大考試必備_第5頁
已閱讀5頁,還剩31頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

C++語言程序設(shè)計電大考試必備

1

3.邏輯表達式x>0||

C++語言程序設(shè)計課程期末針對性訓(xùn)練

y==5相反表達式為(B)

一、單選題(每小題2o

A.x<=0||y!=5

分,共20分)

B.x<=0&&y!=5

1.在每個C++程序中都

C.x>0||y!=5

必要包具有這樣一種函數(shù),該

D.x>0&&y==5

函數(shù)函數(shù)名為(A)。

4.假定p是一種指向

A.mainB.

float型數(shù)據(jù)指針,則p+1所

MAINC.nameD.

指數(shù)據(jù)地址比p所指數(shù)據(jù)地

function

址大(C)個字節(jié)。

2.設(shè)x和y均為bool

A.1B.2

量,則x&&y為真條件是

C.4D.8

(D)o

5,枚舉類型中每個枚

A.其中一種為假

舉常量值都是一種(A

B.其中一種為真

A.整數(shù)B.

C.它們均為假

浮點數(shù)C.字符

D.它們均為真

2

D.邏輯值數(shù)調(diào)用實參,傳遞給形參是

6.循環(huán)體至少被執(zhí)行(A)o

一次語句為(C)語句。A.數(shù)組首地址

A.for循環(huán)B.B.數(shù)組中第一種元素值

while循環(huán)C.do循環(huán)C.數(shù)組所有元素

D.任一種循環(huán)值D.數(shù)組元素個數(shù)

7.在下面字符數(shù)組定9.假定AB為一種類,

義中,(D)語句有語法錯則執(zhí)行“ABa(4),b[5],

誤。*p[2];”語句時,自動調(diào)用

A.char該類構(gòu)造函多次數(shù)為

a[20]="abcdefg";B.(A)o

chara口="x+y=55.”;A.6B.7

C.charC.9D.11

a[15]={'1'2'};10.當(dāng)使用fstream流

D.chara[10]=,類5'定;義一種流對象并打開一

8.若用數(shù)組名作為函種磁盤文獻時,文獻隱含打開

3

方式為(D)ox==10o

A.ios::inB.4.每個字符指針變量

ios::outC.ios::in占用內(nèi)存一個字節(jié)。

|ios::outD.沒有5.執(zhí)行"typedefint

二、填空題(每小題2DataType;”語句后,在使用

分,共20分)int定義整型變量地方都可

1.若需要定義一種標(biāo)以使用標(biāo)記符DataType

記符常量,并且使C++可以進來定義整型變量。

行類型檢查,則應(yīng)在定義語句6.對于在所有函數(shù)定

開始使用保存字const義之外定義變量,若沒有被初

___O始化則系統(tǒng)隱含對它賦予初

2.算術(shù)表達式平+4/7值-1為0。

3a

相應(yīng)C++表達式為7.假定p所指對象值為

(x*y*y)/(3*a)+4*卜1。25,p+1所指對象值為46,

3.邏輯表達式x>y&&則執(zhí)行“*(p++);”語句后,

x!=10相反表達式為x〈二yP所指對象值為46。

4

8.假定一種構(gòu)造類型定營后輸出成果(每小題6分,

義為structA{inta;共30分)

double*b;A*c;};",則1.

該類型大小為12字#include<iostream.h>

節(jié)。voidmain(){

9.假定一維數(shù)組定義為intsl=0,s2=l;

“int則該數(shù)組所for(inti=l;

含元素個數(shù)為8。i<=6;i++){sl+=i;s2*=i;}

10.若while循環(huán)語句

開始cout?sl?,,J?s2?endl;

為“while(i++<=10),,,若i)

初值為0,同步在循環(huán)體中不輸出成果:21,720

會修改i值,則其循環(huán)體將被2.

重復(fù)執(zhí)行11次后#include<iostream.h>

正常結(jié)束。voidmain(){

三、寫出下列每個程序運int

a[10]={68,79,86,65,46,9411,15},{9,20,3,4}};

,37,78,60,53);intm=a[0][0];

intc=0;for(int

for(inti=0;i<3;i++)

i=0;i<10;i++)for(int

j=0;j<4;j++)

if(a[i]>=60)c++;

if(a[i][j]>m)m=a[i][j];

cout?,,c=,,?c?endl;

)cout?m?endl;

輸出成果:紇z)

3.輸出成果:20

#include<iostream.h>4.

voidmain(){#include<iostream.h>

intvoidmain(){

a[3][4]={{1,2,7,8},{5,6,inta=10,b=15;

6

cout?a?,a[8]={6,19,4,12,20,5,18,

Y<b<〈’’;25};

{a*=3;int*p二a;

intb=a+20;for(p=a;

cout?a?,p<a+8;p++)

Y<b<X'';if(*p<10)

)cout?*p?J

cout?a?,cout?endl;

J?b?endl;)

)

輸出成果:645

輸出成果:10153050

四、寫出下列每個函數(shù)功

3015

能(每小題8分,共24分)

5.

1.boolWB(inta[],

#include<iostream.h>

intn,intx){

voidmain(){

for(int

int

7

i=0;i<n;i++)returna[k];

if(a[i]==x))

returntrue;函數(shù)功能:求出數(shù)組

returnfalse;a中n個元素最大值并返回。

)3.假定構(gòu)造類型Dnode

函數(shù)功能:從數(shù)組a中data域為結(jié)點值域,next

中順序查找值為x元素,若查域為結(jié)點指針域。

找成功則返回真,否則返回DNode*QB(intn)

假。(

2.intLJ(inta[],intif(n==0)

n){{returnNULL;}

intk=0;DNode*f=new

for(intDNode;

i=l;i<n;i++)cin?f->data;

DNode*p=f;

if(a[i]>a[k])k=i;while(一n){

8

(13,20)就是其中一組解,并

p=p->next=newDNode;按此格式輸出每組解。

答:

cin?p->data;#include<iostream.h>

)voidmain()

p->next=NULL;(

returnf;inta,b;

函數(shù)功能:建立一種具備

n個結(jié)點鏈表,每個結(jié)點值依for(a=6;a<=30;a++)

次由鍵盤輸入,該函數(shù)返回其

表頭指針。for(b=15;b<=36;b++)

五、按題目規(guī)定編寫程序

(6分)if(2*a+5*b==126)

已知6WaW30、15Wbcout。'(','<<b<<')

W36,求出滿足不定方程??endl;

2a+5b=126所有整數(shù)組解。如

9

訓(xùn)練第二套3.聲明或定義一種內(nèi)

一、單選題(每小題2

聯(lián)函數(shù)時,必要在函數(shù)開始使

分,共20分)

用保存字(D)。

1.枚舉類型中每個枚

A.staticB.

舉常量值都是一種(A)

constC.extern

值。

D.inline

A.整數(shù)B.

4.在下面函數(shù)聲明中,

浮點數(shù)C.字符

存在著語法錯誤是(D)o

D.邏輯

A.BC(inta,int);

2.設(shè)x和y均為bool

B.BC(int,int);

量,則邏輯表達式x||y為

C.BC(int,int=5);

假條件是(C)。

D.BC(intx;inty);

A.它們均為真

5.假定a為一種整型數(shù)

B.其中一種為真

組名,則元素@[4]與(C)

C.它們均為假

表達等價。

D.其中一種為假

A.a+4B.

10

*a+4C.*(a+4)D.strcmp()

D.*(a+16)8.預(yù)解決命令在程序

6.下面循環(huán)語句執(zhí)行中都是以(B)字符開頭。

結(jié)束后輸出i值為(B)A?*B.#

值。C.&D.@

for(inti=0;i<n;9.假定有定義ustruct

i++)if(i>n/2)BOOK{chartitle[40];float

{cout?i?endl;break;}price;};則不對的變量定

A.n/2B.義語句為(D)o

n/2+1C.n-lD.A.BOOK

nx;;B.BOOK

7.將兩個字符串連接x={〃C++

起來構(gòu)成一種字符串時,選用Programming”,27.0);

(C)函數(shù)。C.BOOK*x=new

A.strlen()B.BOOK;D.BOOKx=new

strcpy()C.strcat()BOOK;

11

10.假定AB為一種類,8

px為指向該類動態(tài)對象數(shù)組3.表達式x=x+l表達到

指針,該數(shù)組長度為n,則執(zhí)增量表達式為±±x

行udelete[]px;”語句時,

自動調(diào)用該類析構(gòu)函多次數(shù)4.邏輯表達式a<=b||

為(B)ob==15相反表達式為a>b

A.1B.n&&b!=15。

C.n-1D.n+15.假定一種二維數(shù)組

二、填空題(每小題2定義為“char*a[5][4];”,

分,共20分)則該數(shù)組所含元素個數(shù)為

1.已知‘A'Z'ASCH碼20所占存儲空間

為65-90,當(dāng)執(zhí)行“char字節(jié)數(shù)為80。

ch=14*4+12;cout?ch;n語6.當(dāng)函數(shù)中局部

句序列后,得到輸出成果為變量沒有被賦初值時,

D它值是不擬定。

2.double類型長度為7.假定一種構(gòu)造類型定

12

義為“structA{doublea,b;營后輸出成果(每小題6分,

A*c;};“,則該類型大小為共30分)

20字節(jié)。1.

8.假定要訪問一種構(gòu)#include<iostream.h>

造指針P所指對象中數(shù)據(jù)成voidmain(){

員data,則表達辦法為_ints=0;

p->dataofor(int

9.假定顧客沒有給一種i=l;i<=8;i=+2)

名為AB類定義構(gòu)造函數(shù),則s+=i*i;

系統(tǒng)為其隱含定義構(gòu)造函數(shù)

為AB(){}ocout?〃s=〃<<s?endl;

10.當(dāng)在程序中執(zhí)行到)

break語句時,就及時結(jié)束輸出成果:s=84

本層循環(huán)類語句或switch語2.

句執(zhí)行。#include<iostream.h>

三、寫出下列每個程序運voidmain(){

inti=l,s=0;intbl,b2;

while(s<20){bl=b2=a[0];

if(i%2!=0)for(inti=l;

s+=i;i<8;i++){

i++;

)if(a[i]<bl)bl=a[i];

cout?i?A,z?s?endl;if(a[i]>b2)b2=a[i];

))

輸出成果:10,25

3.cout?bl?,,,?b2?endl;

#include<iostream.h>)

voidmain(){輸出成果:14,82

int4.

a[8]={36,25,48,14,55,20,#include<iomanip.h>

47,82};intLB(int*a,int

n){5.

ints=l;#include<iostream.h>

for(intstructWorker{

i=0;i<n;i++){charname[15];

s*=*a〃姓名

a++;intage;

)〃年齡

returns;floatpay;

)〃工資

voidmain(){);

intvoidmainO(

a[5]={l,2,3,4,5};Worker

x={,,wangfong,z,46,1640);

cout?LB(a,5)?endl;Workery,*p;

)y=x;p=&x;

輸出成果:120

cout?y.name?,intc=0;

Y<y.age?,for(int

'?y.pay?endl;i=0;i<n;i++)

cout?p->name?,if(a[i]>=k)c++;

*?p->age+5?,returnc;

*?p->pay-300?endl;)

)函數(shù)功能:記錄出數(shù)組

輸出成果:wangfong46an個元素中不不大于等于參

1640數(shù)k值元素個數(shù)并返回。

wangfong512.boolSG(intx)

1340{//x為不不大于等

四、寫出下列每個函數(shù)功于2整數(shù)

能(每小題8分,共24分)int

1.intWC(inta[],inta=int(sqrt(x));//sqrt(x)

n,intk){為求x平方根

inti=2;voidQA(Worker

while(i<=a){a[],intn){

if(x%i==0)for(inti=0;

break;i<n;i++)

i++;

cin?a[i].name?a[i].age

if(i>a)return?a[i].pay;

true;elsereturnfalse;

函數(shù)功能:從鍵盤上^

函數(shù)功能:判斷x與否為入n個Worker構(gòu)造類型記錄

一種素數(shù)(或質(zhì)數(shù)),若是則依次保存到一維數(shù)組a相應(yīng)

返回真,否則返回假。元素中。

3.假定構(gòu)造類型五、按題目規(guī)定編寫函數(shù)

Worker中name域表達姓名,(6分)

age域表達年齡,pay域表達假定函數(shù)聲明為“void

工資。Print(inta[],intn);“,

17

在函數(shù)體中按下標(biāo)從大到小cout?endl;

順序輸出數(shù)組a中n個元素}

值,并規(guī)定每行輸出6個元

素,固然最后一行可以局限性

6個。

答:voidPrint(inta[],

intn)

(

inti,j=0;

for(i=n-l;i>=0;

i—){

cout?a[i]?A,;

if(++j%6==0)

cout?endl;

18

訓(xùn)練第三套3.設(shè)x是一種bool型

一、單選題(每小題2

邏輯量,y值為10,則表達

分,共20分)

式x&&y值為(C)o

1.由C++源程序文獻編

A.1B.0

譯而成目的文獻缺省擴展名

C.與x值相似D.與x

為(A)o

值相反

A.objB.

4.for語句可以被改寫

likC.exeD.

為(D)語句。

cpp

A.復(fù)合B.

2.程序運營中需要從

ifC.switchD.

鍵盤上輸入多于一種數(shù)據(jù)時,

while

各數(shù)據(jù)之間應(yīng)使用(D)符

5.在下面do循環(huán)語句

號作為分隔符。

中,其循環(huán)體被執(zhí)行次數(shù)為

A.空格或逗號

(A)o

B.逗號或回車C.逗號

inti=0;doi++;

或分號D.空格或回車

while(i*i<10);

19

A.4B.3(B)是“voidBC(inta,

C.5D.2intb);"重載函數(shù)。

6.在下面一維數(shù)組定A.intBC(intx,

義中,(C)語句有語法錯inty);B.

誤。voidBC(inta,charb);

A.intC.floatBC(inta,

a[]={l,2,3};B.intintb,intc=0);D.int

a[10]={0};BC(inta,intb=0);

C.inta[]9.當(dāng)類中一種字符指

D.inta[5];針成員指向具備n個字節(jié)存

7.下面(C儲空間時,它所能存儲字符串

字不能作為函數(shù)返回類型。最大長度為(C)O

A.voidB.A.nB.n+1

intC.newD.C.n-lD.n-2

long10.假定AB為一種類,

8.下面函數(shù)聲明中,則該類拷貝構(gòu)造函數(shù)聲明語

20

句為(D)。反表達式為x+y<=5

A.AB&(ABx);5.假定一種二維數(shù)組

B.AB(ABx);C.AB(AB*定義為“inta[3][6];”,

x);D.AB(AB&);則該數(shù)組具有18個

二、填空題(每小題2元素。

分,共20分)6.執(zhí)行“typedefint

1.執(zhí)行ABC[20];w語句把ABC定義

acout?char('A'+3);"語為具備20個整型元素數(shù)組

句后得到輸出成果為類型。

Do7.假定p所指對象值為

2.在C++每個程序行背36,p+1所指對象值為49,

面或單獨一行開始使用注釋則*++p值為49。

標(biāo)記符為〃。8.假定a是一種一維數(shù)

3.表達式float(25)/4組,則a[i]指針訪問方式為

值為6.25。*(a+i)

4.關(guān)系表達式x+y>5相9.對一種類中數(shù)據(jù)成員

21

,I)

初始化可以通過構(gòu)造函數(shù)中case+:

初始化表實現(xiàn),也可以通過構(gòu)returna+b;

造函數(shù)中函數(shù)體實現(xiàn)。case一:

10.當(dāng)一種類對象離開returna~b;

它作用域時,系統(tǒng)將自動調(diào)用default:

該類析構(gòu)函數(shù)。{cout<<〃操作符op出錯,退

三、寫出下列每個程序運出運營!";exit(1);)

營后輸出成果(每小題6分,)

共30分))

1.voidmain(){

#include<iostream.h>intx=20,y=6;

#include<stdlib.h>cout?SD(x,y,'+')??

intSD(inta,intb,'<<SD(x,y,',)?endl;

charop){)

switch(op){運營成果:2614

2.

#include<iostream.h>

cout?pl?endl;

#include<string.h>)

voidmain(){運營成果:worker

char*

3.

a[5]={"student","worker”

#include<iostream.h>

,cadre,soldier,apen

intWF(intx,inty)

〃};

(

char*pl;

x=x+y;

pl=a[0];

y=x+y;

for(int

returnx+y;

i=l;i<5;i++){

)

voidmain(){

if(strcmp(a[i],pl)>0)

pl=a[i];

23

cout?WF(8,5)?endl;

)cout?,zs=,z?s?endl;

運營成果:31)

4.運營成果:24

#include<iomanip.h>5.

constintn=9;#include<iomanip.h>

voidmain(){voidmain(){

intint*d=new

a[n]={2,4,6,8,10,12,14,1int[5];

6,18};inti;

ints=0;

for(inti=0;for(i=0;i<5;i++){

i<n;i++){

if(i%3==0)d[i]=2*i+l;

s+=a[i];

)cout?d[i]?,';

24

)returny;

cout?endl;)

delete[]d;函數(shù)功能:求出從鍵盤上

)輸入n個整數(shù)平方和并返回。

運營成果:13579

四、寫出下列每個函數(shù)功2.boolWE(inta[],int

能(每小題8分,共24分)b[],intn){

1.floatFI(intn)for(int

{//n為不不大于等于1i=0;i<n;i++)

整數(shù)

floatx,y=0;if(a[i]!=b[i])break;

do(if(i==n)

cin?x;returntrue;returnfalse;

y+=x*x;)

)函數(shù)功能:判斷具備n

while(一n>0);個元素兩個數(shù)組a和b中相

應(yīng)元素值與否所有相等,若是其平均值元素個數(shù)并由引用

則返回真,否則返回假。參數(shù)m帶回。

3.voidLK(inta[],五、按題目規(guī)定編寫函數(shù)

intn,int&m){(6分)

floats=0;假定一種函數(shù)聲明為

inti;“voidAD(inta[],int

n);”,規(guī)定把數(shù)組a中n個

for(i=0;i<n;i++)s+=a[i];元素值按相反順序仍保存在

s/=n;數(shù)組a中。

m=0;答:voidAD(inta[],int

n)

for(i=0;i<n;i++)|

if(a[i]>=s)m++;for(i=0;i<n/2;

)i++){

函數(shù)功能:記錄出數(shù)組aintx=a[i];

前n個元素中不不大于等于a[i]=a[n-l-i];

26

a[n-l-i]=x;

)

27

訓(xùn)練第四套a[10]={0};

一、單選題(每小題2

C.inta[];

分,共20分)

D.inta[5];

1.C++程序基本功能模

4.在下面語句或語句

塊為(D)。

組中,(B)不對的。

A.表達式B.

A.inta[5];

標(biāo)記符C.語句

B.intM=10;inta[M];

D.函數(shù)

C.int

2.存儲如下數(shù)據(jù),占用

a[]={l,5,10,45};D.

存儲字節(jié)最多是(A)。

constintN=12;inta[N];

A.0B.'0'

5.C++語言中每條簡樸

C.〃0〃D.'\n'

語句以8^作為結(jié)束

3.在下面一維數(shù)組定

符。

義中,有語法錯誤是(C)o

A.逗號B.

A.int

分號C.空格D

a[]={l,2,3};B.int

換行符

28

6.含隨機函數(shù)表達式i++)

rand()%20值在(C)區(qū)間for(intj=i;

內(nèi)。j<n;j++)S;

A.1~19B.A.n2B.

1-20C.0?19(n+l)/2C.n(n-l)/2

D.0~20D.n(n+l)/2

7.當(dāng)解決一種特定問9.若函數(shù)聲明為

題時,若循環(huán)次數(shù)已知,則普double*function(),則該

通采用(A)來解決。函數(shù)返回值為(B)o

A.for循環(huán)B.A.實數(shù)型B.

while循環(huán)C.do循環(huán)實數(shù)指針型C.函數(shù)指

D.switch語句針型D.數(shù)組型

8.在下面循環(huán)語句中10.假定變量m定義為

內(nèi)層循環(huán)體S語句執(zhí)行總次“int則定義變量p

數(shù)為(D)。對的語句為(A)o

for(inti=0;i<n;A.intp=&m;B

int*p=&m;C.into

&p=*m;D.int*p=m;5.若x=5,y=15,貝x>y

二、填空題(每小題2邏輯值為假(false或0)

分,共20分)_O

1.C++語言中每條復(fù)合6.假定一種一維數(shù)組定

語句以}(或右花括號)作義為“char*a[8];",則該

為結(jié)束符。數(shù)組所占用存儲空間字節(jié)數(shù)

2?假定一種枚舉類型定為32。

義為“enum7.假定x=10,則表達式

RA{ab,ac,ad,ae};w,則ac2+x++值為12。

值為1。8.假定p所指對象值為

3.十進制數(shù)25表達到25,p+1所指對象值為46,

符合C++語言規(guī)則八進制數(shù)則*D++值為25。

為031。9.假定要動態(tài)分派一

4.表達式x=x+y表達到種類型為Worker具備n個元

復(fù)合賦值表達式為x+=y素數(shù)組,并由r指向這個動態(tài)

30

,

數(shù)組,則使用語句為Worker*case'Bn:

r=newWorker[n];。caseb:

10.設(shè)px指向一種類動cout?,zgood!,z?zz;break

態(tài)分派對象,則執(zhí)行“deletecase'C':

px;”語句時,將自動調(diào)用該casec:

類析構(gòu)函數(shù)。cout?z'pass!"<<'r;break

三、寫出下列每個程序運default:

營后輸出成果(每小題6分,cout?"bad!”;break;

共30分))

1.)

#include<iostream.h>voidmain(){

voidSB(charch){SB(,A,);

switch(ch){SB(,c,);SB(,b,);

case'A':cout?endl;

casea:)

cout?,,well!z,?,A;break;運營成果:well!pass

good!運營成果:55

2.

#include<iostream.h>

3.#include<iomanip.h>

voidmain(){

voidmain()

int

(

a[6]={36,25,48,14,55,40}

int

f

a[9]={3,5,7,9,11,13,15,1

intbl=a[0];

7,25};

for(int

int*p=a;

i=l;i<6;i++)

for(int

i=0;i<9;i++)

if(a[i]>bl)bl=a[i];

if((i+l)%3==0)

cout?,,bl=,,?bl?endl;

溫馨提示

  • 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論