![2021-2022年內(nèi)蒙古自治區(qū)通遼市全國計算機(jī)等級考試C語言程序設(shè)計預(yù)測試題(含答案)_第1頁](http://file4.renrendoc.com/view/6522a856037868767ee667139eb53b12/6522a856037868767ee667139eb53b121.gif)
![2021-2022年內(nèi)蒙古自治區(qū)通遼市全國計算機(jī)等級考試C語言程序設(shè)計預(yù)測試題(含答案)_第2頁](http://file4.renrendoc.com/view/6522a856037868767ee667139eb53b12/6522a856037868767ee667139eb53b122.gif)
![2021-2022年內(nèi)蒙古自治區(qū)通遼市全國計算機(jī)等級考試C語言程序設(shè)計預(yù)測試題(含答案)_第3頁](http://file4.renrendoc.com/view/6522a856037868767ee667139eb53b12/6522a856037868767ee667139eb53b123.gif)
![2021-2022年內(nèi)蒙古自治區(qū)通遼市全國計算機(jī)等級考試C語言程序設(shè)計預(yù)測試題(含答案)_第4頁](http://file4.renrendoc.com/view/6522a856037868767ee667139eb53b12/6522a856037868767ee667139eb53b124.gif)
![2021-2022年內(nèi)蒙古自治區(qū)通遼市全國計算機(jī)等級考試C語言程序設(shè)計預(yù)測試題(含答案)_第5頁](http://file4.renrendoc.com/view/6522a856037868767ee667139eb53b12/6522a856037868767ee667139eb53b125.gif)
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
2021-2022年內(nèi)蒙古自治區(qū)通遼市全國計算機(jī)等級考試C語言程序設(shè)計預(yù)測試題(含答案)學(xué)校:________班級:________姓名:________考號:________
一、單選題(20題)1.下列關(guān)于AOE網(wǎng)的敘述中,不正確的是()。
A.關(guān)鍵活動不按期完成就會影響整個工程的完成時間
B.任何一個關(guān)鍵活動提前完成,那么整個工程將會提前完成
C.所有的關(guān)鍵活動提前完成,那么整個工程將會提前完成
D.某些關(guān)鍵活動提前完成,那么整個工程將會提前完成
2.在一個無向圖中,所有頂點的度數(shù)之和等于所有邊數(shù)的()倍。
A.2B.3C.1D.1.5
3.一個算法的語句執(zhí)行次數(shù)為(2n2+2nlog2n+4n-7),則其時間復(fù)雜度為()。
A.O(n2)B.O(nlog2n)C.O(n)D.O(2n2)
4.下列敘述中正確的是()。A.在棧中,棧中元素隨棧底指針與棧頂指針的變化而動態(tài)變化
B.在棧中,棧頂指針不變,棧中元素隨棧底指針的變化而動態(tài)變化
C.在棧中,棧底指針不變,棧中元素隨棧頂指針的變化而動態(tài)變化
D.在棧中,棧中元素不會隨棧底指針與棧頂指針的變化而動態(tài)變化
5.下列關(guān)于棧的敘述中,正確的是()。
A.棧底元素一定是最后入棧的元素B.棧操作遵循先進(jìn)后出的原則C.棧頂元素一定是最先入棧的元素D.以上三種說法都不對
6.在一個帶頭結(jié)點的單鏈表HL中,若要在第一個元素之前插入一個由指針p指向的結(jié)點,應(yīng)該使用的語句為()
A.HL=p;p->next=HL;
B.p->next=HL;HL=p;
C.p->next=HL->next;HL->next=p;
D.p->next=HL;p=HL;
7.在C++中,一個函數(shù)帶有參數(shù)說明時,則參數(shù)的默認(rèn)值應(yīng)該在()中給出。A.函數(shù)定義B.函數(shù)聲明C.函數(shù)定義或聲明D.函數(shù)調(diào)用
8.
9.數(shù)據(jù)庫系統(tǒng)的核心是()。
A.數(shù)據(jù)模型B.數(shù)據(jù)庫管理系統(tǒng)C.數(shù)據(jù)庫D.數(shù)據(jù)庫管理員
10.若i、j已定義成mt型,則下列程序段中內(nèi)循環(huán)體的總執(zhí)行次數(shù)是()。for(i=6;i>0;i--)for(j=0;j<4;j++){…}A.20B.24C.25D.30
11.以下定義數(shù)組的語句錯誤的是()。
A.intnum[]={1,2,3,4,5,6};
B.intnum[][3]={{1,2},3,4,5,6};
C.intnum[2][4]={{1,2},{3,4},{5,6}};
D.intnum[][4]={1,2,3,4,5,6};
12.若已定義:inta[]={0,1,2,3,4,5,6,7,8,9},*p=a,i;其中0≤i≤9,則對a數(shù)組元素不正確的引用是______。
A.a[p-a]B.*(&a[i])C.p[i]D.a[10]
13.若某表最常用的操作是在最后一個結(jié)點之后插入一個結(jié)點或刪除最后一個結(jié)點,則采用()存儲方式最節(jié)省運算時間。
A.單鏈表B.給出表頭指針的單循環(huán)鏈表C.雙鏈表D.帶頭結(jié)點的雙循環(huán)鏈表
14.下列正確的實型常量是()。
A.E3.4B.-12345C.2.2eO.8D.4
15.一個二維數(shù)組的定義語句為“inta[3][4]={{3,4},{2,8,6}};”,則元素a[2][1]的值為()。
A.0B.4C.8D.6
16.指針可以用來表示數(shù)組元素,若已知語句:inta[3][7];則下列表示中正確的是()。
A.*(a+1)[5]B.*(*a+3)C.*(*(a+1))D.*(&a[0][0]+2)
17.有以下程序:#include<stdio.h>voidf(intb[]){inti;for(i=2;i<6;i++)b[i]*=2;}main(){inta[10]={1,2,3,4,5,6,7,8,9,10},i;f(a);for(i=0;i<10;i++)printf(“%d,”,a[i]);}程序的運行結(jié)果是()。A.1,2,3,4,5,6,7,8,9,10,
B.1,2,6,8,10,12,7,8,9,10,
C.1,2,3,4,10,12,14,16,9,10,
D.1,2,6,8,10,12,14,16,9,10,
18.下而程序的輸出結(jié)果是()。
A)32
B)26
C)24
D)4
19.有以下程序:#include<stdi0.h>main(){inta=1,b=2;for(;a<8;a++){b+=a;a+=2;)printf("%d,%d\n",a,b);}程序運行后的輸出結(jié)果是()。A.9,18B.8,11C.7,11D.10,14
20.數(shù)字字符0的ASCII值為48,運行下列程序的輸出結(jié)果是()。main(){chara='1',b='2';printf("%c,",b++);printf("%d\n",b-A);}
A.3,2B.50,2C.2,2D.2,50
二、2.填空題(20題)21.下列程序的輸出結(jié)果是【】。
intt(intx,inty,intcp,intdp)
{cp=x*x+y*y;
dp=x*x-y*y;
}
main()
{inta=4,b=3,c=5,d=6;
t(a,b,c,d);
printf("%d%d\n",c,d);
}
22.符合結(jié)構(gòu)化原則的三種基本控制結(jié)構(gòu)是順序結(jié)構(gòu)、()和循環(huán)結(jié)構(gòu)。
23.以下函數(shù)sstrcat的功能是實現(xiàn)字符串的連接,即將t所指字符串復(fù)制到s所指字符串的尾部。例如:,所指字符串為abed,t所指字符串為efgh,調(diào)用函數(shù)sstrcat后s所指字符串為abcdefgh。請?zhí)羁铡?/p>
#inehde<stdio.h>
#include<string.h>
voidsstuat(char*9,char*t)
{intn;
n=strlen(s);
while(*(s+n)=【】){s++;t++;}
24.軟件危機(jī)出現(xiàn)于60年代末,為了解決軟件危機(jī),人們提出了【】的原理來設(shè)計軟件,這就是軟件工程誕生的基礎(chǔ)。
25.下面程序的運行結(jié)果是()。#include<stdio.h>#defineSIZE12main(){chars[SIZE];inti;for(i=0;i<SIZE;i++)s[i]='A'+i+32;sub(s,5,SIZE-1);for(i=0;i<SIZE;i++)printf("%c",s[i]);printf("\n");}sub(char*a,intt1,intt2){charch;while(t1<t2){ch=*(a+t1);*(a+t1)=*(a+t2);*(a+t2)=ch;t1++;t2--;}}
26.與表達(dá)式a+=b等價的另一書寫形式是______。
27.以下程序運行后的輸出結(jié)果是【】。
main()
{
intx=0210;
printf("%X\n",x);
}
28.軟件生命周期包括8個階段。為了使各時期的任務(wù)更明確,又可分為3個時期:軟件定義期、軟件開發(fā)期、軟件維護(hù)期。編碼和測試屬于【】期。
29.有以下程序段,且變量已正確定義和賦值
for(s=1.0,k=1;k<=n;k++)s=s+1.0/(k*(k+1));
printf("s=%f\n\n",s);
請?zhí)羁?,使下面程序段的功能與之完全相同
s=1.0;k=1;
while(【】){s=s+1.0/(k*(k+1));【】;}
printf("s=%f\n\n",s);
30.數(shù)據(jù)管理技術(shù)發(fā)展過程經(jīng)過人工管理、文件系統(tǒng)和數(shù)據(jù)庫系統(tǒng)這3個階段,其中數(shù)據(jù)獨立性最高的階段是【】。
31.以下程序的輸出結(jié)果是【】。
#include<stdio.h>
main()
{inti;
for(i='a';i<'f';i++,i++)printf("%c",i-'a'+'A');
printf("\n");
}
32.以下程序的運行結(jié)果是【】。
#include<stdio.h>
longfib(intg)
{switch(g)
{case0:return0;
case1:
case2:return1;}
return(fib(g-1)+fib(g-2));}
main()
{longk;
k=fib(5);
printf("k=%5ld\n",k);}
33.執(zhí)行以下程序后的輸出結(jié)果是【】。
main()
{inta=10;
a=(3*5,a+4);printf("a=%d\n",a);
}
34.已知head指向一個帶頭結(jié)點的單向鏈表,鏈表中每個結(jié)點包含數(shù)據(jù)域(data)和指針域(next),數(shù)據(jù)域為整型。以下函數(shù)求出鏈表中所有鏈結(jié)點數(shù)據(jù)域的和值,作為函數(shù)值返回。請在橫線處填入正確內(nèi)容。
structlink
{intdata;structlink*next;}
main()
{structlink*head;
......
sum(head);
......
}
sum(【】);
{structlink*p;ints=0;
p=head->next;
while(p){s+=p->data;p=p->next;}
return(s);}
35.在面向?qū)ο蟪绦蛟O(shè)計中,從外面看只能看到對象有外部特征,而不知道也無須知道數(shù)據(jù)的具體結(jié)構(gòu)以及實現(xiàn)操作的算法,這稱為對象的______。
36.當(dāng)運行以下程序時,輸入abcd,程序的輸出結(jié)果是()。insert(charstr[]){inti;i=strlen(str);while(i>0){str[2*i]=str[i];str[2*i-1]='*';i--;}printf("%s\n",str);}main(){charstr[40];scanf("%s\n",str);insert(str);}
37.下列程序的循環(huán)次數(shù)是______。
x=2;
do
{x=x*x;}
while(!x);
38.在運算過程中,能夠使空表與非空表的運算統(tǒng)一的結(jié)構(gòu)是【】。
39.在循環(huán)中,continue語句與break語句的區(qū)別是:______語句只是結(jié)束本次循環(huán),然后進(jìn)行循環(huán)的條件判定。
40.在面向?qū)ο蠓椒ㄖ?,類的實例稱為______。
三、1.選擇題(20題)41.以下敘述錯誤的是()。
A.變量的作用域取決于變量定義語句的位置
B.全局變量可以在函數(shù)以外的任何部位進(jìn)行定義
C.局部變量的作用域可用于其他函數(shù)的調(diào)用
D.一個變量說明為static存儲類型是為了限制其他編譯單元的引用
42.以下程序運行后,輸出結(jié)果是
#definePT5.5
#defineS(x)PT*x*x
#include<stdio.h>
main()
{inta=1,b=2;
printf("%4.1f\n",S(a+b));}
A.49.5B.9.5C.22D.45
43.若程序執(zhí)行時的輸入數(shù)據(jù)是"2473",則下述程序的輸出結(jié)果是#include<stdio.h>voidmain(){intcs;while((cs=getchar())!=,'\n'){switch(cs='2'){case0case1:putchar(cs+4);case2:putchar(cs+4);break;case3:putchar(cs+3);default:putchar(cs+2);}}}
A.668977B.668966C.6677877D.6688766
44.下面關(guān)于對象概念的描述中,錯誤的是
A.對象就是C語言中的結(jié)構(gòu)體變量
B.對象代表著正在創(chuàng)建的系統(tǒng)中的一個實體
C.對象是一個狀態(tài)和操作(或方法)的封裝體
D.對象之間的信息傳遞是通過消息進(jìn)行的
45.執(zhí)行以下的程序段后,m的值是______。inta[2][3]={{1,2,3},{4,5,6}};intm,*p;p=&a[0][0];m=p[4];
A.4B.5C.3D.不確定
46.若二維數(shù)組a有m列,則在a[i][j]前的元素個數(shù)為()。
A.j*m+iB.i*m+jC.j*m+i+1D.i*m+j+1
47.有以下程序:#include<stdio.h>main(){intx=102,y=012;printf("%2d,%2d\n",x,y);}執(zhí)行后的輸出結(jié)果是()。
A.10,01B.02,12C.102,10D.02,10
48.在面向?qū)ο蠓椒ㄖ校绻半u”是一類對象,“公雞”、“母雞”等都繼承了“雞”類的性質(zhì),因而是“雞”的()。
A.子類B.實例C.對象D.父類
49.下列4項說法中,不正確的是______。
A.數(shù)據(jù)庫減少了數(shù)據(jù)冗余B.數(shù)據(jù)庫中的數(shù)據(jù)可以共享C.數(shù)據(jù)庫避免了一切數(shù)據(jù)的重復(fù)D.數(shù)據(jù)庫具有較高的數(shù)據(jù)獨立性
50.下列程序的輸出結(jié)果是()。#include<stdio.h>#include<string.h>main(){chara[]="\n123\\";printf("%d,%d\n",strlen(a),sizeof(a));}
A.5,6B.5,5C.6,6D.6,5
51.若以下程序所生成的可執(zhí)行文件名為file1.exe,main(intargc,char*argv[]){while(argc-->0){++argv;printf("%s",*argv);}}當(dāng)鍵入以下命令執(zhí)行該程序時:FILE1CHINABEUINGSHANGHAI程序的輸出結(jié)果是()
A.CHINABEIJIANGSHANGHAI
B.FILE1CHINABEIJING
C.CBS
D.FCB
52.下列所述中,是軟件調(diào)試技術(shù)的是()。
A.錯誤推斷B.集成測試C.回溯法D.邊界值分析
53.設(shè)有定義:10ngx=-123456L,則以下能夠正確輸出變量x值的語句是()。
A.printf("x=%d\n",x);
B.printf("x=%1d\n",x);
C.peintf("x=%8dL\n",x);
D.printf('x=%LD\n",x);
54.下面的程序執(zhí)行后,文件test.t中內(nèi)容是______。#include<stdio.h>voidfun(char*fname,char*st){FILE*myf;inti;myf=fopen(fname,"w");for(i=0;i<strlen(st);i++)fputc(st[i],myf);fclose(myf);}main(){fun("test.t","newworld");fun("test.t","hello,");}
A.hello,B.newworldhelloC.newworldD.hello,rld
55.設(shè)x、y和z是int型變量,且x=4,y=6,z=8,則下列表達(dá)式中值為0的是()。
A.x&&y
B.x<=y
C.x‖y+z&&y-z
D.!((x<y)&&!z‖1)
56.已知i、j、k為血型變量,若要從鍵盤輸入2、3、4<CR>,使i、j、k的值分別為2、3、4,下列正確的輸入語句是()。
A.scanf(“%3d,%3d,%3d”,&i,&j,&k);
B.scanf(“%d,%d,%d”,&i,&J,&k);
C.scanf(“%d%d%d”,&i,&j,&k);
D.scanf(“i=%d,%d,k=%d”,&i,&j,&k);
57.兩次運行下列的程序,如果從鍵盤上分別輸入3和1,則輸出結(jié)果是()。main(){intx;scanf("%d",&x);if(x++>2)printf("%d",x);elseprintf("%d\n",x--);}
A.4和2B.4和1C.4和0D.3和1
58.以下所列的各函數(shù)首部中,正確的是______。
A.voidplay(Var:Integer,varb:Integer)
B.voidplay(inta,b)
C.voidplay(inta,intb)
D.Subplay(aasinteger,basinteger)
59.若有以下的說明,對初值中整數(shù)2的正確引用方式是()。staticstruct{charch;inti;doublex;}a[2][3]={{{'a',1,3,45},{'b',2,7,98},{'c',31,93}}};
A.a[0][1].chB.a[0][1].iC.a[0][0].iD.a[0][2].i
60.下面程序段的運行結(jié)果是charstr[]="ABC",*p=str;printf("%d\n",*(p+3));
A.67B.0C.字符'C'的地址D.字符'C'
四、選擇題(20題)61.
62.有以下程序:
#include<stdio.h>
main()
{inta;
scanf("%d",&a);
if(a++<9)printf("%d\n",a);
clscprintf("%d\n",a--);
}
程序運行時從鍵盤輸入9<回車>,則輸出結(jié)果是()。
A.10B.11C.9D.8
63.有以下程序:
#include<stdio.h>
main()
{inta=7;
while(a--);
print[("%d\n",a);
}
程序運行后的輸出結(jié)果是()。
A.-l
B.0
C.1
D.7
64.
65.軟件詳細(xì)設(shè)計產(chǎn)生的圖如圖所示。該圖是()。A.N—S圖B.PAD圖C.程序流程圖D.E—R圖
66.函數(shù)調(diào)用strcat(strcpy(str1,str2),str3)的功能是()。
A.將字符串str1復(fù)制到字符串str2中后再連接到字符串str3之后
B.將字符串str1連接到字符串str2之后再復(fù)制到字符串str3之后
C.將字符串str2復(fù)制到字符串str1之后再將字符串str3連接到字符串str1之后
D.將字符串str2連接到字符串str1之后再將字符串strl復(fù)制到字符串str3中
67.
68.以下敘述中錯誤的是()。
A.一個C程序中可以包含多個不同名的函數(shù)
B.一個C程序只能有一個主函數(shù)
C.C程序在書寫時,有嚴(yán)格的縮進(jìn)要求,否則不能編譯通過
D.C程序的主函數(shù)必須用main作為函數(shù)名
69.(42)希爾排序法屬于哪一種類型的排序法()
A.交換類排序法
B.插入類排序法
C.選擇類排序法
D.建堆排序法
70.(44)對長度為N的線性表進(jìn)行順序查找,在最壞情況下所需要的比較次數(shù)為()
A.N+1
B.N
C.(N+1)/2
D.N/2
71.結(jié)構(gòu)化程序設(shè)計的三種結(jié)構(gòu)是()。
A.順序結(jié)構(gòu)、選擇結(jié)構(gòu)、轉(zhuǎn)移結(jié)構(gòu)
B.分支結(jié)構(gòu)、等價結(jié)構(gòu)、循環(huán)結(jié)構(gòu)
C.多分支結(jié)構(gòu)、賦值結(jié)構(gòu)、等價結(jié)構(gòu)
D.順序結(jié)構(gòu)、選擇結(jié)構(gòu)、循環(huán)結(jié)構(gòu)
72.
73.
有以下程序
#include<stdi0.h>
voidfun(intn,int*p)
(intf1,f2;
if(n==1||n==2)*p=1;
else
{fun(n-1,&f1);fun(n-2,&f2);
*p=f1+f2;
}
}
main
{ints;
fun(3,&s);printf("%d",s);
}
程序的運行結(jié)果是()。
A.2B.3C.4D.5
74.(10)下列模式中,能夠給出數(shù)據(jù)庫物理存儲結(jié)構(gòu)與物理存取方法的是()
A.內(nèi)模式
B.外模式
C.概念模式
D.邏輯模式
75.
76.
77.下列敘述中正確的是()。A.算法的效率只與問題的規(guī)模有關(guān),而與數(shù)據(jù)的存儲結(jié)構(gòu)無關(guān)
B.算法的時間復(fù)雜度是指執(zhí)行算法所需要的計算工作量
C.數(shù)據(jù)的邏輯結(jié)構(gòu)與存儲結(jié)構(gòu)是一一對應(yīng)的
D.算法的時間復(fù)雜度與空間復(fù)雜度一定相關(guān)
78.在數(shù)據(jù)庫設(shè)計中,將E—R圖轉(zhuǎn)換為關(guān)系模式的過程屬于()。
A.需求分析階段B.邏輯設(shè)計階段C.概念設(shè)計階段D.物理設(shè)計階段
79.
80.若有說明“chars1[30]="abc",s2[]="defghi";",則在使用函數(shù)stoat(s1,s2)后,結(jié)果是()。A.A.s1的內(nèi)容更新為abcdefghiB.s1的內(nèi)容更新為defghi\0
C.s1的內(nèi)容更新勾defghiabc\0
D.s1的內(nèi)容更新為abcdefghi\0
五、程序改錯題(1題)81.下列給定程序中,函數(shù)proc()的功能是:計算n!。例如,若輸人:6,則輸出:6!=720.000000。
請修改程序中的錯誤,使它能得出正確的結(jié)果。
注意:不要改動main()函數(shù),不得增行或刪行,也不得更改程序的結(jié)構(gòu)。
試題程序:
六、程序設(shè)計題(1題)82.請編寫一個函數(shù)proc,它的功能是:求出1~m(含m)能被7或11整除的所有整數(shù)放在數(shù)組a中,通過n返回這些數(shù)的個數(shù)。
例如,若傳給m的值為70,則程序輸出:
7111421222833354244495556636670
注意:部分源程序給出如下。
請勿改動main函數(shù)和其他函數(shù)中的任何內(nèi)容,僅在函數(shù)proc的花括號中填人所編寫的若干語句。
試題程序:
#include<stdlib.h>
#include<conio.h>
#include<stdio.h>
#defineN100
voidproc(intm,int*a,int*n)
{}
voidmain
{
intarr[N],n,k;
system("CLS");
proc(70,arr,&n);
for(k=0;k<n;k++)
if((k+1)%20==0)//每行輸出20個數(shù)
{printf("%4d",arr[k]);
printf("\n");
}
else
printf("%4d",arr[k]);
printf("\n");
}
參考答案
1.B
2.A
3.A
4.C棧是先進(jìn)后出的數(shù)據(jù)結(jié)構(gòu),在對棧操作的整個過程中,棧底指針不變,入棧與出棧操作均由棧頂指針的變化來完成,因此本題答案為c)。
5.B棧是先進(jìn)后出,因此,棧底元素是先入棧的元素,棧頂元素是后入棧的元素。
6.C
7.CC程序中函數(shù)可以在說明或定義時給一個或多個參數(shù)指定默認(rèn)值,但是不能在函數(shù)說明定義時同時指定默認(rèn)參數(shù),默認(rèn)參數(shù)值應(yīng)該在函數(shù)名第一次出現(xiàn)時指定。
8.D
9.B解析:數(shù)據(jù)庫管理系統(tǒng)是數(shù)據(jù)庫系統(tǒng)的核心,是負(fù)責(zé)數(shù)據(jù)庫的建立、使用和維護(hù)的軟件。數(shù)據(jù)庫管理系統(tǒng)建立在操作系統(tǒng)之上,實施對數(shù)據(jù)庫的統(tǒng)一管理和控制。用戶使用的各種數(shù)據(jù)庫命令以及應(yīng)用程序的執(zhí)行,最終都必須通過數(shù)據(jù)庫管理系統(tǒng)。另外,數(shù)據(jù)庫管理系統(tǒng)還承擔(dān)著數(shù)據(jù)庫的安全保護(hù)工作,按照數(shù)據(jù)庫管理員所規(guī)定的要求,保證數(shù)據(jù)庫的完整性和安全性。
10.B本題考查for循環(huán)的使用。對于第1個for循環(huán),任何一個i,內(nèi)層j的循環(huán)都要使j~0到3,j=4時不符合,所以退出j循環(huán);然后i減1,J仍然要從0~3,j=4時退出J循環(huán)直到i變成0,退出i循環(huán)。第一條for語句執(zhí)行6次,第二條for語句執(zhí)行4次,所以內(nèi)循環(huán)體執(zhí)行6*4=24次。
11.B二維數(shù)組的定義有3種形式,第一種是分行為兩位數(shù)組賦值,即intnum[]={{12},{3,4},{5,6}},第二種是按照數(shù)組排列順序進(jìn)行賦值,即intnum[]={1,2,3,4,5,6},第三種為對部分元素賦初值,即intnum[]={{1,2}{},{3,4},{5,6}},所以錯誤的為B。
12.D解析:通常,引用一個數(shù)組元素可以用下標(biāo)法,如a[P-a]形式,或指針法,如*(&a[i])的形式。本題中a[9]=9,a[10]顯然超出了數(shù)組范圍,注意,數(shù)組的下標(biāo)是從0開始的。
13.D
14.B解析:實型常量有兩種書寫形式:①小數(shù)形式,它由符號、整數(shù)部分、小數(shù)點及小數(shù)部分組成;②指數(shù)形式,由十進(jìn)制小數(shù)形式加上指數(shù)部分組成,其形式為十進(jìn)制小數(shù)e指數(shù)或十進(jìn)制小數(shù)E指數(shù)。注:e或E后面的指數(shù)必須是整數(shù),并且在e或E的前面必須有數(shù)字。本題中,選項A)中E的前面沒有數(shù)字,因此錯誤。選項C)中0.8不是整數(shù),因此錯誤。選項D)中4是整型常量而不是實型常量。
15.A
16.D
17.B數(shù)組名相當(dāng)于常量,表示的是數(shù)組首元素的地址。當(dāng)執(zhí)行函數(shù)f(a)的時候,因為傳遞的是首地址,相當(dāng)于直接對數(shù)組a進(jìn)行操作,所以從數(shù)組a的第3個元素a[2]到元素a[5],每個元素值擴(kuò)大兩倍。故本題答案為B選項。
18.C本題考查的是聯(lián)合所占的存儲空間。sizeof(t)=sizeof(douhle)*3=8*3=24。聯(lián)合體所占的存儲空間取決于所占空間最大的成員所占的空間。
19.D第一次執(zhí)行循環(huán)前,a=1,滿足a<8,執(zhí)行循環(huán)后,b=3,a=3。執(zhí)行完a++操作后,a=4。由于a<8,執(zhí)行第二次循環(huán)后,b=7,a=6,執(zhí)行完a++操作后,a=7。由于a<8,執(zhí)行第三次循環(huán)后,b=14,a=9,執(zhí)行完a++操作后a=10。此時不滿足a<8,跳出循環(huán)。
20.C解析:自增運算符“++”,出現(xiàn)在變量之前,表示先使變量的值加1,再使用變量的值進(jìn)行運算;出現(xiàn)在變量之后,表示先使用變量的值進(jìn)行運算,冉使變量的值加1。例如題中的“b++”,題中第一條語句先輸出字符b的值,此時變量b='2',因此輸出值為2;再使b的值加1,b='3',因此第二條語句輸出:b-a='3'-'1'=2。
21.5656解析:本題中a,b,c,d足實參,x,y,cp,dp是形參。C語言規(guī)定,實參變量對形參變量的數(shù)據(jù)傳遞是“值傳遞”,即單向傳遞,只由實參傳給形參,而不能由形參傳回來給實參。在內(nèi)存中,實參單元與形參單元是不同的單元。在調(diào)用函數(shù)時,給形參分配存儲單元,并將實參對應(yīng)的值傳遞給形參,調(diào)用結(jié)束后,形參單元被釋放,實參單元仍保留并維持原值。因此,程序的輸出結(jié)果是56。
22.選擇結(jié)構(gòu)選擇結(jié)構(gòu)解析:程序設(shè)計語言僅僅使用順序、選擇和重復(fù)(循環(huán))三種基本控制結(jié)構(gòu)就足以表達(dá)出各種其他形式結(jié)構(gòu)的程序設(shè)計方法。遵循程序結(jié)構(gòu)化的設(shè)計原則,按結(jié)構(gòu)化程序設(shè)計方法設(shè)計出的程序易于理解、使用和維護(hù);可以提高編程工作的效率,降低軟件的開發(fā)成本。
23.*t*t解析:程序中,(a+n)代表字符串s最后一個字符后的,'\\0',根據(jù)題意,'\\0'所在位置應(yīng)該賦值為字符串t的第一個字符,字符中t的其他字符根據(jù)循環(huán),依次賦值到,所指字符串的尾部,所以[14]應(yīng)填:*t。
24.軟件工程學(xué)軟件工程學(xué)
25.abcdelkjihgfabcdelkjihgf解析:本題先給字符型數(shù)組s的12個元素賦值a到1的12個字母,函數(shù)sub(shar*a,intt1,intt2)的功能是將數(shù)組a的從第t1+1個元素到t2+1個元素進(jìn)行逆置,在主函數(shù)中調(diào)用sub(s,5,SIZE-1)函數(shù),是將數(shù)組s的第6個元素到第12個元素進(jìn)行逆置,其他元素位置不變。
26.a=a+ba=a+b解析:a+=b與a=a+b等價,作用是把變量a的值加b后再賦給變量a。
27.8888解析:C語言規(guī)定,以0開頭的整型常量為八進(jìn)制。另外,在primf()函數(shù)中,%X表示以十六進(jìn)制無符號形式輸出一個整數(shù),且十六進(jìn)制中的ABCDEF為大寫字母。本題的輸出應(yīng)該是八進(jìn)制210的十六進(jìn)制形式。將八進(jìn)制轉(zhuǎn)換為十六進(jìn)制,可以先將其轉(zhuǎn)換為二進(jìn)制。因為1位八進(jìn)制表示3位二進(jìn)制,4位二進(jìn)制表示1位十六進(jìn)制。(210)8=(10001000)2=(88)16,故本題輸出為880
28.軟件開發(fā)軟件開發(fā)解析:軟件生命周期可以分為3個時期:軟件定義期,包括問題定義、可行性研究和需求分析3個階段;軟件開發(fā)期,包括系統(tǒng)設(shè)計、詳細(xì)設(shè)計、編碼和測試4個階段;軟件維護(hù)期,即運行維護(hù)階段。編碼和測試屬于軟件開發(fā)階段。
29.k<=nk++k<=n\r\nk++解析:本題要求將一個for循環(huán)改成while循環(huán)。首先要保證循環(huán)條件相同,在for循環(huán)中,每次執(zhí)行循環(huán)之后,循環(huán)控制變量k都會加1,而while循環(huán)則沒有,故需在循環(huán)體中增加改變k數(shù)值的語句“k++;”。
30.數(shù)據(jù)庫系統(tǒng)數(shù)據(jù)庫系統(tǒng)解析:在數(shù)據(jù)庫系統(tǒng)管理階段,通過系統(tǒng)提供的映像功能,數(shù)據(jù)具有兩方面的獨立性:一是物理獨立性,二是邏輯獨立性。數(shù)據(jù)獨立性最高的階段是數(shù)據(jù)庫系統(tǒng)階段;
31.ACEACE解析:在本題中,for循環(huán)體每執(zhí)行完一次,變量i的值自加兩次。i的初值為“a”,執(zhí)行一次循環(huán)后變?yōu)椤癱”,之后再變成“e”,當(dāng)其變?yōu)椤癵”時,循環(huán)條件若不滿足,循環(huán)終止,故本題共輸出3個字符。表達(dá)式“i-'a'+'A'”即表示輸出i對應(yīng)的大寫字母,結(jié)果為ACE。
32.k=5k=5解析:本題主要考查了函數(shù)的遞歸調(diào)用方法。g=0或\ue008g=1\ue009或g=2是遞歸的終止條件,然后用回代的方法從一個已知值推出下一個值,直到計算出最終結(jié)果。
33.a=14a=14解析:逗號表達(dá)式的值是以逗號分隔的最后一個表達(dá)式的值。所以題目中的語句a=(3*5,a+4);就等價于a=a+4;。故本題輸出結(jié)果是a=14。
34.structlink*headstructlink*head解析:考查用指針引用結(jié)構(gòu)體變量成員數(shù)據(jù)的方法。因為本題中是用結(jié)構(gòu)體變量構(gòu)成了鏈表,所以要從鏈表頭節(jié)點,逐個節(jié)點的引用結(jié)構(gòu)體的數(shù)據(jù)域,需要有指向結(jié)構(gòu)體變量的指針,依次指向各個節(jié)點,即p=p->next,而用指針引用結(jié)構(gòu)體成員數(shù)據(jù)的方法為:p->data。
35.封裝性封裝性解析:對象具有下列5個基本特點:①標(biāo)識惟一性;②分類性:③多態(tài)性;④封裝性;⑤模塊獨立性好。其中,封裝性是指從外面看只能看到對象的外部特征,對象的內(nèi)部特征即處理能力的實行和內(nèi)部狀態(tài),對外是不可見的,對象的內(nèi)部狀態(tài)只能由其自身改變。
36.a*b*c*d*a*b*c*d*解析:本題考查的是函數(shù)與一個簡單的算法結(jié)合在一起的應(yīng)用。首先定義一個int型變量來存放字符串str的長度,執(zhí)行while條件語句。通過分析可知,字符串2*i項的值可由第i項的值得到;第2*i-1項直接賦值為*,i遞減,如此反復(fù)直到不滿足i>0的條件時,輸出運行后的字符串。
37.11解析:do…while語句的功能是:首先執(zhí)行循環(huán)體語句,然后檢測循環(huán)控制條件表達(dá)式的值,若為真,則重復(fù)執(zhí)行循環(huán)體語句,否則退出循環(huán);do…while語句的特點是先執(zhí)行后判斷,因此循環(huán)體至少執(zhí)行1次.本程序中x=2不符合循環(huán)條件,所以只循環(huán)1次。
38.循環(huán)鏈表循環(huán)鏈表解析:在鏈表的運算過程中,采用鏈接方式即循環(huán)鏈表的結(jié)構(gòu)把空表與非空表的運算統(tǒng)一起來。循環(huán)鏈表具有兩個特點:①在循環(huán)鏈表中增加了一個表頭結(jié)點,其數(shù)據(jù)域為任意或根據(jù)需要來設(shè)置,指針域指向線性表的第一個元素的結(jié)點。循環(huán)鏈表的頭指針指向表頭結(jié)點。②循環(huán)鏈表中最后一個結(jié)點的指針不是空,而是指向表頭結(jié)點。
39.continuecontinue解析:continue語句只是結(jié)束本次循環(huán),然后進(jìn)行循環(huán)的條件判定。break語句是終止整個循環(huán)的執(zhí)行,不再進(jìn)行條件判定。
40.對象對象解析:類描述的是具有相似性質(zhì)的一組對象。例如,每本具體的書是一個對象,而這些具體的書都有共同的性質(zhì),它們都屬于更一般的概念“書”這一類對象。一個具體對象稱為類的實例。
41.D解析:本題考查函數(shù)調(diào)用的變量作用域。全局變量不在任何函數(shù)體內(nèi)定義,作用域為整個文件;局部變量在函數(shù)體內(nèi)定義,作用域僅為本次函數(shù);static類型是靜態(tài)變量,為了方便其他編譯單元的引用,不能隨意改變。一個函數(shù)包含兩部分:函數(shù)首和函數(shù)體,函數(shù)體包括花括號內(nèi)的所有語句。
42.A解析:考查宏替換的使用。宏替換用'#define宏名宏體'的形式來定義。在進(jìn)行編譯預(yù)處理時,將把程序中宏定義之后的所有宏名用宏體替換。宏雖然可以帶參數(shù),但宏替換過程中不像函數(shù)那樣要進(jìn)行參數(shù)值的計算、傳遞及結(jié)果返回等操作;宏替換只是簡單的字符替換,不進(jìn)行計算,因而本題中的S(a+b)進(jìn)行宏替換后為PT*1+2*1+2=5.5*1+2*1+2=9.5。
43.A解析:本題主要考查switch語句的使用方法。switch語句的執(zhí)行過程為:進(jìn)入switch結(jié)構(gòu)后,對條件表達(dá)式進(jìn)行運算,然后從上至下去找與條件表達(dá)式值相匹配的case,以此作為入口,執(zhí)行switch結(jié)構(gòu)中后面的各語句,直到遇到break語句,則跳出switch語句,如果各case都不匹配時,則執(zhí)行default后面的語句。
44.A解析:對象是由數(shù)據(jù)和容許的操作組成的封裝體,與客觀實體有直接的對應(yīng)關(guān)系,對象之間通過傳遞消息互相聯(lián)系,從模擬現(xiàn)實世界中不同事物彼此之間的聯(lián)系,B)、C)、D)是正確的,對象的思想廣泛應(yīng)用于C++、Java等語言中,因此A)錯誤。
45.B解析:程序中定義了一個指向整型變量的指針變量,并對其賦值為二維整型數(shù)組a的首元素的地址。p[4]等階于*(p-4),即二維數(shù)組a中第四個元素的值,而a是一個2*3的二維數(shù)組,其第四個元素為a[1][1],即5。
46.B解析:二維數(shù)組的元素可以看成是按矩陣形式存放的,總是先存放第一行的元素,再存放第二行的元素。數(shù)組第一維的下標(biāo)是i,說明它前面還有i行,有i*m個元素,數(shù)組第二維的下標(biāo)是j,說明它前面還有j列,有j個元素,所以共有i*m+j個元素。
47.C解析:y=012是將八進(jìn)制數(shù)12賦給變量y。格式符%d,用于輸出十進(jìn)制整數(shù);%md,m為指定的輸出值的寬度,如果數(shù)據(jù)的位數(shù)小于m,則左端補以空格,若大于m,則按實際位數(shù)輸出。本題是將八進(jìn)制數(shù)12也按十進(jìn)制數(shù)輸出,八進(jìn)制數(shù)12轉(zhuǎn)換為十進(jìn)制數(shù)為10,輸出結(jié)果為102,10。
48.A解析:面向?qū)ο蠓椒ㄖ?,繼承是表示類之間的相似性的機(jī)制。如果類X繼承類Y,則X為Y的子類,Y為X的父類(超類)。如果“雞”是一類對象,“公雞”、“母雞”等都繼承了“雞”類的性質(zhì),因而是“雞”的子類。
49.C解析:數(shù)據(jù)庫系統(tǒng)具有以下4個特點:數(shù)據(jù)的集成性、數(shù)據(jù)的高共享性與低冗余性、數(shù)據(jù)的獨立性、數(shù)據(jù)統(tǒng)一管理與控制。
50.A解析:轉(zhuǎn)義字符'\\n'表示換行,'\\\\'表示反斜杠,函數(shù)strlen()是計算字符串的長度,不包括文件結(jié)束標(biāo)志('\\0'),函數(shù)sizeof()統(tǒng)計字符串所占的字節(jié)數(shù)。
51.A
52.C解析:軟件調(diào)試技術(shù)包括強行排錯法、回溯法和原因排除法。邊界值分析、錯誤推斷都是黑盒測試的方法。
53.B解析:x為一個長整型的變量,而且是一個十進(jìn)制的數(shù),它的輸出控制符是%1d,所以排除選項A和選項C;由于C語言中是區(qū)分大小寫的,1d中的d不能為大寫,故排除選項D。4個選項中B正確。
54.A解析:C語言中文件有文本文件與二進(jìn)制文件,對文件的使用前必須先打開,打開方式有只讀、寫入、讀寫等方式。
55.D解析:本題考查邏輯運算符的使用。當(dāng)“&&”的兩個運算對象都是邏輯1時,表達(dá)式才返回值是1;當(dāng)“‖”的兩個運算對象至少有一個是邏輯1時,表達(dá)式返回值是1。選項A)中,x和y都是邏輯1。所以返回值是1:選項B)中,x=4<=y=6為邏輯1,所以返回值是1;選項C)中,y+z的值等于14,非0,y-z的值為-2,非0,所以邏輯表達(dá)式4‖14&&-2的值不為0;選項D)中,x<y為1,!z為0,1&&0為1,0‖1為1,因此,!1為0。
56.B解析:函數(shù)scanf()的調(diào)用形式是:scanf(格式字符串,輸入項地址表)。其中,“格式字符串”是要輸入的變量的格式符;“輸入項地址表”是要輸入的變量的地址。
若在格式符中插入了其他字符,則在輸入時要求按一一對應(yīng)的位置原樣輸入這些字符,其中的逗號也必須輸入。
57.A解析:本題考查ifelse語句。首先scanf函數(shù)通過鍵盤讀入x的值。當(dāng)x=3時,第一個if語句,先判斷條件,取x的值3和2比較,然后將x的值加1,發(fā)現(xiàn)條件成立,執(zhí)行下列的printf語句,輸出x的值4。當(dāng)x=1時,第一個if語句,先判斷條件,取x的值1和2比較,然后將x的值加1(x的值變?yōu)?),發(fā)現(xiàn)條件不成立,執(zhí)行下列的else語句,先輸出x的值2,再將x的值減1。
58.C解析:C語言中函數(shù)首部中的各參數(shù)必須分開單獨定義,因此選項C才是正確的。而選項A和D是其他語言的函數(shù)定義方式。
59.B解析:結(jié)構(gòu)體數(shù)組中對結(jié)構(gòu)體成員的引用要先引用到數(shù)組元素,然后像對待普通的結(jié)構(gòu)體變量一樣來對待結(jié)構(gòu)體數(shù)組元素就可以了。注意
溫馨提示
- 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 八年級英語下冊 Unit 1 單元綜合測試卷(人教版 2025年春)
- 2025年壓紋機(jī)合作協(xié)議書
- 北京課改版英語八年級上重點詞組及句型
- 2025年二手車交易買賣合同參考范文(2篇)
- 2025年代理進(jìn)口合作協(xié)議(4篇)
- 2025年人才服務(wù)代合同范文(2篇)
- 教科版小學(xué)五年級科學(xué)下冊教案(全冊)
- 2025年五年級生態(tài)文明教育教學(xué)工作總結(jié)(五篇)
- 2025年二手房轉(zhuǎn)讓買賣合同簡單版(2篇)
- 2025年臨時工勞動合同證明模板(三篇)
- 城市基礎(chǔ)設(shè)施修繕工程的重點與應(yīng)對措施
- 油氣勘探風(fēng)險控制-洞察分析
- GB 12710-2024焦化安全規(guī)范
- 2022年中考化學(xué)模擬卷1(南京專用)
- 醫(yī)療機(jī)構(gòu)質(zhì)量管理指南
- 【牛客網(wǎng)】2024秋季校園招聘白皮書
- 2024-2025銀行對公業(yè)務(wù)場景金融創(chuàng)新報告
- 2025屆鄭州市高三一診考試英語試卷含解析
- 《我國個人所得稅制下稅收征管問題研究》
- 建筑工程三通一平技術(shù)方案
- 腫瘤中醫(yī)治療及調(diào)養(yǎng)
評論
0/150
提交評論