C語言程序設(shè)計(西安工程大學(xué))智慧樹知到答案2024年西安工程大學(xué)_第1頁
C語言程序設(shè)計(西安工程大學(xué))智慧樹知到答案2024年西安工程大學(xué)_第2頁
C語言程序設(shè)計(西安工程大學(xué))智慧樹知到答案2024年西安工程大學(xué)_第3頁
C語言程序設(shè)計(西安工程大學(xué))智慧樹知到答案2024年西安工程大學(xué)_第4頁
C語言程序設(shè)計(西安工程大學(xué))智慧樹知到答案2024年西安工程大學(xué)_第5頁
已閱讀5頁,還剩29頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

C語言程序設(shè)計(西安工程大學(xué))西安工程大學(xué)智慧樹知到答案2024年第一章測試

C語言程序的基本單位是()

A:語句

B:字符C:程序行D:函數(shù)

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

(

)

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

必須在預(yù)處理命令的后面

C:必須在最后

D:必須在最開始

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

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

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

A:一個C程序可以包含多個不同名的函數(shù)B:C程序在書寫時,有嚴(yán)格的縮進(jìn)要求,否則不能編譯通過C:C程序的主函數(shù)必須用main作為函數(shù)名D:一個C程序只能有一個主函數(shù)

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

A:

C程序的書寫格式自由,一個語句可以分寫在多行上B:一個函數(shù)的函數(shù)體必須要有執(zhí)行部分,可以沒有變量定義C:

C程序的書寫格式嚴(yán)格限制,一行內(nèi)必須寫一個語句D:一個函數(shù)的函數(shù)體必須要有變量定義和執(zhí)行部分

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

A:單行注釋以符號“/*”開頭,以符號“*/”結(jié)尾B:注釋只能對程序中的某一行代碼進(jìn)行解釋C:注釋只在C語言源程序中有效,在編譯時會被編譯器忽略D:單行注釋以“//”開頭,“//”后面是注釋內(nèi)容

答案:CD關(guān)于計算機(jī)語言的描述,正確的是(

A:匯編語言比機(jī)器語言執(zhí)行速度快B:機(jī)器語言由0和1組成,執(zhí)行速度快C:機(jī)器語言因為是面向機(jī)器的低級語言,所以執(zhí)行速度慢D:匯編語言已將機(jī)器語言符號化,所以它與機(jī)器無關(guān)

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

A:可直接被執(zhí)行B:經(jīng)過編譯、連接后被執(zhí)行C:是一個源程序文件D:經(jīng)過編譯或解釋才能被執(zhí)行

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

A:.cpp

B:.exe

C:.libD:.obj

答案:B

第二章測試

C語言提供的數(shù)據(jù)類型關(guān)鍵字有()

A:CharB:integer

C:shortD:Double

答案:C若有說明和語句:

inta=5;

a++;

此處表達(dá)式a++的值是()。

A:6B:5C:4D:7

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

A:!B:<C:%

D:/

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

A:f2_G3B:4d

C:shortD:for

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

A:'84'B:'ab'

C:""D:'C'

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

A:1B:2C:2.5D:2.0

答案:B若有以下定義:

chara;intb;

floatc;doubled;

則表達(dá)式a*b+d-c值的類型為()。

A:charB:doubleC:intD:float

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

A:x2a2B:10110B

C:0xffaD:0386

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

A:-80.0eB:e1C:-80D:-8e1.0

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

A:3.3B:4.8

C:4.3D:3.8

答案:D

第三章測試

閱讀下面的程序#include<stdio.h>voidmain(){inti,j;scanf("%3d%2d",&i,&j);printf("i=%d,j=%d",i,j);}如果從鍵盤上輸入1234567<回車>,則程序的運行結(jié)果是(

A:i=123,j=4567

B:i=123,j=45C:i=1234,j=567

D:i=1,j=2

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

)

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

C:scanf(”%c”,ch)

D:ch=getchar();

答案:D有如下程序

