版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
國家二級(C語言)筆試模擬試卷29
(共9套)
(共507題)
國家二級(C語言)筆試模擬試卷第1
套
一、公共基礎(chǔ)選擇題(本題共10題,每題7.0分,共
10分。)
1、線性表L=(al,a2,a3,...ai,...an),下列說法正確的是()
A、每個元素都有一個直接前件和直接后件
B、線性表中至少要有一個元素
C、表中諸元素的排列順序必須是由小到大或由大到小
D、除第一個元素和最后一個元素外,其余每個元素都有一個且只有一個直接前件
和直接后件
標(biāo)準(zhǔn)答案:8
知識點解析:暫無解析
2、設(shè)樹T的度為4,其中度為1,2,3,4的結(jié)點個數(shù)分別為4,2,1,K則T
中的葉子結(jié)點數(shù)為()
A、8
B、7
C、5
D、5
標(biāo)準(zhǔn)答案:1
知識點解析:暫無解析
3、設(shè)有下列二叉樹:對此二叉樹前序遍歷的結(jié)果為()
A、ZBTYCPXA
B、ATBZXCYP
C、ZBTACYXP
D、ATBZXCPY
標(biāo)準(zhǔn)答案:2
知識點解析:暫無解析
4、結(jié)構(gòu)化程序設(shè)計的一種基本方法是()
A、篩選法
B、遞歸法
C、歸納法
D、逐步求精法
標(biāo)準(zhǔn)答案:8
知識點解析:暫無解析
5、軟件設(shè)計包括軟件的結(jié)構(gòu)、數(shù)據(jù)接口和過程設(shè)計,其中軟件的過程設(shè)計是指()
A、模塊間的關(guān)系
B、系統(tǒng)結(jié)構(gòu)部件轉(zhuǎn)換成軟件的過程描述
C、軟件層次結(jié)構(gòu)
D、軟件開發(fā)過程
標(biāo)準(zhǔn)答案:2
知識點解析:暫無解析
6、完全不考慮程序的內(nèi)部結(jié)構(gòu)和內(nèi)部特征,而只是根據(jù)程序功能導(dǎo)出測試用例的
測試方法是()
A、黑箱測試法
B、白箱測試法
C、錯誤推測法
D、安裝測試法
標(biāo)準(zhǔn)答案:1
知識點解析:暫無解析
7、數(shù)據(jù)流圖用于抽象描述一個軟件的邏輯模型,數(shù)據(jù)流圖由一些特定的圖符構(gòu)
成。下列圖符名標(biāo)識的圖符不屬于數(shù)據(jù)流圖合法圖符的是()
A、控制流
B、加工
C、數(shù)據(jù)存儲
D、源和潭
標(biāo)準(zhǔn)答案:1
知識點解析:暫無解析
8、在數(shù)據(jù)管理技術(shù)的發(fā)展過程中,可實現(xiàn)數(shù)據(jù)共享的是()
A、人工管理階段
B、文件系統(tǒng)階段
C、數(shù)據(jù)庫系統(tǒng)階段
D、系統(tǒng)管理階段
標(biāo)準(zhǔn)答案:4
知識點解析:暫無解析
9、按條件f對關(guān)系R進(jìn)行選擇,其關(guān)系代數(shù)表達(dá)式是()
A、R|x|R
B、KRR
C、of((R)
D、兀f(R)
標(biāo)準(zhǔn)答案:4
知識點解析:暫無解析
10、公司中有多個部門和多名職員,每個職員只能屬于一個部門,一個部門可以有
多名職員,從職員到部門的聯(lián)系類型是()
A、多對多
B、一對一
C、多對一
D、一對多
標(biāo)推答案:4
知識點解析:暫無解析
二、選擇題(1分)(本題共10題,每題,.0分,共10
分。)
11、以下敘述中正確的是()
A、C程序由函數(shù)和過程組成
B、C程序由主函數(shù)組成
C、C程序由函數(shù)組成
D、C程序中,主函數(shù)必須放在其他函數(shù)之前
標(biāo)準(zhǔn)答案:4
知識點解析:暫無解析
12、下列運算符中,不屬于關(guān)系運算符的是()
A、<
B、>=
C、==
D、!
標(biāo)準(zhǔn)答案:8
知識點解析:暫無解析
13、下列屬于合法的C語言無符號短整型常數(shù)的選項是()
A、-2
B、65536
C、123L
D、50000
標(biāo)準(zhǔn)答案:8
知識點解析:暫無解析
14、設(shè)a,b均為float型變量,則以下非法的賦值語句是()
A、b=(a/5)/8;
B、++a
C、a=1.0,b=2.0,
D、a+=3;
標(biāo)準(zhǔn)答案:4
知識點解析:暫無解析
15、設(shè)有如下變量定義:doublea=3.500000;floatb=2.5;intm=2,n=3;則表
達(dá)式”(float)(m+n)/2+(int)a%(int)b”的值是()
A、2.5
B、3.5
C、4.5
D^表達(dá)式不正確
標(biāo)準(zhǔn)答案:2
知識點解析:暫無解析
16、先用以下語句定義字符型變量:chare;然后要將字符a賦給變量c,則下列
語句中正確的是()
A^c='a';
B、c="a";
C、c="97”;
D、c='97'
標(biāo)準(zhǔn)答案:1
知識點解析:暫無解析
17、設(shè)有語句chara=''72';,則變量a()
A、包含1個字符
B、包含2個字符
C、包含3個字符
D、說明不合法
標(biāo)準(zhǔn)答案:1
知識點解析:暫無解析
18、以下敘述中正確的是()
A、C程序中,賦值運算符的優(yōu)先級最低
B、若a是實型變量,C程序中允許進(jìn)行以下賦值:a=IO,因此,實型變量中允許
存放整型數(shù)
C、若a和b類型相同,在執(zhí)行了賦值a=b后b中的值將放入a中,b中的值將丟
失
D、在C程序中,除號運算符“尸兩邊的類型相同時才能進(jìn)行相除運算
標(biāo)準(zhǔn)答案:8
知識點解析:暫無解析
19、已有定義:doublex;inti:,能正確給x賦70000.0的表達(dá)式是()
A、x=7000*10
B、x=70000
C、x=35OOO+35OOO
D、i=700,x=i*100
標(biāo)準(zhǔn)答案:2
知識點解析:暫無解析
20、若要求在if后一對圓括號中表示a不等于。的關(guān)系,則能正確表示這一關(guān)系的
表達(dá)式為()
A、a<>0
B、!a
C、a=0
D、a
標(biāo)準(zhǔn)答案:8
知識點解析:暫無解析
三、選擇題(2分)(本題共30題,每題7.0分,共30
分。)
21、下列定義正確的是()
A、staticinta[]={1,2,3,4,5)
B、intb|]={2,5)
C、inta(10)
D^int4e[4]
標(biāo)準(zhǔn)答案:1
知識點解析:暫無解析
22、下述程序段的執(zhí)行結(jié)果是()#include<stdio.h>voidmain(){intx;for(x=l;x
<=100;x++)if(++x%3==0)if(++x%4==0)if(++x%7==0)printf("%d",x);}
A、75
B、76
C、77
D、84
標(biāo)準(zhǔn)答案:4
知識點解析:暫無解析
23、有以卜程序#inc1ude<stdio.h>main(){int.i=0,a=0;while(i<20){for(;;)
{if((i%10)==0)break;elsei-;)i+=l1;a+=i;}printf("%d\n'*,a);)程序運行后的
輸出結(jié)果是()
A、21
B、32
C、33
D、11
標(biāo)準(zhǔn)答案:2
知識點解析:暫無解析
24、有以下程序main。{inly=10;do(y-;)while(-y);printf("%d\n",y--);}程
序運行后的輸出結(jié)果是()
A、-1
B、1
C、8
D、0
標(biāo)準(zhǔn)答案:8
知識點解析:暫無解析
25、若有如下說明:inta,b=5,九=&a;則能完成a二b賦值功能的語句是()
A、&a=&b;
B、*t=b;
C、%=&b;
D、*a=*t;
標(biāo)準(zhǔn)答案:2
知識點解析:暫無解析
26、若變量已正確定義并賦值,對庫函數(shù)錯誤調(diào)用的是()
A、k=scanf(u%d%d",&i,&j);
B、printfCAWdWn",k);
C^getchar(ch);
D、putchar(ch);
標(biāo)準(zhǔn)答案:4
知識點解析:暫無解析
27、若有如下程序:sub(inta,intb,int*z){*z=a-b;return;)main(){inta=1,
b=2,c=3,d,e;sub(a,b,&D);sub?d,&e);printf("%d",e);}則程序運
行后的輸出結(jié)果是
A、3
B、4
C、5
D、6
標(biāo)準(zhǔn)答案:8
知識點解析:暫無解析
28、若有如下程序;main(){char*p="china,';p+=1;printf("%d\nH,p);}則程序
運行后的輸出結(jié)果是()
A^china
B、字符h的地址
C、hina
D、字符h的ASCII碼值
標(biāo)準(zhǔn)答案:2
知識點解析:暫無解析
29、一個C程序由函數(shù)A、B、C和函數(shù)P構(gòu)成,在函數(shù)A中分別調(diào)用了函數(shù)B和
函數(shù)C,在函數(shù)B中調(diào)用了函數(shù)A,且在函數(shù)P中也調(diào)用了函數(shù)A,則可以說()
A、函數(shù)B中調(diào)用的函數(shù)A是函數(shù)A的間接遞歸調(diào)用
B、函數(shù)A被函數(shù)B調(diào)用是函數(shù)A間接遞歸調(diào)用
C、函數(shù)P直接遞歸調(diào)用了函數(shù)A
D、函數(shù)P中調(diào)用的函數(shù)A是函數(shù)P的嵌套
標(biāo)準(zhǔn)答案:8
知識點解析:暫無解析
30、下列程序的輸出結(jié)果是()structabc{inta,b,c;}:main(){structabc
s[2]={{L2,3},{4,5,6)};intt;t=s[0].a+s[l].b;printf(H%d\nn,t);}
A、3
B、4
C、5
D、6
標(biāo)準(zhǔn)答案:8
知識點解析:暫無解析
31、若以下對fun函數(shù)的調(diào)用是正確的:x=fun(fun(a,b,c),(a+b,a+c),
a+b+c);則fun函數(shù)的形參個數(shù)為()
A、3
B、4
C、5
D、6
標(biāo)準(zhǔn)答案:1
知識點解析:暫無解析
32、若有說明:ini*p,m=51;n;,以下正確的程序段是()
A、p=&m;scanf("%d",&p)
B、p=&n;scanf("%d",&P)
C、scanf("%d",&p)p=&n;
D^p=&n;p=&m;
標(biāo)準(zhǔn)答案:8
知識點解析:暫無解析
33、以下程序調(diào)用findmax函數(shù)返回數(shù)組中的最大值findmax(int*a,intn){int
*p,*s;for(p=a,s=a;p-a<n;p++)if()s=p;rcturn(*s);)main(){int
x[5]={12,21,13,6,18};primf("%d\n”,findmax(x,5));}在下劃線處應(yīng)填入
的是()
A、p>s
B、*p>*s
C>a[p]>a[s]
D、p-a>p-s
標(biāo)準(zhǔn)答案.2
知識點露斤:暫無解析
34、若指針p已正確定義,要使p指向兩個連續(xù)的整型動態(tài)存儲單元,則正確語句
是()
A、p=2*(int*)malloc(sizeof(int));
p=(int*)calloc(2*sizeof(int));
C、p=(int*)malloc(2*sizeof(int));
D^p=2*(int*)calloc(sizeof(int));
標(biāo)準(zhǔn)答案:4
知識點解析:暫無解析
35、下列程序的輸出結(jié)果是()main。{char*pl,*p2,str[50]="xyz";p^^abcd";
p2="ABCD";strcpy(str4-2,strcat(pl+2,p2+l));printf("%s",str);}
A、xyabcAB
B>abcABz
C^Ababcz
D、XycdBCD
標(biāo)準(zhǔn)答案:8
知識點解析:暫無解析
36、以下敘述中不正確的是()
A、一個變量的作用域完全取決于變量定義語句的位置
B、全局變量可以在函數(shù)以外的任何部位進(jìn)行定義
C、局部變量的、'生存期.'只限于本次函數(shù)調(diào)用,因此不可能將局部變量的運算結(jié)果
保存至下一次調(diào)用
D:一個變量說明為sialic存儲類是為了限制其他編譯單位的引用
標(biāo)準(zhǔn)答案:2
知識點解析:暫無解析
37、交換兩個變量的值,不允許用臨時變量,應(yīng)該使用下列哪一個位運算符()
A、?
B、&
C、A
D、|
標(biāo)準(zhǔn)答案:4
知識點解析:暫無解析
38、下面的說法不正確的是()
A、函數(shù)調(diào)用時,先求出實參表達(dá)式,然后帶入形參。而使用帶參的宏只是進(jìn)行簡
單的字符替換
B、函數(shù)調(diào)用是在程序運行時處理的,分配臨時的內(nèi)存單元。而宏展開則是在編譯
時進(jìn)行的,在展開時也要分配內(nèi)存單元,進(jìn)行值傳遞
C、對于函數(shù)中的實參和形參都要定義類型,二者的類型要求一致,而宏不存在類
型問題,宏名有類型
D、調(diào)用函數(shù)只可得到一個返回值,而用宏可以設(shè)法得到幾個結(jié)果
標(biāo)準(zhǔn)答案:2
知識點解析:暫無解析
39、fscanf函數(shù)的正確調(diào)用形式是()
A、fscanf(fp,格式字符串,輸出表列);
B、fscanf隔式字符串,輸出表列,fp);
C、fscanf(格式字符串,文件指針,輸出表列),
D、fscanf(文件指針,格式字符串,輸入表列);
標(biāo)準(zhǔn)答案:8
知識點解析:暫無解析
40、以下程序的運行結(jié)果是()#defineMAX10inta[MAX],i;main()
{printf("\n");subl();sub3(A),sub2(),sub3(A);)sub2(){inta[MAX],i,max;
max=5;for(i=0;iVmax;i++)a[i]=i;)sub1(){for(i=0;i<MAX;i++)a[i]=i+i;}
sub3(inta[]){inti;for(i=0;i<MAX,i++)prinlf("%d",a|i));prinlf("\n");}
A、02468101214161801234
B、01234024681012141618
C、012345678901234
D、024681012141618024681012141618
標(biāo)準(zhǔn)答案:8
知識點解析:暫無解析
41、有以下結(jié)構(gòu)體說明和變量的定義,且如下圖所示指針p指向變量a,指針q指
向變量bo則不能把結(jié)點b連接到結(jié)點a之后的語句是()structnode{chardata;
structnoe*next;)a,b,*p=&a,*q=&b;
dmnext*乃
,5iiq;?\oj
A、a,next=q;
B、p.next=&b;
C、p->ncxt=&b;
D^(*p).next=q;
標(biāo)準(zhǔn)答案:2
知識點解析:暫無解析
42、若有如下定義:inl(*p)(),*q();則下列說法正確的是()
A、p是一個函數(shù)名,q是一個指針變量
B、p是一個指向整型變量的指針變量,q是一個指向一維數(shù)組的指針變量
C、p和q是等價的,都是指針變量
D、p是指向函數(shù)的指針變量,函數(shù)的返回值是整型數(shù)據(jù);q是帶回指針值的函數(shù)
標(biāo)準(zhǔn)答案:8
知識點解析:暫無解析
43有以下程序#ineludeVstdio.h>main。{floatx,y;scan{C'%f',&x);if(x<
0.0)y=0.0;elseif((x<5.0)&&(x!=2.0))y=1.0/(x+2.0);elseif(x<IO.O)y=1.0/x;
elsey=10.0;y);}若運行時從鍵盤上輸入2.0<CR>(VCR>表示
回車),則上面程序的輸出結(jié)果是()
A、0
B、0.25
C、0.5
D、1
標(biāo)準(zhǔn)答案:4
知識點解析:暫無解析
44、以下.程序段中,能夠通過調(diào)用函數(shù)fun,使main函數(shù)中的指針變量p指向一個
合法的整型單元的是
A、main()|int*p;fun(p);...}intfun(int*p){ints;p=&s;}
B>main{int*p;fun(&p);...}intfun(int**p){ints;*p=&s;}
C、#include<stdlib.h>main(){int*p;fun(&p);...}intfun(int**p)
{*p=(int*)malloc(2);}
D^#includc<stdlib.h>main(){int*p;fun(p);...}intfun(int*p)
{p=(int*)malloc(sizeof(int));}
標(biāo)準(zhǔn)答案:4
知識點解析:暫無解析
45、執(zhí)行下列程序時輸入:123〈空格>456〈空格>789〈回車〉,輸出結(jié)果是()
main(){chars[100]intc,i;scanf("%c",&C);scanf(H%d",&i);scanf(n%s",s);
printf("%c,%d,%s\n'\c,i,s);)
A、1,456,789
B、1,23,456
C、1,23,456,789
D、123,456,789
標(biāo)準(zhǔn)答案;2
知識點解析:暫無解析
46、有以下程序#includ2<stdio.h>#include<string.h>main(){char
bl[8]=',abcdefg,\b2[8],*pb=bl+3,while(-pb>bl)strcpy(b2,pB);
printf("%d\n",strlen(b2));}程序運行后的輸出結(jié)果是()
A、8
B、3
C、1
D、6
標(biāo)準(zhǔn)答案:8
知識點解析:暫無解析
47、設(shè)有如下定義和聲明:struct3{inta;structs*next);structsx[4]={1,
&x[l],3,&x[2],5,&x[3],7,\(F),*t;t=&x[0];則下列表達(dá)式值為2的是
()
A、++l->a
B、(*t).a++
C、t->a++
D、t++->a
標(biāo)準(zhǔn)答案:1
知識點解析:暫無解析
48、若有如下程序:main(){inta=6;charch=c;printf(',%d\n,\(a&2)&&(ch
}則程序運行后的輸出結(jié)果是()
A、0
B、1
C、2
D、3
標(biāo)準(zhǔn)答案:1
知識點解析:暫無解析
49、下列說法不正確的是()
A、下列結(jié)構(gòu)體定義時,占據(jù)了5個字節(jié)的空間slructs{intnum;intage;char
sex;}
B、結(jié)構(gòu)體的成員名可以與程序中的變量名相同
C、對結(jié)構(gòu)體中的成員可以單獨使用,它的作用相當(dāng)于普通變量
D、結(jié)構(gòu)體的成員可以是一個結(jié)構(gòu)體變量
標(biāo)準(zhǔn)答案:1
知識點解析:暫無解析
50,若要打開A盤中user子目錄下名為aaa.txt的文本文件進(jìn)行讀、寫操作,下
面符合此要求的函數(shù)調(diào)用是()
A、fopen("A:\user\aaa.txt",T')
B、fopen(,'A:\\user\\aaa.txt","r+")
C>fopcn(nA:\uscr\aaa.txt","rb")
D、fopen(nA:\\user\\aaa.txt",nw")
標(biāo)準(zhǔn)答案:2
知識點解析:暫無解析
四、公共基礎(chǔ)填空題(本題共5題,每題7.0分,共5
分。)
51、實現(xiàn)算法所需的存儲單元多少和算法的工作量大小分別稱為算法的【】。
標(biāo)準(zhǔn)答案:空間復(fù)雜度和時間復(fù)雜度
知識點解析:算法的復(fù)雜性是指對一個在有限步驟內(nèi)終止算法和所需存儲空間大小
的估計。算法所需存儲空間大小是算法的空間復(fù)雜性,算法的計算量是算法的時間
復(fù)雜性。
52、數(shù)據(jù)結(jié)構(gòu)包括數(shù)據(jù)的邏輯結(jié)構(gòu)、數(shù)據(jù)的【】以及對數(shù)據(jù)的操作運算。
標(biāo)準(zhǔn)答案:存儲結(jié)構(gòu)
知識點解析:數(shù)據(jù)結(jié)構(gòu)包括3個方面,即數(shù)據(jù)的邏輯結(jié)構(gòu)、數(shù)據(jù)的存儲結(jié)構(gòu)及對數(shù)
據(jù)的操作運算。
53、一個類可以從直接或間接的祖先中繼承所有屬性和方法。采用這個方法提高了
軟件的【】。
標(biāo)準(zhǔn)答案:可重用性
知識點解析:繼承的優(yōu)點:相似的對象可以共享程序代碼和數(shù)據(jù)結(jié)構(gòu),從而大大減
少了程序中的冗余,提高軟件的可重用性。
54、面向刑象的模型中,最基本的概念是對象和【】。
標(biāo)準(zhǔn)答案:類
知識點解析:面向?qū)ο竽P椭?,最基本的概念是對象和類。對象是現(xiàn)實世界中實體
的模型化;將屬性集和方法集相同的所有對象組合在一起,可以構(gòu)成一個類。
55、軟件維護(hù)活動包括以下幾類:改正性維護(hù)、適應(yīng)性維護(hù)、【】維護(hù)和預(yù)防性
維護(hù)。
標(biāo)準(zhǔn)答案:完善性
知識點。析:軟件維護(hù)活動包括以下幾類:改正性維護(hù),適應(yīng)性維護(hù)、完善性維護(hù)
和預(yù)防性維護(hù),完善性維護(hù)是指為了滿足用戶對軟件提出的新功能與性能要求,需
要修改或再開發(fā)軟件,以擴(kuò)充軟件功能、增強(qiáng)軟件性能、改進(jìn)加工效率、提高軟件
的可維護(hù)性。
五、填空題(本題共5題,每題1.0分,共5分。)
56、下列程序的運行結(jié)果為[]o#include<math.h>#include<stdio.h>
main(){ints=l;floatn=1,pi=0;doublet=l;while(fabs(t)>=2e-6){pi+=t;
n+=2;s=-s;t=s/n;)pi*=4;printf('rpi=%.6f\n'\pi);}
標(biāo)準(zhǔn)答案:3.141592
知識點解析:暫無解析
57、下列程序中,字符串中各單詞之間有一個空格,則程序的輸出結(jié)果是【】。
#includemain(){charstrl[]=HHowdoyoudo",*pl=strl;strcpy(strl+strlen(strl)/2,
"esshe");printf("%s\n",pl);}
標(biāo)準(zhǔn)答案:Howdoesshe
知識點解析:暫無解析
58、設(shè)在主函數(shù)中有以下定義和函數(shù)調(diào)用語句,且fun函數(shù)為void類型:請寫出
fun函數(shù)的首部【】(要求形參名為b)。main(){doubles[I0][22];intn;.......fun
標(biāo)準(zhǔn)答案:voidfun(doubleb[10][22])
知識點解析:暫無解析
59、下列程序的功能是計算機(jī)一元二次方程的根。include[]include<stdio.h
>main(){floata,b,c,disc,x1,x2,realpart,imagpart;scanf("%f^)f%f',&a,&b,&c);
printf("Theequation");if([]<=lc-6)printf(nisnotquadratic\n");elsedisc=b*b-
4*a*c;if(fabs(disc)<=le-6)printf("hastwoequalroots:%-8.4f\n,|,-b/(2*a));else
if([]){xl=(-b+sqrt(disc))/(2*a);x2=(-b-sqrt(disc))/(2*a);printf(Hhasdistinctreal
roots:%8.4fand%.4f\n",xl,x2);)else{realpart=-b/(2*a);imagpart=sqrt(-disc)/(2*a);
printf("hascomplexroots:\nM);printf(H%8.4f+%.4fi\n",realpart,imagpart);printf
("%8.4f-%.40^'*,realpart,imagpart);))
標(biāo)準(zhǔn)答案:Vmalh.h>fabs(a)fabs(disc)=le-6
知識點解析:暫無解析
60、下列程序的功能是計算機(jī)平均成績并統(tǒng)計90分以上的人數(shù)。main(){intn,m;
floatgrade,average;average-n-m-[];while([]){scanf("%「',&grade);if(grade
<0)break;m++;average+=grade;if(grade<90)[];m++;)if(n)
printf("%.2f%d\n",average/n,m);)
標(biāo)準(zhǔn)答案:0Icontinue
知識點解析:暫無解析
國家二級(C語言)筆試模擬試卷第2
套
一、選擇題(1分)(本題共70題,每題1.0分,共70
分。)
1、對長度為n的線性表進(jìn)行順序查找,在最壞的情況下所需要的比較次數(shù)為()。
A、log2n
B、n/2
C、n
D、n+1
標(biāo)準(zhǔn)答案:c
知識點0析:在平均情況下,利用順序查找法在線性表中查找一個元素,大約要與
線性表中一半的元素進(jìn)行比較,最壞情況下需要比較n次。
2、對如下二叉樹:ABDECF進(jìn)行后序遍歷的結(jié)果為()。
A、ABCDEF
B、DBEAFC
C、ABDECF
D、DEBFCA
標(biāo)準(zhǔn)答案:D
知識點解析:暫無解析
3、冒泡排序在最壞情況下的比較次數(shù)是()。
A、n(n+l)/2
B、nlog2n
C、n(n-I)/2
D、n/2
標(biāo)準(zhǔn)答案:C
知識點解析:在最壞情況下冒泡排序法需要比較的次數(shù)為n(n-l)/20
4、兩個或兩個以上模塊之間關(guān)聯(lián)的緊密程度稱為()。
A、耦合度
B、內(nèi)聚度
c營久后
D:數(shù)冠傳輸特性
標(biāo)準(zhǔn)答案:A
知識點解析:耦合度是模塊間互相連接的緊密程度。
5、在軟件開發(fā)中,需求分析階段產(chǎn)生的主要文檔是()。
A、可行性分析報告
B、軟件需求規(guī)格說明書
C、概要設(shè)計說明書
D、集成測試計劃
標(biāo)準(zhǔn)答案:B
知識點解析:軟件需求規(guī)格說明書是需求分析階段最后的成果,它是作為需求解析
的一部分而制定的可交時文檔。在概要設(shè)計階段,需要編寫的文檔有:概要設(shè)計說
明書、數(shù)據(jù)庫說明書、集成測試計劃等。
6、下列選項中不屬于結(jié)構(gòu)化程序設(shè)計方法的是()。
A、自頂向下
B、逐步求精
C、模塊化
D、可復(fù)用
標(biāo)準(zhǔn)答案:D
知識點解析:結(jié)構(gòu)化程序設(shè)計方法的主要原則可以概括為:自頂向下,逐步求精,
模塊化,限制使用gol。語句。
7、程序流程圖中有箭頭的線段表示的是()。
A、圖元關(guān)系
B、數(shù)據(jù)流
C、控制流
D、調(diào)用關(guān)系
標(biāo)準(zhǔn)答案:C
知識點解析:程序流程圖是軟件過程設(shè)計中常用的圖形描述工具之一。構(gòu)成程序流
程圖的最基本符號有:-或1,表示控制流;□表示加工步驟;?表示邏輯條件。
8、在下列關(guān)系運算中,不改變關(guān)系表中的屬性個數(shù)但能減少元組個數(shù)的是()。
A、并
B、交
C、投影
D、笛卡兒乘積
標(biāo)準(zhǔn)答案:B
知識點解析:并運算會增加元組個數(shù),投影運算會減少表中屬性個數(shù),笛卡兒積既
會增加屬性個數(shù),又會增加元組個數(shù)。
9、下列敘述中正確的是()。
A、數(shù)據(jù)庫系統(tǒng)是一個獨立的系統(tǒng),不需要操作系統(tǒng)的支持
B、數(shù)據(jù)庫系統(tǒng)的根本目標(biāo)是要解決數(shù)據(jù)的共享問題
C、數(shù)據(jù)庫管理系統(tǒng)就是數(shù)據(jù)庫系統(tǒng)
D、以上三種說法都不對
標(biāo)準(zhǔn)答案:B
知識點解析:數(shù)據(jù)庫系統(tǒng)(DBS)是由數(shù)據(jù)庫(數(shù)據(jù))、數(shù)據(jù)庫管理系統(tǒng)(軟件)、數(shù)據(jù)庫
管理員(人員)、硬件平臺(硬件)、軟件平臺(軟件)五個部分構(gòu)成的運行實體。數(shù)據(jù)庫
技術(shù)的根本目標(biāo)是解決數(shù)據(jù)的共享問題。
10、設(shè)有表示學(xué)生選課的三張表,學(xué)生S(學(xué)號,姓名,性別,年齡,身份證號),
課程C(課號,課名),選課SC(學(xué)號,課號,成績),則表SC的關(guān)鍵字(鍵或碼)為
()o
A、課號,成績
B、學(xué)號,成績
C、學(xué)號,課號
D、學(xué)號,姓名,成績
標(biāo)準(zhǔn)答案:c
知識點。析:在二維表中凡能唯一標(biāo)識元組的最小屬性集稱為關(guān)鍵字,關(guān)鍵字具有
標(biāo)識元組、建立元組間聯(lián)系等重要作用。此題中,(學(xué)號,課號)是表SC的主鍵,
學(xué)號、課號分別為外鍵,學(xué)號是表S的關(guān)鍵字,課號是表C的關(guān)鍵字。
二、填空題(本題共10題,每題1.0分,共10分。)
II、執(zhí)行以下程序后的輸出結(jié)果是()。main(){inta=10;a=(3*5,a+4);
printf("a=%d\n',>A);
標(biāo)準(zhǔn)答案:a=14
知識點解析:在“逗號表達(dá)式(表達(dá)式1,表達(dá)式21中,其運算方法是先求表達(dá)式1
的值,然后求表達(dá)式2的值,整個逗號表達(dá)式的值是表達(dá)式2的值。首先
3*5=15,a=10,a+4=14,最后輸出的運算結(jié)果為14。
12、以卜程序運行后的輸出結(jié)果是()。main(){charc;intn=100;loatf=10;
doublex;x=f*=n/=(c=50);printf("%d%^nu,n,x);}
標(biāo)準(zhǔn)答案:0
知識點解析:暫無解析
13、以下程序運行后的輸出結(jié)果是()。main(){inta=l,b=2,c=3;
if(c=A)printf(',%d\nM,C);elseprintf(,,%d\nH,B);)
標(biāo)準(zhǔn)答案:1
知識點解析:程序中的if條件是賦值語句,a的值1賦給了變量c,表達(dá)式的
值也為1,條件為真,輸出C的值為1。
14、執(zhí)行以下程序的輸出結(jié)果是()。#include<stdio.h>#defineM5#defineN
M+Mmain(){intk;k=N*N*5;printff'%d\n",k);}
標(biāo)準(zhǔn)答案:55
知識點解析:本題考查的重點是對宏定義的理解。#deflne指令定義一個標(biāo)識符和
一個串,編譯程序在對C源程序處理時.發(fā)現(xiàn)該標(biāo)識符都用該串替換,因此,在
語句k=N*N*5將替換成1<=乂+乂*1^+^1*5后,M被替換成5,從而
k=5+5*5+5*5=55。
15、以下程序中函數(shù)fun的功能是:統(tǒng)計person所指結(jié)構(gòu)體數(shù)組中所有性別(sex)為
M的記錄的個數(shù),存入變量n中,并作為函數(shù)值返回。請?zhí)羁?#include<stdio.h
>#defineN3typedefstruct{intmum,charname|IO];charsex;)SS;intfun(SS
person[]){inti,n=0;for(i=0;i<N;i+4-)if(()==,M,)n—1-;returnn;)main(){SS
W[N]={{1/AA\F},{2,intn;n=fun(W);
printf("n=%d\n",n);}
標(biāo)準(zhǔn)答案:person[i].scx
知識點解析:暫無解析
16、以「程序運行后的輸出結(jié)果是()。#includechar*ss(char*s){char*p,t;
P=s+l;t=*s;while(*p){*(P-1)=*P;P++;}*(P-l)=t;returns;}main()
{char*p,str[10]="abcdcfgh";p=ss(str);printf("%s\n",p);}
標(biāo)準(zhǔn)答案:bcdefgha
知識點解析:暫無解析
17、人員基本信息一般包括:身份證號、姓名、性別、年齡等。其中可以作為主關(guān)
鍵字的是()。
標(biāo)準(zhǔn)答案:身份證號
知識點解析:主關(guān)鍵字是表中區(qū)別不同記錄的標(biāo)識,在該表中只有身份證號能具有
這個作用,所以用其作為主關(guān)鍵字。
18、若有定義語句:inla=5;,則表達(dá)式a++的值是1)。
標(biāo)準(zhǔn)答案:5
知識點解析:表達(dá)式的值是5,而變量a的值為6。這里要注意區(qū)分表達(dá)式的
值和變量a的值。
19、若有語句doublex=17;inty;,當(dāng)執(zhí)行y=(int)(x/5)%2;之后y的值為()。
標(biāo)準(zhǔn)答案:1
知識點解析:(inl)(x/5)=3,3%2=lo
20、以下程序運行后的輸出結(jié)果是()。#include<stdio.h>main(){intx=20;
printf("%d",0<x<20);printf("%d\n",0<x&&x<20);}
標(biāo)準(zhǔn)答案:10
知識點解析:表達(dá)式0<xV20,首先計算OVx,其值為1,再計算1V20,其值為
1,輸出1;表達(dá)式0Vx&&xV20,OVx為1,xV20為0,再計算1&&0,其值
為0,輸出0。所以輸出結(jié)果為10。
國家二級(C語言)筆試模擬試卷第3
套
一、公共基礎(chǔ)選擇題(本題共9題,每題7.0分,共9
分。)
1、c語言的基本單位是()。
A、函數(shù)
B、過程
C、子程序
D、子函數(shù)
標(biāo)準(zhǔn)答案:A
知識點解析:C語言是函數(shù)式的語言。它的基本組成單位是函數(shù),在C語言中任何
程序都是由一個或者多個函數(shù)組。
2、設(shè)有如下三個關(guān)系表下列操作中正確的是
A、T=RAS
B、T=RUS
C、T=RxS
D、T=R/S
標(biāo)準(zhǔn)答案:C
知識點解析:對于兩個關(guān)系的合并操作可以用笛卡爾積表示。設(shè)有n元關(guān)系R和
m元關(guān)系S,它們分別有p和q個元組,則R與S的笛卡兒積記為RxS它是一個m+n
元關(guān)系,元組個數(shù)是pxq由題意可得,關(guān)系T是由關(guān)系R與關(guān)系S進(jìn)行笛卡爾積運算
得到的。
3、串的長度是()。
A、串中不同字符的個數(shù)
13、串中不同字母的個數(shù)
C、串中所含字符的個數(shù)且字符個數(shù)大于0
D、串中所含字符的個數(shù)
標(biāo)準(zhǔn)答案:8
知識點解析:串的長度是指串中字符的個數(shù),且其字符個數(shù)可以為0。
4、若進(jìn)棧序列為1,2,3,4,進(jìn)棧過程中可以出棧,則下列不可能的一個出棧序
列是。
A、1,4,3,2
B、2,3,4,1
C、3,1,4,2
D、3,4,2,1
標(biāo)準(zhǔn)答案:4
知識點解析:棧是一種后進(jìn)先出表,選項C中,先出棧的是3,說明此時棧內(nèi)必然
有1,2,由于I先于2進(jìn)棧,所以1不可能在2之前出棧,故選項C這種出棧序
列是不可能的。
5、在結(jié)構(gòu)化程序設(shè)計思想提出之前,在程序設(shè)計中曾強(qiáng)調(diào)程序的效率。與程序的
效率相比,人們更重視程序的
A、安全性
B、一致性
C、可理解性
D、合理性
標(biāo)準(zhǔn)答案:4
知識點解析:結(jié)構(gòu)化程序設(shè)計方法設(shè)計出的程序具有明顯的優(yōu)點。其一,程序易于
理解、使用和維護(hù);其二,提交了編程工作的效率,降低了軟件開發(fā)成本。其中,
人們更重視前者。
6、對于n個結(jié)點的單向鏈表(無表頭結(jié)點),需要指針單元的個數(shù)至少為o
A、n-I
n
C、n+1
D、2n
標(biāo)準(zhǔn)答案:4
知識點解析:在n個結(jié)點的單向鏈表(無表頭結(jié)點)中,每個結(jié)點都有一個指針單元
(即指針域),加上頭指針,至少需要n+1個指針單元。
7、兩個或兩個以上的模塊之間關(guān)聯(lián)的緊密程度稱為。
A、耦合度
B、內(nèi)聚度
c箕型庶
D:數(shù)加傳輸特性
標(biāo)準(zhǔn)答案:A
知識點解析:耦合度是模塊間互相連接的緊密程度的度量;內(nèi)聚度是一個模塊內(nèi)部
各個元素間彼此結(jié)合的緊密程度的度量。
8、下列對隊列的敘述正確的是
A、隊列屬于非線性表
B、隊列按“先進(jìn)后出”原則組織數(shù)據(jù)
C、隊列在隊尾刪除數(shù)據(jù)
D、隊列按“先進(jìn)先出”原則組織數(shù)據(jù)
標(biāo)準(zhǔn)答案.D
知識苫3析:隊列是一種操作受限的線性表。它只允許在線性表的一端進(jìn)行插入操
作,另一端進(jìn)行刪除操作。其中,允許插入的一端稱為隊尾(rear),允許刪除的一
端稱為隊首(front)。隊列具有先進(jìn)先出的特點,它是按“先進(jìn)先出”的原則組織數(shù)據(jù)
的,故本題答案為D)。
9、設(shè)有表示學(xué)生選課的三張表,學(xué)生S(學(xué)號,姓名,性別,年齡,身份證號),課
程C(課號,課名),Q選課SC(學(xué)號,課號,成績),則表SC的關(guān)鍵字(鍵或碼)為
()。
A、課號,成績
B、學(xué)號,成績
C、學(xué)號,課號
D、學(xué)號,姓名,成績
標(biāo)準(zhǔn)答案:C
知識點解析:關(guān)鍵字是由屬性或?qū)傩缘慕M合,其值能夠唯一地標(biāo)識一個元組,而在
SC中學(xué)號和課號的組合可以對元組進(jìn)行唯一的標(biāo)識。
二、選擇題(1分)(本題共“題,每題7.0分,共〃
分。)
10、兩次運行下列的程序,如果從鍵盤上分別輸入3和1,則輸出結(jié)果是()。
main(){intx;scanf("%d",&x);if(x++>2)printf("%d",x);elseprintf(M%d\n",x—);}
A、4和2
B、4和1
C、4和0
D、3和1
標(biāo)準(zhǔn)答案:A
知識點解析:本題考查ifelse語句。首先scanf函數(shù)通過鍵盤讀入x的值。當(dāng)x=3
時,第一個if語句,先判斷條件,取x的值3和2比較,然后將x的值加1,發(fā)現(xiàn)
條件成立,執(zhí)行下列的prinlf語句,輸出x的值4。當(dāng)x=l時,第一個if語句,先
判斷條件,取x的值1和2比較,然后將x的值加l(x的值變?yōu)?),發(fā)現(xiàn)條件不成
立,執(zhí)行下列的else語句,先輸出x的值2,再將x的值減1。
11、在數(shù)據(jù)流圖中,帶有箭頭的線段表示的是()。
A、控制流
B、數(shù)據(jù)流
C、模塊調(diào)用
D、事件驅(qū)動
標(biāo)準(zhǔn)答案:B
知識點解析:數(shù)據(jù)流圖中帶箭頭的線段表示數(shù)據(jù)流,沿箭頭方向傳遞數(shù)據(jù)的通道,
一般在旁邊標(biāo)注數(shù)據(jù)流名。
12、有以下程序//includemain(){inta;scanf("%d”,&a);if(a++<9)printf(44%d\n,\a);
elseprintf("%d\n”,a--);)程序運行時從鍵盤輸入9〈回車〉,則輸出結(jié)果是
A、11
B、10
C、9
D、8
標(biāo)準(zhǔn)答案:B
知識點解析:本題考查的是if…else選擇結(jié)構(gòu)和變量自加?自減運算。從鍵盤輸入9
問車后方的值為9,if語句中,先判斷a<9,再執(zhí)行a自加i(a為10)運算,此時if語句值
為假,執(zhí)行else語句;在else語句中,同樣先執(zhí)行輸入a的值,再執(zhí)行a自減運算,故輸
出結(jié)果為10o
13、若要求從鍵盤讀人含有空格字符的字符串,應(yīng)該使用函數(shù)()。
A、getc()
B、gets()
C^getchar()
D、scanf()
標(biāo)準(zhǔn)答案:2
知識點新斤:gete()函數(shù)是從文件指針指定的文件中讀入一個字符,并把它作為函
數(shù)值返回;getchar。函數(shù)是從終端(或系統(tǒng)隱含指定的輸入設(shè)備)輸入一個字符,
gelc()和getehar。都不能讀字符串(可以與循環(huán)語句結(jié)合輸入一個字符串):seanf(涵
數(shù)不能輸入帶空格的字符串;gets。函數(shù)可以從鍵盤讀入空格字符。
14、下列程序的運行結(jié)果為omain(){intn;for(n=l;n<=10;n++)
{if(n%3==0)continue;printf("%d",n);))
A、12457810
B、369
C、12
D、12345678910
標(biāo)準(zhǔn)答案:1
知識點解析:暫無解析
15、C語言中各種基本數(shù)據(jù)類型的存儲空間長度排列為()
A、char<long<int<float<double
B、double<float<long<int<char
C>char<int<long<float<doublc
D、float<int<long<chai<double
標(biāo)準(zhǔn)答案:4
知識點解析:暫無解析
16、以下合法的賦值語句是。
A、X=Y=100
B、D-;
C、X+Y;
D、C=int(A+B)
標(biāo)準(zhǔn)答案:2
知識點解析:本題中的答案A與D都缺少“廣,而答案C中,表達(dá)式是不能獨立成
為語句的,答案B使用了C語言的自減運算符它就相當(dāng)于口=?1,所以答案B為
一賦值語句。
17、設(shè)x為int型變量,執(zhí)行以下語句,x=10;x+=x=x?x;x的值為。
A、10
B、20
C、30
D、40
標(biāo)準(zhǔn)答案:2
知識點解析:本題x=10,表達(dá)式"x+=x=x?x;”的求解步驟如下:先進(jìn)行x?=x?x的
運算,相當(dāng)于x=x-(x-x)=x=10;再進(jìn)行x+=x的運算,HPx=x+x=20o
18、下列能正確定義一維數(shù)組的選項是()。
A、inta[5]={0,l,2,3,4,5);
chara口二{0,1,2,3,4,5};
C、char
Dsinta[5]="0123";
標(biāo)準(zhǔn)答案:2
知識點解析:在定義數(shù)組時,如果賦給的初始值個數(shù)大于數(shù)值的長度,這樣就會越
界,因此選項A)錯誤;選項C)中定義的是一個字符變量C:選項D)中整型數(shù)組a
中只能存儲整型數(shù)據(jù),而不能存儲字符串常量“0123”。
19、已知i、j、k為ini型變量,若要從鍵盤輸入2、3、4<CR>,使i、j、k的值
分別為2、3、4下列正確的輸入語句是()。
A、scanf("%3d,%3d,%3d“,&i,&j,&k);
B、scanR"%d,%d,%d",&i,&j,&k);
C、scanfT%d%do/od“,&i,&j,&k);
D、scaaf(''i=%d,j=%d,k=%d",&i,&j,&k);
標(biāo)準(zhǔn)答案:2
知識點解析:函數(shù)scanf()的調(diào)用形式是:scanf(格式字符串,輸入項地址表)。其
中,“格式字符串”是要輸入的變量的格式符;“輸入項地址表”是要輸入的變量的地
址。若在格式符中插入了其他字符,則在輸入時要求按一一對應(yīng)的位置原樣輸入這
些字符,其中的逗號也必須輸入。
20、設(shè)有定義:longx=-123456L;,則以下能夠正確輸出變量x值的語句是
A、printf("x=%d\n",x);
B、printf(nx=%ld\n'\x);
C、printf(nx=%8dL\n",x);
D、printf("x=%LD\n",x);
標(biāo)準(zhǔn)答案:B
知識點解析:在語言環(huán)境下,輸出long型數(shù)時,在%和~之間必須加1(L的小
寫);輸出double型數(shù)時,在%和f(e)之間也必須加1。
三、選擇題(2分)(本題共20題,每題1.0分,共20
分。)
21、以下能正確定義二維數(shù)組的是o
A、inta口[3];
B.inta[][3]={2*3);
C>inta[][3]={};
D.inta[2][3]=((l),{2},{3,4}}:
標(biāo)準(zhǔn)答案:B
知識點解析:(1)二維數(shù)組的定義二維數(shù)組的定義方式為:類型說明符數(shù)組名[常量
表達(dá)式][常量表達(dá)式二維數(shù)組在內(nèi)存中是按行優(yōu)先的順序存放的,即先存放第
一行的元素,再存放第二行的元素,依次類推。(2)二維數(shù)組元素的引用二維數(shù)組
元素的表示形式為:數(shù)組名[下標(biāo)][下標(biāo)],下標(biāo)可以是整型常量或整型表達(dá)式其范
圍為:0?(常量表達(dá)式-1)。(3)二維數(shù)組的初始化可以用以下方法對二維數(shù)組元素
初始化:①分行給二維數(shù)組賦初值例如:inta⑵⑵={{1,2},{3,4}};這種賦值方
式比較直觀,把第1個大括號內(nèi)的數(shù)據(jù)賦給第1行的元素,第2個大括號內(nèi)的數(shù)據(jù)
賦給第2行的元素,即按行賦值。②可以將所有數(shù)據(jù)寫在一個大括號內(nèi),按數(shù)組
排列的順序?qū)Ω鱾€元素賦初值。③可以對部分元素賦初值,沒有初始化的元素值
為0。④如果對全部數(shù)組元素賦初值,則定義數(shù)組時對第一維的長度可以不指
定,但第二維的長度不能省略。
22、以下定義語句中正確的是()。
A、inta=b=0;
B>charA=65+l,b='b';
C、floata=1,*b=&a,*c=&b;
D、doublea=0.0;b=1.1;
標(biāo)準(zhǔn)答案:B
知識點解析:暫無解析
23、以下敘述中錯誤的是
A、sets函數(shù)用于從終端讀入字符串
getchar函數(shù)用于從磁盤文件讀入字符
C、fputs函數(shù)用于把字符串輸出到文件
D、fwflle函數(shù)用于以二進(jìn)制形式輸出數(shù)據(jù)到文件
標(biāo)準(zhǔn)答案:B
知識點解析:gctchar函數(shù)的作用是從終端讀入一個字符。
24、下列字符數(shù)組初始叱語句中,不正確的是()。
A^charc[]=,goodmoming,;
B、charc[20]"goodmoming";
C、charc[]={,a\,b\,c\,d,};
D^charc[]={"goodmorning");
標(biāo)準(zhǔn)答案:A
知識點角》析:本題考查兩個概念:①用單引號括起來的一個字符常量只能存放一
個字符;②C語言中沒有字符串變量,只能用字符數(shù)組來存儲字符串。選項A)中
一個單引號內(nèi)放了若干個字符是錯誤的;選項B)和選項D)選項中將一個字符串賦
值給一個字符數(shù)組是允許的。
25、設(shè)變量a、b、c、d和y都己正確定義并賦值。若有下列if語句if(aVb)if(c=
=d)y=0;elsey=l;該語句所表示的含義是()。
*
?=1Ia>b
A、
fo旦I
y=〈]"油口ed
B、
0且
/=1l且/
C、
0a<J)flc^d
y=<Ictd
D、
標(biāo)準(zhǔn)答案:C
知識點解析:語句if(c==D)y=O;elsey=l;是if(a〈B)語句的一個子句。所以整
個C語句表達(dá)式的意思是:在、aVb的情況下,如果c=d則y=0,否則y==
lo所以,選項C)為止確答案。
26、下列程序的輸出結(jié)果是()。#includemain(){inta=0,i;for(i=l;i<5;i++)
{switch(i){case0;case3:a+=l;case1:case2:a=2;default:a+=3;))
printf("%d",a);)
A、19
B、18
C、6
D、8
標(biāo)準(zhǔn)答案;A
知識點解析:本題考查swilchcase開關(guān)語句.default退出繼續(xù)循環(huán)。當(dāng)時.執(zhí)
行easel,因為沒有break語句,所以依次往下運行,a=a+2=2,a=a+3=5;當(dāng)i=2
時,執(zhí)行case2,沒有break語句,所以依次往下運行,a=a+2=7,a=a+3=10;當(dāng)
i=3時,執(zhí)行case3,當(dāng)/@+1=11,沒有break語句,所以依次往下運行,
a=a+2=13,a=a+3=16;當(dāng)i=4時。沒有case語句,則執(zhí)行default,a=a+3=19,i=5
不成立,循環(huán)結(jié)束。表達(dá)式的右邊出現(xiàn)變量本身,選項D中字母E后面的數(shù)應(yīng)該
為整數(shù),所以不對。
27、以下程序的輸出結(jié)果是______o
A、54321
B、12345
C、12345
D、543210niain(){intw=5;fun(w);printf("\nH);}fun(int
k){if(k>0)fun(k-I);printf(“%d"”,k);}
標(biāo)準(zhǔn)答案:B
知識點解析:暫無解析
28、C語言規(guī)定,簡單變量作實參時,它和對應(yīng)形參之間的數(shù)據(jù)傳遞方式是
A、由實參傳給形參,再由形參傳回給實參
B、地址傳遞
C、單向值傳遞
D、由用戶指定傳遞方式
標(biāo)準(zhǔn)答案:C
知識點解析:暫無解析
29>有以下程序:#include<stdio.h>main(){FILE*fp;inti,k,n;
fp=fopen("data.dar'Vw+');for(i=l;i<6;i++){fprintf(fp,"%d",i);if(i%3==0)
fprintf(fp,"\n");}rewind(fp);fscanf(fp,"%d%d",&k,&n);printf(H%d%d\n",k,n);
fclose(fp);}程序運行后的輸出結(jié)果是()。
A、00
B、12345
C、14
D、12
標(biāo)準(zhǔn)答案:8
知識點解析:程序首先定義了一個文件指針fp,并使用fopen()函數(shù)以“w+”方式新
建一個可讀寫文件“datadat”。然后使用一個for循環(huán),循環(huán)變量i從1遞增到5,
在循環(huán)體中每次寫入循環(huán)變量i的值和4個空格,當(dāng)i能被3整除的時候?qū)懭胍粋€
換行符。所以循環(huán)結(jié)束時,文件中的內(nèi)容應(yīng)該為:12345接下來程序使用
rewind。函數(shù),將文件的讀寫指針調(diào)回起始位也。并調(diào)用fscanf()函數(shù)從文件中讀取
兩個整數(shù)到變量k和n。所以最終輸出應(yīng)該為:12。故本題選D。
30、有如下程序:main(){inta[3][3]={{1,2},{3,4),{5,6}),i,j,s=O;for(i=l;i<3;i++)
for(j=0;j<=i;j++)s+=a[i]|j];printf("%d\n",s);}該程序的輸出結(jié)果是。
A、18
B、19
C、20
D、21
標(biāo)準(zhǔn)答案:1
知識點解析:題中的外循環(huán)只執(zhí)行了2次:第1次:a[l][0]=3,a[l][l]=4,所以
s=7;第2次:af21[01=5,a⑵口]=6,a⑵⑵=0,所以s=7+5+6+0=18。
31、下列程序的運行結(jié)果為o#defineMSDOS#ifdefMSDOS#define
INTEGERSIZE32#clse#deflneINTEGERSIZE16#endifmain(){printf
C,intcger_size=%d\n",INTEGER_SIZE);}
A、integersize=32
B、integer_size=16
C、integersize=32,integer_size=16
D、錯誤
標(biāo)準(zhǔn)答案:1
知識點解析:暫無解析
32、己知字母A的ASCH碼值是65,字母a的ASCII碼值是97,以下程序
omaini(){chara='A';intb=20;printh("%d,%on,(a=a+a,a+b,b),a+,a,-,A,,b);}
A、表達(dá)式非法,輸出零或不確定值
B、因輸出項過多,無輸出或輸出不確定值
C、輸出結(jié)果為20,141
D、輸出結(jié)果為20,141,20
標(biāo)準(zhǔn)答案:4
知識點解析:本題中首先輸出逗號表達(dá)式“a=a+a,a+b,b”的值,即20。然后以八進(jìn)
制的形式輸出狗值為97對應(yīng)的八進(jìn)制數(shù)141,由于最后一個表達(dá)式b沒
有對應(yīng)輸出格式的輸出預(yù)表列就不會輸出。
33、運行下面程序時,從鍵盤輸入字母H,則輸出結(jié)果是#include<stdio.h>
main(){charch;ch=gctchar();switch(ch){caseH':printt("Hcllo!\n");
case'G':printf("Goodmoming!\n");default:printf("Bye_Bye!\n");)}
A、Hello!
B、Hello!GoodMoring!
C、Hello!Goodmoming:Bye_Bye!
D^Hello!Bye_Bye!
標(biāo)準(zhǔn)答案:4
知識點解析:本題主要對swilch語句進(jìn)行了考查。swiich語句的執(zhí)行過程為:進(jìn)入
switch結(jié)構(gòu)后,對條件表達(dá)式進(jìn)行運算,然后從上至下去找與條件表達(dá)式值相匹配
的case,以此作為入口,執(zhí)行switch結(jié)構(gòu)中后面的各語句,直到遇到break語句,
則跳出switch語句,如果各case都不匹配時則執(zhí)行default后面的語句。本題中ch
為字符'HL所以case、H,條件中的語句將被執(zhí)行,由于沒有break語句,所以
case'C'后的語句也被執(zhí)行,由于同樣的缺少break語句,所以default后的語句也
被執(zhí)行了。
34、以下說法正確的是()
A、宏定義是C語句,所以要在行末加分號
B、可以使用#undef命令來終止宏定義的作用域
「、在進(jìn)行宏定義時,宏定義不能層層置換
D、對程序中用雙引號括起來的字符串內(nèi)的字符,與宏名相同的要進(jìn)行置換
標(biāo)準(zhǔn)答案:2
知識點解析:暫無解析
35、若有說明:int*p,m=5,n;,以下正確的程序段是()。
A、p=&m;scanf(H%d",&p)
p=&n;scanf("%dn,&p)
C、scsnf("%d",&p)p=&n;
D、p=&n;p=&m;
標(biāo)準(zhǔn)答案:8
知識點解析:p為指針型變量,在輸入函數(shù)的地址列表中不用&,當(dāng)給指針變量賦
值時是取變量的地址賦給指針變量,&為取地址運算符,因此只有選項D正確。
36、有以卜.程序main。{chars[]="159",*p;p=s;
printf("%c",*p++);printf("%c",*p++);)程序運行后的輸出結(jié)果是
A、15
B、16
C、12
D、59
標(biāo)準(zhǔn)答案:1
知識點解析:自增運算符放在變量之前表示在使用變量之前,先使變量的值
加1;放在變量之后表示在使用變量之后,再使變量的值加1。語句p=s;使指針p
指向字符串s的首地址,第一次輸出語句先輸出字符"',指針p再往后移一位,指
向字符5的地址,第二個輸出語句,同樣先輸出字符,5二指針p再往后移一位,
指向字符‘少的地址。
37、若有定義floata[15],*p=a;,且數(shù)組a的首地址為300H,則p+13所指向的數(shù)組
元素的地址為()o
A、334H
B、30DH
C、352H
D、31AH
標(biāo)準(zhǔn)答案:4
知識點解析:解答本題,首先要明白在對指針進(jìn)行加,減運算的時候,數(shù)字“1”不
是十進(jìn)制的數(shù)“1”,而是指“1”個存儲單元長度,而1個存儲單元長度占多少存儲空
間,應(yīng)該視具體情況而定。如果基本類型是ini型,移動1個存儲單元的長度就是
位移2個字節(jié),如果基本類型是float型,移動1個存儲單元的長度就是位移4個
字節(jié)。所以p+13所指向的數(shù)組元素的地址為:300H+(13*4)H=352H。
38、下列敘述中不正確的是()。
A、在C語言中調(diào)用函數(shù)時,只能把實參的值傳送給形參,形參的值不能傳送給實
參
B、在C的函數(shù)中,最好使用全局變量
C、外部變量可以在函數(shù)之間傳遞數(shù)據(jù)
D、自動變量實質(zhì)上是一個函數(shù)內(nèi)部的局部變量
標(biāo)準(zhǔn)答案:2
知識點解析:編譯時,編譯系統(tǒng)不為局部變量分配內(nèi)存單元,而是在程序運行中,
當(dāng)局部變量所在的函數(shù)被調(diào)用時,編譯系統(tǒng)根據(jù)需要要臨時分配內(nèi)存,調(diào)用結(jié)束空
間釋放:全局變量一經(jīng)定義,編譯系統(tǒng)為其分配固定的內(nèi)存單元,在程序運行的自
始至終都占用固定的單元。在內(nèi)存不確定的情況下,
溫馨提示
- 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年滁州市公安機(jī)關(guān)公開招聘警務(wù)輔助人員50人備考題庫及答案詳解參考
- 2025年莆田市公安局面向社會及退役軍人公開招聘警務(wù)輔助人員148人備考題庫及參考答案詳解一套
- hadoop溫度分析系統(tǒng)課程設(shè)計
- java桌面課程設(shè)計記事本
- javaweb代碼課程設(shè)計
- 班級通訊錄系統(tǒng)課程設(shè)計
- 2025年黃岡市文化和旅游局所屬事業(yè)單位專項公開招聘工作人員備考題庫及答案詳解1套
- 2025年成都東部新區(qū)應(yīng)急管理局招聘備考題庫及答案詳解參考
- 2025年嘉興市秀洲區(qū)人民醫(yī)院公開招聘10名編外合同制護(hù)理人員備考題庫完整參考答案詳解
- 2025湖北隨州市隨縣事業(yè)單位專項招聘隨軍家屬1人筆試重點題庫及答案解析
- 北師大版八年級數(shù)學(xué)上冊全冊同步練習(xí)
- 制造業(yè)數(shù)字化轉(zhuǎn)型公共服務(wù)平臺可行性研究報告
- 氫能與燃料電池技術(shù) 課件 5-燃料電池
- DG-TJ08-2011-2007 鋼結(jié)構(gòu)檢測與鑒定技術(shù)規(guī)程
- 【課件】臺灣的社區(qū)總體營造
- 重慶市兩江新區(qū)2023-2024學(xué)年五年級上學(xué)期英語期末試卷
- BGO晶體、LYSO晶體、碲鋅鎘晶體項目可行性研究報告寫作模板-備案審批
- 昆明理工大學(xué)《機(jī)器學(xué)習(xí)》2023-2024學(xué)年第一學(xué)期期末試卷
- 2023版國開電大本科《高級財務(wù)會計》在線形考(任務(wù)一至四)試題及答案
- 難治性類風(fēng)濕關(guān)節(jié)炎的診治進(jìn)展
- 航天禁(限)用工藝目錄(2021版)-發(fā)文稿(公開)
評論
0/150
提交評論