C語言程序設計(西安工程大學)智慧樹知到答案章節(jié)測試2023年_第1頁
C語言程序設計(西安工程大學)智慧樹知到答案章節(jié)測試2023年_第2頁
C語言程序設計(西安工程大學)智慧樹知到答案章節(jié)測試2023年_第3頁
C語言程序設計(西安工程大學)智慧樹知到答案章節(jié)測試2023年_第4頁
C語言程序設計(西安工程大學)智慧樹知到答案章節(jié)測試2023年_第5頁
已閱讀5頁,還剩9頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

第一章測試C語言程序的基本單位是()

A:字符

B:程序行

C:語句

D:函數(shù)

答案:DC語言規(guī)定,在一個源程序中main函數(shù)的位置

(

)

A:

必須在預處理命令的后面

B:可以在其他函數(shù)之前或之后

C:必須在最后

D:必須在最開始

答案:B對于一個正常運行的C程序,以下敘述中正確的是()

A:程序的執(zhí)行總是從程序的第一個函數(shù)開始,在main函數(shù)結束

B:程序的執(zhí)行總是從程序的第一個函數(shù)開始,在程序的最后一個函數(shù)中結束

C:程序的執(zhí)行總是從main函數(shù)開始,在main函數(shù)結束

D:程序的執(zhí)行總是從main函數(shù)開始,在程序的最后一個函數(shù)中結束