#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);

}該程序的輸出結(jié)果是(

A:0.000000

B:1.000000

C:0.50000

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");

}}的運行結(jié)果是(

A:second

third

B:first

second

C:first

third

D:first

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

voidmain()

{inti=10,j=0;

do

{j=j+1;

i--;

}while(i>2);

printf("%d",j);}的運行結(jié)果是(

A:50B:52C:8D:51

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

)

#include<stdio.h>

voidmain()

{

inty=9;

for(;y>0;y--)

{

if(y%3==0)

{

printf("%d",--y);

continue;}

}

}

A:741B:852C:936D:875421

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

)inta=5;while(a--);printf("%d",a);

A:0B:-1C:54321D:4321

答案:B下面程序的運行結(jié)果為(

)。

#include<stdio.h>voidmain()

{

intn;

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

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

printf("%d",n);

}

A:369B:12C:12457810D:12345678910

答案:B

A:選項A

B:選項BC:選項CD:選項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);

答案:D若有以下說明:

inta[12]={1,2,3,4,5,6,7,8,9,10,11,12};

charc='a',d,g;

則數(shù)值為4的表達(dá)式是()。

A:a['d'-'c']B:a[4]

C:a[g-c]D:a['d'-c]

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

A:3,6,9B:1,4,7C:3,5,7D:1,5,9

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

A:不能在賦值語句中通過賦值運算符"="對字符型數(shù)組進(jìn)行整體賦值B:可以對整型數(shù)組進(jìn)行整體輸入、輸出C:可以對字符型數(shù)組進(jìn)行整體輸入、輸出D:字符型數(shù)組中可以存放字符串

答案:B當(dāng)執(zhí)行下面的程序時,如果輸入ABC,則輸出結(jié)果是()。

#include"stdio.h"

#include"string.h"

main()

{charss[10]="1,2,3,4,5";

gets(ss);strcat(ss,"6789");printf("%s\n",ss);

}

A:12345ABC6B:ABC6789C:ABC456789D:ABC67

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

A:20

B:6C:3D:10

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

A:intc[100][100]={0};B:intb[][3]={0,1,2,3};C:intd[3][]={{1,2},{1,2,3},{1,2,3,4}};

D:inta[2][3];

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

A:a數(shù)組長度大于b數(shù)組長度B:a數(shù)組長度小于b數(shù)組長度C:數(shù)組a和b的長度相同D:其余選項說法都不對

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

A:數(shù)組名代表的是數(shù)組所占存儲區(qū)的首地址,其值不可改變B:對于double類型數(shù)組,不可以直接用數(shù)組名對數(shù)組進(jìn)行整體輸入或輸出C:可以通過賦初值的方式確定數(shù)組元素的個數(shù)D:當(dāng)程序執(zhí)行中,數(shù)組元素的下標(biāo)超出所定義的下標(biāo)范圍時,系統(tǒng)將給出“下標(biāo)越界”的出錯信

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

)。

A:gets()B:getc()C:getchar()D:scanf()

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

)。

A:a[0][4]B:a[1][3]

C:a[1][4]D:a[0][3]

答案:B

第五章測試

下面程序的輸出是(

)intfun3(intx){staticinta=3;

a+=x;

return(a);

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

n=fun3(k);

n=fun3(m);

printf("%d",n);

}

A:4B:9C:3D:6

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

)

A:為全局變量,在本程序文件范圍內(nèi)有效B:為局部變量,只在該函數(shù)內(nèi)有效C:定義無效,為非法變量

D:為局部變量,只在該復(fù)合語句中有效

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

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

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

i++;return

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

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

B:將字符串s復(fù)制到字符串t中

C:求字符串的長度

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

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

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

A:11,1

B:3,4

C:11,4

D:11,6

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

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

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

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

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

)

A:doublefun(doublea)

B:doublefun(doublea[])

C:doublefun(doublea[15])D:doublefun(double*a)

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

)。

A:從定義該變量的位置開始到本文件結(jié)束B:本程序的所有文件的范圍C:本函數(shù)的全部范圍D:本文件的全部范圍

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

)決定的。

A:調(diào)用該函數(shù)時的實參的數(shù)據(jù)類型B:形參的數(shù)據(jù)類型

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

D:return語句中的表達(dá)式類型

答案:C#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);

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

A:20B:5C:9D:14

答案:D

第六章測試

已有定義inta=2,*p1=&a,*p2=&a;,下面不能正確執(zhí)行的賦值語句是()

A:a=*p1*(*p2);B:p1=a;C:p1=p2;

D:a=*p1+*p2;

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

A:char*s="girl";

等價于char*s;s="girl";B:chars[10]={"girl"};

等價于chars[10];s[10]={"girl"};C:char*s="girl";

等價于char*s;*s="girl";

D:chars[4]="boy",t[4]="boy";等價于chars[4]=t[4]="boy"

答案:A有以下程序

#include<stdio.h>

main(){

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

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

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

A:2,1,2,1B:1,2,2,1C:2,1,1,2

D:1,2,1,2

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

A:ps+1B:*(ps+3)C:*(ps+1)+3D:ps[0][2]

答案:Dvoidss(char*s,chart){while(*s){if(*s==t)*s=t-'a'+'A';s++;}}voidmain(){charstr[100]="abeddfefdbd",c='d';ss(str,c);printf("%s\n",str);}程序送行后的輸出結(jié)果是()。

A:AbcddfefdbdB:ABCDDEFEDBD

C:abeDDfefDbDD:abcAAfefAbA

答案:C下列程序段的輸出結(jié)果是(

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

A:2143B:1234C:2112D:1212

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

A:5B:a[4]的地址C:非法D:3

答案:A有以下程序

#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\n",length);}

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

file

1234

567

89<回車>,則運行結(jié)果是()。

A:22B:13C:17D:9

答案:B有以下函數(shù):;char*fun(char*s){...returns;}該函數(shù)的返回值是()。

A:無確定值B:形參s中存放的地址值C:一個臨時存儲單元的地址D:形參s自身的地址值

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

A:language[2]元素的值,它是字符串PASCAL的首地址B:language[2]元素的地址;C:格式說明不正確,無法得到確定的輸出D:字符串PASCAL

答案:D

第七章測試

定義以下結(jié)構(gòu)體類型struct

s{

char

b;

float

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

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

A:4B:5C:3D:6

答案:B當(dāng)定義一個結(jié)構(gòu)體變量時,系統(tǒng)為它分配的內(nèi)存空間是(

)。

A:結(jié)構(gòu)中一個成員所需的內(nèi)存容量B:結(jié)構(gòu)中第一個成員所需的內(nèi)存容量C:結(jié)構(gòu)體中占內(nèi)存容量最大者所需的容量D:結(jié)構(gòu)中各成員所需內(nèi)存容量之和

答案:D定義以下結(jié)構(gòu)體數(shù)組

structc

{intx;

inty;

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

)。

A:2B:14

C:6D:21

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

KeyWord{

charKey[20];

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

printf("%c,%d\n",kw[3].Key[0],kw[3].ID);}

A:i,3B:l,4C:n,3D:f,4

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

SNode{

unsignedid;

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

A:n.dataB:(*p).dataC:p.data

D:p->data

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

structperson

{

charname[9];

intage;

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

A:printf("%s\n",class[3].name);B:printf("%s\n",class[2].name);C:printf("%s\n",class[0].name);D:printf("%s\n",class[1].name);

答案:B定義以下結(jié)構(gòu)體數(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);的輸出結(jié)果為()。

A:Tianjin,2008B:guangzhou,2008C:Tianjin,2009D:guangzhou,2009

答案:DC語言定義類型名的關(guān)鍵字是()

A:structB:nameC:defineD:typedef

答案:D結(jié)構(gòu)體變量做函數(shù)參數(shù),是參傳遞給形參的是()

A:結(jié)構(gòu)體變量第一個成員的值B:結(jié)構(gòu)體變量所有成員的值C:其余選項都不對D:結(jié)構(gòu)體變量的首地址

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

A:malloc函數(shù)是鏈表專用的處理函數(shù),不能用在其他地方B:鏈表中的節(jié)點可以刪除C:在鏈表中插入一個節(jié)點不需要改變其他節(jié)點的物理位置D:鏈

溫馨提示

  • 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)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論