答案:C以下敘述錯誤的是(

A:一個C程序只能有一個主函數(shù)

B:C程序在書寫時,有嚴格的縮進要求,否則不能編譯通過

C:C程序的主函數(shù)必須用main作為函數(shù)名

D:一個C程序可以包含多個不同名的函數(shù)

答案:B下列說法正確的是(

A:

C程序的書寫格式自由,一個語句可以分寫在多行上

B:一個函數(shù)的函數(shù)體必須要有變量定義和執(zhí)行部分

C:

C程序的書寫格式嚴格限制,一行內必須寫一個語句

D:一個函數(shù)的函數(shù)體必須要有執(zhí)行部分,可以沒有變量定義

答案:A下列關于注釋行的描述中,正確的是(

A:單行注釋以符號“/”開頭,以符號“/”結尾

B:注釋只能對程序中的某一行代碼進行解釋

C:注釋只在C語言源程序中有效,在編譯時會被編譯器忽略

D:單行注釋以“//”開頭,“//”后面是注釋內容

答案:CD關于計算機語言的描述,正確的是(

A:匯編語言比機器語言執(zhí)行速度快

B:機器語言因為是面向機器的低級語言,所以執(zhí)行速度慢

C:匯編語言已將機器語言符號化,所以它與機器無關

D:機器語言由0和1組成,執(zhí)行速度快

答案:D用C語言編寫的程序(

A:經(jīng)過編譯或解釋才能被執(zhí)行

B:經(jīng)過編譯、連接后被執(zhí)行

C:可直接被執(zhí)行

D:是一個源程序文件

答案:B連接程序將一個C程序的所有目標程序和系統(tǒng)的庫文件以及系統(tǒng)提供的其他信息連接起來,最終生成一個可執(zhí)行的二進制文件,它的后綴是(

A:.lib

B:.exe

C:.obj

D:.cpp

答案:B第二章測試C語言提供的數(shù)據(jù)類型關鍵字有()

A:Double

B:Char

C:short

D:integer

答案:C若有說明和語句:inta=5;a++;此處表達式a++的值是()。

A:7

B:4

C:6

D:5

答案:D在C語言中,要求運算數(shù)必須是整型的運算符是()。

A:<

B:/

C:%

D:!

答案:C以下有4個用戶標識符,其中合法的一個是()

A:f2_G3

B:short

C:for

D:4d

答案:A在C語言中,合法的字符常量是()。

A:‘84’

B:‘C’

C:“”

D:‘ab’

答案:B若已定義x和y為double類型,且x=1,則表達式:y=x+3/2的值是()。

A:2

B:1

C:2.5

D:2.0

答案:A若有以下定義:chara;intb;floatc;doubled;則表達式a*b+d-c值的類型為()。

A:float

B:int

C:double

D:char

答案:C以下選項中可作為C語言合法整數(shù)的是()。

A:10110B

B:0xffa

C:0386

D:x2a2

答案:B以下選項中可作為C語言合法常量的是()。

A:e1

B:-80

C:-8e1.0

D:-80.0e

答案:B表達式3.6-5/2+1.2+5%2的值是()。

A:3.3

B:3.8

C:4.3

D:4.8

答案:B第三章測試閱讀下面的程序#include<stdio.h>voidmain(){inti,j;scanf(“%3d%2d”,&i,&j);printf(“i=%d,j=%d”,i,j);}如果從鍵盤上輸入1234567,則程序的運行結果是(

A:i=1,j=2

B:i=123,j=45

C:i=123,j=4567

D:i=1234,j=567

答案:B以下可以實現(xiàn)“輸入一個字符到變量ch”的語句是(

)

A:getchar(”%c”,&ch)

B:ch=getchar();

C:scanf(”%c”,ch)

D:getchar(ch);

答案:B有如下程序

#include<stdio.h>

voidmain()

{

floatx=5.0,y;

if(x<0.0)y=0.0;

elseif(x<10.0)y=1.0/x;

elsey=1.0;

printf(“%f”,y);

}該程序的輸出結果是(

A:1.000000

B:0.50000

C:0.000000

D:0.200000

答案:D有程序:#include<stdio.h>

voidmain()

{intx=1,y=0;

switch(x)

{

case1:

switch(y)

{

case0:printf(“first”);break;

case1:printf(“second”);break;

}

case2:printf(“third”);

}}的運行結果是(

A:first

third

B:second

third

C:first

D:first

second

答案:A有程序:#include<stdio.h>

voidmain()

{inti=10,j=0;

do

{j=j+1;

i–;

}while(i>2);

printf(“%d”,j);}的運行結果是(

A:50

B:51

C:8

D:52

答案:C下面程序的輸出結果是(

)

#include<stdio.h>

voidmain()

{

inty=9;

for(;y>0;y–)

{

if(y%3==0)

{

printf(“%d”,–y);

continue;}

}

}

A:936

B:741

C:875421

D:852

答案:D執(zhí)行下列的程序段后,輸出結果是(

)inta=5;while(a–);printf(“%d”,a);

A:4321

B:0

C:54321

D:-1

答案:D下面程序的運行結果為(

)。

#include<stdio.h>voidmain(){

intn;

for(n=1;n<=10;n++)

{if(n%3==0)break;

printf(“%d”,n);

}

A:12457810

B:12345678910

C:12

D:369

答案:CA:選項C

B:選項B

C:選項A

D:選項D

答案:D第四章測試有定義語句:intb;charc[10];,則正確的輸入語句是(

)。

A:

scanf(“%d%s”,b,&c);

B:

scanf(“%d%s”,&b,&c);

C:scanf(“%d%s”,&b,c);

D:scanf(“%d%s”,b,c);

答案:C若有以下說明:inta[12]={1,2,3,4,5,6,7,8,9,10,11,12};charc=‘a’,d,g;則數(shù)值為4的表達式是()。

A:a[4]

B:a[‘d’-‘c’]

C:a[‘d’-c]

D:a[g-c]

答案:C以下程序的輸出結果是()。

A:3,5,7

B:1,4,7

C:3,6,9

D:1,5,9

答案:A下列描述中不正確的是()。

A:字符型數(shù)組中可以存放字符串

B:不能在賦值語句中通過賦值運算符”=“對字符型數(shù)組進行整體賦值

C:可以對字符型數(shù)組進行整體輸入、輸出

D:可以對整型數(shù)組進行整體輸入、輸出

答案:D當執(zhí)行下面的程序時,如果輸入ABC,則輸出結果是()。#include“stdio.h”#include“string.h”main(){charss[10]=“1,2,3,4,5”;gets(ss);strcat(ss,“6789”);printf(“%s”,ss);}

A:ABC6789

B:ABC67

C:12345ABC6

D:ABC456789

答案:A假定int類型變量占用兩個字節(jié),其有定義:intx[10]={0,2,4};,則數(shù)組x在內存中所占字節(jié)數(shù)是()。

A:6

B:10

C:20

D:3

答案:C以下數(shù)組定義中不正確的是()。

A:intc[100][100]={0};

B:inta[2][3];

C:intb[][3]={0,1,2,3};

D:intd[3][]={{1,2},{1,2,3},{1,2,3,4}};

答案:D已有定義:chara[]=“xyz”,b[]={‘x’,‘y’,‘z’};,以下敘述中正確的是()。

A:a數(shù)組長度大于b數(shù)組長度

B:其余選項說法都不對

C:數(shù)組a和b的長度相同

D:a數(shù)組長度小于b數(shù)組長度

答案:A以下敘述中錯誤的是()。

A:當程序執(zhí)行中,數(shù)組元素的下標超出所定義的下標范圍時,系統(tǒng)將給出“下標越界”的出錯信

B:對于double類型數(shù)組,不可以直接用數(shù)組名對數(shù)組進行整體輸入或輸出

C:數(shù)組名代表的是數(shù)組所占存儲區(qū)的首地址,其值不可改變

D:可以通過賦初值的方式確定數(shù)組元素的個數(shù)

答案:A若要求從鍵盤讀入含有空格字符的字符串,應使用函數(shù)(

)。

A:getc()

B:getchar()

C:scanf()

D:gets()

答案:D若有定義語句:inta[3][6];,按在內存中的存放順序,a數(shù)組的第10個元素是(

)。

A:a[0][4]

B:a[0][3]

C:a[1][4]

D:a[1][3]

答案:D第五章測試下面程序的輸出是(

)intfun3(intx){staticinta=3;

a+=x;

return(a);

}voidmain(){intk=2,m=1,n;

n=fun3(k);

n=fun3(m);

printf(“%d”,n);

}

A:6

B:4

C:9

D:3

答案:A如果一個函數(shù)位于C程序文件的上部,在該函數(shù)體內聲明部分后的復合語句中定義了一個變量,則該變量(

)

A:為局部變量,只在該復合語句中有效

B:定義無效,為非法變量

C:為全局變量,在本程序文件范圍內有效

D:為局部變量,只在該函數(shù)內有效

答案:A下面函數(shù)的功能是(

)sss(chars[],t[]){

inti=0;while((s[i])&&(t[i])&&(t[i]==s[i]))

i++;return

(s[i]-t[i]);}

A:將字符串s接續(xù)到字符串t中

B:比較兩個字符串的大小

C:將字符串s復制到字符串t中

D:求字符串的長度

答案:B執(zhí)行下列程序inta=3,b=4;

voidfun(intx1,intx2){printf(″%d,%d″,x1+x2,b);}voidmain(){inta=5,b=6;fun(a,b);}后輸出的結果是(

A:11,1

B:11,4

C:3,4

D:11,6

答案:B以下敘述中,不正確的是(

A:使用staticfloata定義的外部變量存放在內存中的靜態(tài)存儲區(qū)

B:使用floatd定義的內部變量存放在內存中的動態(tài)存儲區(qū)

C:使用floatb定義的外部變量存放在內存中的動態(tài)存儲區(qū)

D:使用staticfloatc定義的內部變量存放在內存中的靜態(tài)存儲區(qū)

答案:C以下程序的主函數(shù)中調用了在其前面定義的fun函數(shù)#include<stdio.h>voidmain(){

doublea[15],k;k=fun(a);}則以下選項中錯誤的fun函數(shù)首部是(

)

A:doublefun(doublea[])

B:doublefun(doublea[15])

C:doublefun(doublea)

D:doublefun(double*a)

答案:CC語言源程序的某文件中定義的全局變量的作用域為(

)。

A:本函數(shù)的全部范圍

B:本程序的所有文件的范圍

C:從定義該變量的位置開始到本文件結束

D:本文件的全部范圍

答案:CC語言中函數(shù)返回值的類型是由(

)決定的。

A:函數(shù)定義時指定的類型

B:調用該函數(shù)時的實參的數(shù)據(jù)類型

C:return語句中的表達式類型

D:形參的數(shù)據(jù)類型

答案:A#include<stdio.h>f(intb[],intn){inti,r=0;

for(i=0;i<=n;i++)r=r+b[i];returnr;

}voidmain(){

intx,a[]={2,3,4,5,6,7,8,9};

x=f(a,3);

printf(“%d”,x);

}上面程序的輸出結果是(

A:5

B:14

C:9

D:20

答案:B第六章測試已有定義inta=2,p1=&a,p2=&a;,下面不能正確執(zhí)行的賦值語句是()

A:p1=a;

B:a=p1+p2;

C:p1=p2;

D:a=p1(*p2);

答案:A下面判斷正確的是()。

A:chars=”girl”;

等價于chars;s=”girl”;

B:chars[4]=“boy”,t[4]=“boy”;等價于chars[4]=t[4]=“boy”

C:chars=”girl”;

等價于char*s;s=“girl”;

D:chars[10]={”girl”};

等價于chars[10];s[10]={“girl”};

答案:C有以下程序

#include<stdio.h>

main(){

intm=1,n=2,p=&m,q=&n,r;

r=p;p=q;q=r;

printf(“%d,%d,%d,%d”,m,n,p,*q);}程序運行后的輸出結果是()

A:2,1,2,1

B:1,2,1,2

C:2,1,1,2

D:1,2,2,1

答案:D若有以下定義和語句:ints[4][5],(ps)[5];ps=s;則對s數(shù)組元素的正確引用形式是()。

A:(ps+1)+3

B:ps+1

C:ps[0][2]

D:*(ps+3)

答案:Cvoidss(chars,chart){while(s){if(s==t)s=t-‘a’+‘A’;s++;}}voidmain(){charstr[100]=“abeddfefdbd”,c=‘d’;ss(str,c);printf(”%s“,str);}程序送行后的輸出結果是()。

A:abcAAfefAbA

B:abeDDfefDbD

C:Abcddfefdbd

D:ABCDDEFEDBD

答案:B下列程序段的輸出結果是(

)。#include“stdio.h”voidfun(intx,inty){printf(“%d%d”,x,y);x=3;y=4;}voidmain(){intx=1,y=2;fun(&y,&x);printf(“%d%d”,x,y);}

A:2112

B:1234

C:1212

D:2143

答案:D下列程序的輸出結果是()。#include“stdio.h”voidmain(){chara[10]={9,8,7,6,5,4,3,2,1,0},p=a+5;printf(“%d”,–p);}

A:a[4]的地址

B:3

C:5

D:非法

答案:C有以下程序

#include“stdio.h”#include“string.h”

voidmain(intargc,

char*argv[])

{

intm,length=0;

for(m=1;m<argc;m++)length+=strlen(argv[m]);

printf(“%d”,length);}

程序編譯連接后生成的可執(zhí)行文件是file.exe,若執(zhí)行時輸入帶參數(shù)的命令行是:

file

1234

567

89,則運行結果是()。

A:22

B:13

C:17

D:9

答案:B有以下函數(shù):;charfun(chars){…returns;}該函數(shù)的返回值是()。

A:無確定值

B:形參s自身的地址值

C:形參s中存放的地址值

D:一個臨時存儲單元的地址

答案:C若有以下說明語句:char*language[]={“FORTRAN”,”BASIC”,”PASCAL”,”JAVA”,”C”};char**q;q=language+2;則語句printf(“%s”,*q)輸出的是()

A:字符串PASCAL

B:格式說明不正確,無法得到確定的輸出

C:language[2]元素的值,它是字符串PASCAL的首地址

D:language[2]元素的地址;

答案:A第七章測試定義以下結構體類型struct

s{

char

b;

float

f;};則語句printf(“%d”,sizeof(struct

s))的輸出結果為()。

A:4

B:5

C:3

D:6

答案:B當定義一個結構體變量時,系統(tǒng)為它分配的內存空間是(

)。

A:結構中一個成員所需的內存容量

B:結構體中占內存容量最大者所需的容量

C:結構中各成員所需內存容量之和

D:結構中第一個成員所需的內存容量

答案:C定義以下結構體數(shù)組

structc

{intx;

inty;

}s[2]={1,3,2,7};語句printf(“%d”,s[0].x*s[1].x)的輸出結果為(

)。

A:21

B:2

C:14

D:6

答案:B下面程序的運行結果是()。struct

KeyWord{

charKey[20];

intID;}kw[]={“void”,1,“char”,2,“int”,3,“float”,4,“double”,5};main(){

printf(“%c,%d”,kw[3].Key[0],kw[3].ID);}

A:n,3

B:f,4

C:l,4

D:i,3

答案:B如果有下面的定義和賦值,則使用()不可以輸出n中data的值。struct

SNode{

unsignedid;

intdata;}n,p;p=&n;

A:p.data

B:p->data

C:n.data

D:(p).data

答案:A根據(jù)下面的定義,能輸出Mary的語句是()。

structperson

{

charname[9];

intage;

};structpersonclass[5]={“John”,17,“Paul”,19,“Mary”,18,“Adam”,16};

A:printf(“%s”,class[3].name);

B:printf(“%s”,class[1].name);

C:printf(“%s”,class[2].name);

D:printf(“%s”,class[0].name);

答案:C定義以下結構體數(shù)組

structdate

{intyear;

intmonth;

intday;};

structs

{structdatebirthday;

charname[20];

}x[4]={{2008,10,1,“guangzhou”},{2009,12,25,“Tianjin”}};語句printf(“%s,%d,%d,%d”,x[0].name,x[1].birthday.year);的輸出結果為()。

A:guangzhou,2008

B:Tianjin,2008

C:guangzhou,2009

D:Tianjin,2009

答案:CC語言定義類型名的關鍵字是()

A:name

B:struct

C:typedef

D:define

答案:C結構體變量做函數(shù)參數(shù),是參傳遞給形參的是()

A:其余選項都不對

B:結構體變量所有成員的值

C:結構體變量第一個成員的值

D:結構體變量的首地址

答案:B關于鏈表,以下說法錯誤的是()

A:鏈表中的節(jié)點可以刪除

B:鏈表是一種動態(tài)數(shù)據(jù)結構

C:malloc函數(shù)是鏈表專用的處理函數(shù),不能用在其他地方

D:在鏈表中插入一個節(jié)點不需要改變其他節(jié)點的物理位置

答案:C第八章測

溫馨提示

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

評論

0/150

提交評論