版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領
文檔簡介
2022年遼寧省沈陽市全國計算機等級考試C語言程序設計測試卷(含答案)學校:________班級:________姓名:________考號:________
一、單選題(20題)1.
2.若以下選項中的變量已正確定義,則正確的賦值語句是()。
A.x1=26.8%3B.1+2=x2C.x3=0x12D.x4=1+2=3
3.若有函數(shù)voidfun(doublea[]。int*n){…}以下敘述中正確的是()。A.調(diào)用fun函數(shù)時只有數(shù)組執(zhí)行按值傳送,其他實參和形參之間執(zhí)行按地址傳送
B.形參a和n都是指針變量
C.形參a是一個數(shù)組名,n是指針變量
D.調(diào)用fun函數(shù)時將把double型參數(shù)組元素一一對應地傳送給形參a數(shù)組
4.以下非法的賦值語句是
A.n=(i=2,++i);B.j++;C.++(i+1);D.x=j>0;
5.有以下程序:#include<stdio.h>intshow(char*str){while(*str){putchar(*str+1);str++;}return*str+1;}main(){printf(“%d\n”,show(“ABCD”));}程序運行后的輸出結果是()。
A.ABCD0B.BCDE0C.BCDE1D.ABCD1
6.下列關于c語言用戶標識符的敘述中正確的是()。
A.用戶標識符中可以出現(xiàn)下劃線和中劃線(減號)
B.用戶標識符中不可以出現(xiàn)中劃線,但可以出現(xiàn)下劃線
C.用戶標識符中可以出現(xiàn)下劃線,但不可以放在用戶標識符的開頭
D.用戶標識符中可以出現(xiàn)下劃線和數(shù)字,它們都可以放在用戶標識符的開頭
7.下列程序段的時間復雜度為()。A.O(n)B.O(n-1)C.O(n2)D.O(log2n)
8.表達式“a+=a-=a=9”的值是()。
A.18B.-9C.0D.9
9.棧和隊列的共同特點是()。
A.都是先進先出B.都是先進后出C.只允許在端點處插入和刪除元素D.沒有共同點
10.以下敘述中錯誤的是()。
A.可以通過typedef增加新的類型
B.可以typedef將已存在的類型用一個新的名字來代表
C.用typedef定義新的類型名后,原有類型名仍有效
D.用typedef可以為各種類型起別名,但不能為變量起別名
11.程序中主函數(shù)的名字為()。
A.mainB.MAINC.MainD.任意標識符
12.下列敘述中正確的是A.為了建立一個關系,首先要構造數(shù)據(jù)的邏輯關系
B.表示關系的二維表中各元組的每一個分量還可以分成若干數(shù)據(jù)項
C.一個關系的屬性名表稱為關系模式
D.一個關系可以包括多個二維表
13.下列有關圖的遍歷說法中,不正確的是()
A.圖的遍歷必須用遞歸實現(xiàn)
B.基本遍歷算法兩種:深度遍歷和廣度遍歷
C.有向圖和無向圖都可以進行遍歷操作
D.圖的遍歷算法可以執(zhí)行在有回路的圖上
14.以下敘述中錯誤的是()。
A.在一個函數(shù)內(nèi)的復合語句中定義的變量在本函數(shù)范圍內(nèi)有效
B.在一個函數(shù)內(nèi)定義的變量只在本函數(shù)范圍內(nèi)有效
C.在不同的函數(shù)中可以定義相同名字的變量
D.函數(shù)的形參是局部變量
15.有以下程序:#include<stdio.h>main(){charv[4][10];inti;for(i=0;i<4;i++)scanf(“%s”,v[i]);printf(“%c,%s,%s,%c”,**v,*(v+1),v[3]+3,*(v[2]+1));}程序運行時輸入welcomeyoutobeijing并按<Enter>鍵,則輸出結果是()。
A.w,youjing,o
B.welcome,you,jing,to
C.w,you,eeijing,u
D.w,xelcome,eeijing,u
16.有以下程序執(zhí)行程序時,給變量X輸入l0,程序的輸出結果是()。
A.55B.54C.65D.45
17.在n個結點的線性表的數(shù)組實現(xiàn)中,算法的時間復雜度是O(1)的操作是()。
A.訪問第i(1<=i<=n)個結點和求第i個結點的直接前驅(qū)(1<i<=n)
B.在第i(1<=i<=n)個結點后插入一個新結點
C.刪除第i(1<=i<=n)個結點
D.以上都不對
18.設有定義:intx=2.以下表達式中,值不為6的是()。A.2*x,x+=2B.x++.2*xC.x*=(1+x)D.x*=x+1
19.有以下程序:main{intnum[4][4]={1,2,3,4},{5,6,7,8},{9,10,11,12,},{13,14,15,16}},i,j;for(i=0;i<4;i++){for(j=0;j<i;j++)printf("%4c",);for(j=________;J<4;j++)printf("%4d",num[i][j]);printf("\n");}}若要按以下形式輸出數(shù)組右上半三角1234678111216則在程序下劃線處應填入的是()。A.i-1B.iC.i+1D.4一i
20.要求當A的值為奇數(shù)時,表達式的值為“真”,A的值為偶數(shù)時,表達式的值為“假”,以下不滿足要求的表達式是()。A.A%2==1B.!(A%2==0)C.A%2D.!(A%2)
二、2.填空題(20題)21.設有下列程序:
#include<stdio.h>
#include<string.h>
main()
{inti;
chars[10],t[10];
gets(t);
for(i=0;i<2;i++)
{gets(s);
if(strcmp(t,s)<0)strcpy(t,s);
}
printf("%s\n",t);
}
程序運行后,從鍵盤上輸入(<CR>代表回車符):DEF<CR>BADEF<CR>QTHRG<CR>,則程
序的輸出結果是______。
22.以下程序中函數(shù)fun的功能是求出能整除x且不是偶數(shù)的務正整數(shù),并按從小到大的順序放在pp所指的數(shù)組中,這些除數(shù)的個數(shù)通過形參n返回。
例如,若x中的值為30,則有4個數(shù)符合要求,它們是1,3,5,15。
請按題意,完成填空。
試題程序:
#include<stdio.h>
voidfun(intx,intpp[],int*n)
{inti,j=0;
【】;
if(x%i==0)pp[j++]=i;
【】;
}
main()
{intx,aa[1000],n,i;
printf("\nPleaseenteranintegernumber:\n");
scanf("%d",&x);
fun(x,aa,&n);
for(i=0;i<n;i++)printf("%d",aa[i]);
printf("\n");
}
23.在鏈表的運算過程中,能夠使空表與非空表的運算統(tǒng)一的結構是______。
24.在關系運算中,查找滿足一定條件的元組的運算稱之為【】。
25.C語言用于結構化程序設計的3種基本結構是______、選擇結構和循環(huán)結構。
26.算法的復雜度主要包括【】復雜度和空間復雜度。
27.設i,j,k均是int型變量,則執(zhí)行以下for循環(huán)后,k的值為【】。
for(i=0,j=10;i<=j;i++,j--)
k=i+j;
28.以下程序運行后的輸出結果是【】。
main()
{intx,a=1,b=2,c=3,d=4;
x=(a<b)?a:b;x=(x<c)?x:c;x=(d>x)?x:d;
printf("%d\n",x);
}
29.若a=10,b=20,則表達式!(a<b)的值是【】。
30.設有定義:
struct{inta;floatb;charc;}abc;*p_abc=&abc;
則對結構體成員a的引用方法可以是abc.a和p_abc【】a。
31.數(shù)據(jù)結構分為線性結構和非線性結構,線性表、棧和隊列都屬于【】。
32.注釋說明了程序的功能,它分為【】注釋和功能性注釋。
33.下面程序的輸出結果是【】。
main()
{inti=3,j=2;
char*a="DCBA";
printf("%c%c\n",a[i],a[j])
}
34.需求分析的最終結果是產(chǎn)生【】。
35.以下程序中函數(shù)f的功能是在數(shù)組x的n個數(shù)(假定n個數(shù)互不相同)小找出最大最小數(shù),將其中最小的數(shù)與第一個數(shù)對換,把最大的數(shù)與最后一個數(shù)對換。請?zhí)羁铡?/p>
#include<stdio.h>
voidf(intx[],intn)
{intp0,p1,i,j,t,m;
i=j=x[0];p0=p1=0;
for(m=O;m<n;m++)
{if(x[m]>i){i=x[m];p0=m;}
elseif(x[m]<j){j=x[m];p1=m;)
}
t=x[p0];x[p0]=x[n-1];x[n-1]=t;
t=x[pl];x[p1]=【】;【】=t
}
main()
{inta[10],u;
for(u=0;u<10;u++)scamp("%d",&a[u]);
f(a,10);
for(u=0;u<10;u++)printf("%d",a[u]);
ptintf("\n");
}
36.數(shù)據(jù)管理技術發(fā)展過程經(jīng)過人工管理、文件系統(tǒng)和數(shù)據(jù)庫系統(tǒng)三個階段,其中數(shù)據(jù)獨立性最高的階段是______。
37.以下程序的功能是:從鍵盤上輸入若干個學生的成績,統(tǒng)計計算出平均成績,并輸出低于平均分的學生成績,用輸入負數(shù)結束輸入。
main()
{floatx[1000],sum=0,ave,a;
intn=0,i;
printf("Entermark:\n");scanf("%f",&a);
while(a>=0.0&&n<1000)
{sum+【】;x[n]=【】;
n++;scanf("%f",&a);
}
ave=【】;
printf("Output:\n");
printf('ave=%f\n",ave);
for(i=0;i<n;i++)
if(【】)printf("%t\n",x[i]);
}
38.以下程序的功能是:求出數(shù)組x中各相鄰兩個元素的和依次存放到a數(shù)組中,然后輸出。請?zhí)羁铡?/p>
main()
{intx[10],a[9],i;
for(i=0;i<10;i++)scanf("%d",&x[i]);
for([11];i<10;i++)
a[i-1]=x[i]+[12];.
for(i=0;i<9;i++)printf("%d",a[i]);
printf("");
}
39.若輸入字符串:abcde,則以下while循環(huán)體將執(zhí)行【】次。
while((ch=getchar())=='e')printf("*");
40.當運行以下程序時,輸入abcd,程序的輸出結果是【】。
insert(charstr[])
{inti;
i=stolen(str);
while(i>0)
{str[2*i]=str[i];str[2*i-1]='*';i--;}
printf("%s\n",sir);
}
main()
{charstr[40];
seanf("%s",str);insert(str);
}
三、1.選擇題(20題)41.簡單的交換排序方法是()。
A.快速排序B.選擇排序C.堆排序D.冒泡排序
42.十六進制數(shù)BB轉換成十進制數(shù)是()
A.192B.256C.187D.121
43.
(2)
A.*sB.sC.*s++D.(*s)++
44.有以下程序:main(){inti,s=0;for(i=1;i<10;i+=2)s+=i+1;ptintf("%d\n",s);}程序執(zhí)行后的輸出結果是()。
A.自然數(shù)1~9的累加和B.自然數(shù)1~10的累加和C.自然數(shù)1~9中奇數(shù)之和D.自然數(shù)1~10中偶數(shù)之和
45.下列選項可以正確表示字符型常量的是
A.'\r'B.aC.\897D.296
46.若變量已正確定義,有以下程序段:i=0;doprintf("%d,",i);while(i++);printf("%d\h",i);其輸出結果是()。
A.0,0B.0,1C.1,1D.程序進入無限循環(huán)
47.各種網(wǎng)絡傳輸介質(zhì)()
A.具有相同的傳輸速率和相同的傳輸距離
B.具有不同的傳輸速率和不同的傳輸距離
C.具有相同的傳輸速率和不同的傳輸距離
D.具有不同的傳輸速率和相同的傳輸距離
48.以下程序的輸出結果是______。#defineSQR(X)X*Xmain(){inta=16,k=2,m=1;a/=SQR(k/m)/SQR(k+m);printf("%d\n",A);}
A.16B.2C.9D.1
49.設有定義:floata=2,b=4,h=3;以下c語言表達式中與代數(shù)式(a+B)h計算結果不相符的是()。A.(a+B)*h/2B.(1/2)*(a+B)*hC.(a+B)*h*1/2D.h/2*(a+B)
50.函數(shù)調(diào)用:strcat(strcpy(str1,str2,),str3)的功能是()
A.將串str1復制到串str2中后再連接到串str3之后
B.將串str1連接到串str2之后再復制到串str3之后
C.將串str2連接到串str1之后再將串str3連接到串str1之后
D.將串str2連接到串str1之后再將串str1連接到串str3之后
51.設有以下語句:charstr1[]="string",str2[8],*str3,*str4="string";則______不是對庫函數(shù)的正確調(diào)用。
A.strcpy(str1,"HELLO1");
B.strcpy(str2,"HELLO2");
C.strcpy(str3,"HELLO3");
D.strcpy(str4,"HELLO4");
52.在以下各標識符中,合法的用戶標識符是()
A.1B.table__1C.0__tD.k%
53.設int型占2個字節(jié),則unsignedint所能表示的數(shù)據(jù)范圍是______。
A.0~65535B.-32769~32767C.1~65536D.0~32767
54.已定義以下函數(shù)
fun(int*p)
{return*p;}
該函數(shù)的返回值是()
A.不確定的值
B.形參p中存放的值
C.形參p所指存儲單元中的值
D.形參p的地址值
55.軟件調(diào)試的目的是()
A.發(fā)現(xiàn)錯誤B.改善軟件的性能C.改正錯誤D.驗證軟件的正確性
56.下列敘述中正確的是()。
A.線性鏈表的各元素在存儲空間中的位置必須是連續(xù)的
B.線性鏈表的頭元素一定存儲在其他元素的前面
C.線性鏈表中的各元素在存儲空間中的位置不一定是連續(xù)的,但表頭元素一定存儲在其他元素的前面
D.線性鏈表中的各元素在存儲空間中的位置不一定是連續(xù)的,且各元素的存儲順序也是任意的
57.若a是float型變量,b是unsigned型變量,以下輸入語句合法的是()
A.scanf("%6.2f%d",&a,&b);
B.scanf("%f%n",&a,&b);
C.scanf("%f%30",&a,&b);
D.scanf("%f%d",&a,&b);
58.能將高級語言程序轉換成目標語言程序的是______。
A.調(diào)試程序B.解釋程序C.編譯程序D.編輯程序
59.數(shù)據(jù)獨立性是數(shù)據(jù)庫技術的重要特點之一。所謂數(shù)據(jù)獨立性是指()
A.數(shù)據(jù)與程序獨立存放
B.不同的數(shù)據(jù)被存放在不同的文件中
C.不同的數(shù)據(jù)只能被對應的應用程序所使用
D.以上三種說法都不對
60.以下語句定義正確的是()。
A.inta[1][4]={1,2,3,4,5};
B.floata[3][]={{1,2},{2,3},{3,1}};
C.longa[2][3]={{1},{1,2},{1,2,3},{0,0}};
D.doublea[][3]={8};
四、選擇題(20題)61.閱讀以下程序:
#include<stdio.h>
main()
{intcase;floatprintF;
printf("請輸人2個數(shù):");
scanf("%d%fl"&case,&printF);
printf("%dofof\n",case,printF);
}
該程序在編譯時產(chǎn)生錯誤,其出錯原因是()。
A.定義語句出錯,case是關鍵字,不能用做用戶自定義標識符
B.定義語句出錯,printF不能用做用戶自定義標識符
C.定義語句無錯,scanf不能作為輸入函數(shù)使用
D.定義語句無錯,printf不能輸出case的值
62.
63.
64.以下敘述中正確的是()。
A.預處理命令行必須位于C源程序的起始位置
B.在C語言中,預處理命令行都以“#”開頭
C.每個C程序必須在開頭包含預處理命令行:#include
D.C語言的預處理不能實現(xiàn)宏定義和條件編譯的功能
65.
66.
67.
68.
69.按照c語言規(guī)定的用戶標識符命名規(guī)則,不能出現(xiàn)在標識符中的是()。
A.大寫字母B.下劃線C.數(shù)字字符D.連接符
70.以下選項中,能表示邏輯值“假”的是()
A.1B.0.000001C.0D.100.0
71.
有以下程序:
main
{union
{charch[2];
intd;
}s;
d=0x4321;
printf("%x,%x\n",S.ch[0],S.ch[l]);
}
在16位編譯系統(tǒng)上,程序執(zhí)行后的輸出結果是()
A.21,43B.43,21C.43,00D.21,00
72.
73.有以下程序:
程序的運行結果是()。
A.1B.2C.3D.4
74.在C語言中,合法的長整型常數(shù)是()。
A.0.123456B.4962717C.9LD.5.321e2
75.以下程序中,函數(shù)sort的功能是對a數(shù)組中的數(shù)據(jù)進行由大到小的排序。
voidsort(inta[],intn)
{inti,j,t;
for(i=0;i<n-1;i++)
for(j=i+1;j<n;j++)
if(a[i]<a[j])
{t=a[i];a[i]=a[j];a[j]=t;}
}
main()
{intaa[10]={1,2,3,4,5,6,7,8,9,10},i;
sort(&aa[3],5);
for(i=0;i<10;i++)printf("%d,",aa[i]);
printf("\n");
}
程序運行后的輸出結果是
A.1,2,3,4,5,6,7,8,9,10
B.10,9,8,7,6,5,4,3,2,1
C.1,2,3,8,7,6,5,4,9,10
D.1,2,10,9,8,7,6,5,4,3
76.以下不能定義為用戶標識符的是()
A.MainB._0C._intD.sizeof
77.用數(shù)組名作為函數(shù)調(diào)用的實參,則傳遞給形參的是()。
A.數(shù)組中所有元素的值B.數(shù)組的第一個數(shù)據(jù)C.數(shù)組的首地址D.數(shù)組元素的個數(shù)
78.
79.在軟件設計中,不屬于過程設計工具的是()。
A.PDLB.DFD圖C.PAD圖D.N—S圖
80.
五、程序改錯題(1題)81.下列給定程序中,函數(shù)proc()的功能是:傳人一個整數(shù)n,計算如下公式的值。t=1/2-1/3-…-1/n例如,若輸入3,則應輸出0.166667。請修改程序中的錯誤,使它能得出正確的結果。注意:不要改動main()函數(shù),不得增行或刪行,也不得更改程序的結構。試題程序:
六、程序設計題(1題)82.使用vc++2010打開文件夾下prog1中的解決方案。此解決方案的項目中包含一個源程序文件prog1.c。在此程序中,請編寫函數(shù)fun(),其功能是在一組得分中,去掉一個最高分和一個最低分,然后求平均值,并通過函數(shù)返回該值。函數(shù)形參a指向存放得分的數(shù)組,形參n中存放得分個數(shù)(n>2)。例如,若輸入8.4共10個得分,則輸出結果為8.687500。注意:部分源程序存放在文件prog1.c中,請勿改動主函數(shù)main()和其他函數(shù)中的任何內(nèi)容,僅在函數(shù)fun()的花括號中填入所編寫的若干語句。試題程序:
參考答案
1.B
2.C解析:賦值的一般形式為:變量名:表達式;,賦值的方向為由右向左,即將:右側表達式的值賦給:左側的變量,執(zhí)行步驟是先計算再賦值。選項A中運算符%的運算對象必須為整數(shù),而選項A中26.8不為整數(shù),故選項A不正確;選項B將一個變量賦值給一個常量,這在C語言中是不允許的,故選項B不正確;選項D中也是將一個常量3賦值給一個常量,故選項D不正確;所以,4個選項中選項C符合題意。
3.B\n本題考查函數(shù)中數(shù)組和指針的傳值,數(shù)組a[]在參數(shù)傳遞時,是傳遞的數(shù)組a的首地址,所以形參a和n都是指針變量。。
\n
4.C解析:本題考查的知識點是賦值語句的基本知識。在表達式的運算中,雙目賦值運算符的格式為“變量二表達式”,單目運算符一般形式為“運算符表達式”或“表達式運算符”。常量和表達式是不能被賦值的。選項A為復合表達式,首先計算(i=2,++i)的值,然后賦值給n,故選項A正確;選項B為簡單自加運算,故選項B正確;選項C在表達式++(i+1);中,(i+1)不是變量,該表達式的值為常量,而在++運算中,其運算對象必須為變量,故選項C錯誤;選項D中為復合賦值表達式,正確.所以應當選擇C。
5.C函數(shù)putchar每次輸出一個字符。表達式“*str+1”將對字符加1,因此字符串“ABCD”的每個字符都加1,字符串結束標識‘\\0’也會加1,輸出1,結果為BCDE1。故本題答案為C選項。
6.B解析:在C語言中,合法的標識符由字母,數(shù)字和下劃線組成(故選項A不正確),并且第一個字符必須為字母或者下劃線(故選項B和選項D不正確).所以,B選項為所選.
7.B
8.C首先計算表達式“a=9”;再計算表達式“a-=9”;即“a=a-9”,結果為0;最后計算表達式“a+=0”,即“a=a+0”,所以最終結果為0。故本題答案為C選項。
9.C解析:考查棧和隊列概念的掌握。棧和隊列都是一種特殊的操作受限的線性表,只允許在端點處進行插入和刪除。二者的區(qū)別是:棧只允許在表的一端進行插入或刪除操作,是一種'后進先出'的線性表;而隊列只允許在表的一端進行插入操作,在另一端進行刪除操作,是一種'先進先出'的線性表。模塊之間的耦合程度反映了模塊的獨立性,也反映了系統(tǒng)分解后的復雜程度。按照耦合程度從弱到強,可以將其分成5級,分別是:數(shù)據(jù)耦合、同構耦合、控制耦合、公用耦合和內(nèi)容耦合。選項C),沒有這種耦合方式。
10.A關鍵字typedet的作用只是將C語言中的已有的數(shù)據(jù)類型作了置換,并不是增加新的類型,所以A)錯誤。
11.A
12.C解析:在格式化模型中,要事先根據(jù)應用的需要,確定數(shù)據(jù)之間的邏輯關系,即先對數(shù)據(jù)進行結構化。在關系模型中,不需要事先構造數(shù)據(jù)的邏輯關系,只要將數(shù)據(jù)按照一定的關系存入計算機,也就是建立關系。所以選項A錯誤。對于一個表示關系的二維表,其最基本的要求是表中元組的每一個分量必須是不可分的數(shù)據(jù)項,即不允許表中再有表。所以,選項B、D說法是錯誤的。一個關系的屬性名表稱為關系模式,也就是二維表的表框架,相當于記錄型。因此,選項C說法正確。
13.A
14.A在一個函數(shù)內(nèi)的復合語句中定義的變量在本復合語句塊范圍內(nèi)有效,選項A錯誤,其他選項正確。本題答案為A選項。
15.A題干中,定義一個二維字符數(shù)組v。然后通過for循環(huán),輸入4個字符串welcome、you、to、beijing,將其分別存放在v的4個元素中。數(shù)組v是存放4個字符串的二維數(shù)組;“**v”表示第1個字符串的第一個字符“w”;“*(v+1)”指向第2個字符串“you”;“v[3]+3”指向第4個字符串的第3個字符開始后的整個字符串“jing”;“*(v[2]+1)”表示第3個宇符串的第2個字符“o”。故本題答案為A選項。
16.A本題考查的是遞歸算法的分析。一個直接或間接地調(diào)用自身的算法稱為遞歸算法。在一個遞歸算法中,至少要包含一個初始值和一個遞歸關系。本題的fun()函數(shù)在n等于l時返回1,而在其余情況下返[fi]n+fun(n一1),所以本題的遞歸算法可以這樣來表示:fun(n)=1(n=1)(初始值)fun(n)=n+fun(n一1)(n≠1)(遞歸關系)此時不難看出,該遞歸算法實現(xiàn)的是計算l+2+3+…+n,而且n必須大于0,否則會陷入死循環(huán)。故題目輸出的結果是l+2+3+..+10=55.應該選擇A)。
17.A
18.A[解析]A)選項中逗號表達式先計算第一表達式2*x,然后計算表達式x+=2的值,即x=x+2即4.整個逗號表達式為第二個表達式的值4.所以選A)。B)選項中首先計算逗號表達式中第一個表達式x++,此時x為3.再執(zhí)行第二個表達式2*x=2*3=6.所以逗號表達式為第二個表達式的值6.C)選項的賦值表達式可以表示為x==x*(1+x)=2*(1+2)=6.D)選項中的表達式可以表示為x=x*(x+1)=2*3=6.
19.B本題中要求輸出右上半角的數(shù),對角線上的數(shù)的下標相同,所以j=i。
20.D
21.QTHRGQTHRG解析:函數(shù)strcmp(t,s)用來比較t和s所指字符串的大小,若t>s,則函數(shù)值大于0;若t=s,則函數(shù)值等于0:若t<s,則函數(shù)值小于0。函數(shù)strcpy(t,s)的功能是,把字符數(shù)組s所指字符串的內(nèi)容復制到字符數(shù)組t所指存儲空間中。本題中,t[10]='CDEF'。第一次循環(huán),s[10]='BADEF',if語句的控制條件strcmp(t,s)<0不成立,接著執(zhí)行第二次循環(huán),s='QTHRG',if語句的控制條件strcmp(t,s)<0成立,執(zhí)行下列的語句,將字符數(shù)組s所指字符串的內(nèi)容復制到字符數(shù)組t所指存儲空間中,然后輸出字符數(shù)組t。
22.for(i=1;i<=x;i+=2)*n=jfor(i=1;i<=x;i+=2)*n=j解析:本題題干信息是求能整除x且不是偶數(shù)的所有正整數(shù)。循環(huán)語句中i從1開始且每次增2,所以i始終是奇數(shù),語句,n=j;是記錄符合題意的整數(shù)的個數(shù)。
23.循環(huán)鏈表循環(huán)鏈表解析:在循環(huán)鏈表中,由于設置了一個頭結點,因此在任何情況下,循環(huán)鏈表中至少有一個結點存在,從而使空表與非空表的運算統(tǒng)一。
24.選擇選擇解析:在關系數(shù)據(jù)庫中,選擇運算也是一個元運算,關系R通過選擇運算(并由該運算給出所選擇的邏輯條件)后仍為一個關系。這個關系是由R中的那些滿足邏輯條件的元組所組成。
25.順序結構順序結構解析:結構化程序有3種摹本結構,即順序結構、選擇結構(包括if語句和switch語句)和循環(huán)結構(包括for語句、while語句、do…while語句)。
26.時間時間解析:算法的復雜度主要指時間復雜度和空間復雜度。所謂算法的時間復雜度,是指執(zhí)行算法所需要的計算工作量;算法的空間復雜度,一般是指執(zhí)行這個算法所需要的內(nèi)存空間。
27.10
28.11解析:因為在條件表達式(a<b)?a:b中,比較表達式a<b為真,所以x的值等于a的值等于1,后面兩個條件表達式中的比較表達式都為真,所以最終x的值等于1。
29.00解析:已知a=10,b=20,所以邏輯表達式a<b的值為true,即為1,在這個表達式前面有一個邏輯運算符!,表示反操作,所以整個語句的值應當為false,即為0。
30.->->解析:結構變量abc有成員a,并有指針pabc指向結構變量abc,則引用變量abc成員a的形式有abc.a和p_abc->a。
31.線性結構線性結構解析:本題考查了數(shù)據(jù)結構的基本概念。與棧類似,隊列也是線性表,可以采用鏈式存儲結構,所以帶鏈的隊列屬于線性結構。
32.序言性序言性解析:注釋一般分為序言性注釋和功能性注釋。
33.AB
34.需求規(guī)格說明書需求規(guī)格說明書解析:軟件需求規(guī)格說明書是需求分析階段的最后成果,是軟件開發(fā)中的重要文檔之一。需求規(guī)格說明書包括正確性、無歧義性、完整性、可驗證性、一致性、可理解性、可修改性和可追蹤性等。
35.x[O]x[O]x[O]\r\nx[O]解析:根據(jù)題意,f()函數(shù)要“將其中最小的數(shù)與第一個數(shù)對換,把最大的數(shù)與最后一個數(shù)對換”,而填空處的上一行語句正是使用交換算法,將下標為p0的元素與數(shù)組x的最后一個元素(n個元素的數(shù)組,其最后一個元素的下標為n-1)交換。所以不難得知,填空所在行的語句是要將下標為p1的元素與數(shù)組x的第1個元素交換。故兩個空都應該填x[0]。
36.數(shù)據(jù)庫系統(tǒng)或數(shù)據(jù)庫系統(tǒng)階段或數(shù)據(jù)庫或數(shù)據(jù)庫階段或數(shù)據(jù)庫管理技術階段數(shù)據(jù)庫系統(tǒng)或數(shù)據(jù)庫系統(tǒng)階段或數(shù)據(jù)庫或數(shù)據(jù)庫階段或數(shù)據(jù)庫管理技術階段解析:在數(shù)據(jù)庫系統(tǒng)管理階段,數(shù)據(jù)是結構化的,是面向系統(tǒng)的,數(shù)據(jù)的冗余度小,從而節(jié)省了數(shù)據(jù)的存儲空間,也減少了對數(shù)據(jù)的存取時間,提高了訪問效率,避免了數(shù)據(jù)的不一致性,同時提高了數(shù)據(jù)的可擴充性和數(shù)據(jù)應用的靈活性;數(shù)據(jù)具有獨立性,通過系統(tǒng)提供的映象功能,使數(shù)據(jù)具有兩方面的獨立性:一是物理獨立性,二是邏輯獨立性;保證了數(shù)據(jù)的完整性、安全性和并發(fā)性-綜上所述,數(shù)據(jù)獨立性最高的階段是數(shù)據(jù)庫系統(tǒng)管理階段。
37.=aasum/nx[i]<ave=a\r\na\r\nsum/n\r\nx[i]<ave解析:sum是用來存放學生成績總和的,a是輸入的成績,ave存放平均成績,n既是循環(huán)變量,又表示學生人數(shù),x[n]保存第n個學生的成績。sum用來累加每個同學的成績,因此有sum+=a;把新輸入的學生成績保存在數(shù)組中,因此有x[n]=a;ave是所有同學的平均成績,因此有ave=sum/n;逐個把學生成績和平均成績比較,因此有if(x[i]<ave)。
38.對于10個數(shù),相鄰的兩個數(shù)相加取和,總共要進行9次加法運算,所以空14處應填入i=1。相鄰的兩個數(shù)相加取和,放在數(shù)組a中,x[0]與x[1]的和存放在a[0]中,所以空15處應填入x[i-1]。\r\n\r\n
39.00解析:函數(shù)getchar()是從鍵盤得用戶輸入的一個字符。用戶輸入的第1個字符a,不管后面輸入的是什么ch的值都是'a',因此條件(ch=getchar())=='e'為假,這個循環(huán)不會被執(zhí)行。
40.a*b*c*d*a*b*c*d*解析:程序中的變量i用于存放字符串str的長度,執(zhí)行while語句,通過分析可知,字符串第2*i項的值可由第i項的值得到;第2*i-1項直接賦值為。號,i減1,如此反復直到不滿足i>0的條件時,輸出運行后的字符串。
41.D解析:所謂的交換類排序方法是指借助數(shù)據(jù)元素之間的互相交換進行排序的一種方法,包括冒泡排序和快速排序,冒泡排序是一種最簡單的交換排序方法,它通過相鄰元素的交換,逐步將線性表變成有序。
42.C
43.A
44.D解析:本題中,i賦初值為1,并對其每次進行加2操作,即i每次均為1~10之間的奇數(shù),s+=i+1,即s=s+i+1,相當于s等于原來的s每次加上1~10之間的偶數(shù),直到i<lO不成立;當i=1時,s=0+1+1=2;當i=3時,s=2+3+1=2+4;當i=5時,s=2+4+5+1=2+4+6;當i=7時,s=2+4+6+7+1=2+4+6+8;當i=9時,s=2+4+6+8+9+1=2+4+6+8+10;當i=11時,i<10不成立,結束循環(huán)。所以,4個選項中選項D符合題意。
45.A解析:C語言中,一個字符常量代表ASCII字符集中的一個字符,在程序中用單引號括起來作為字符常量,字符常量的范圍是0~127。由于字符常量用單引號括起來,所以選項B),C)錯誤,選項D)超過了字符常量的表示范圍。
46.B解析:do…while循環(huán)的執(zhí)行過程如下:①執(zhí)行do后面的循環(huán)體中的語句。②計算while后一對圓括號中表達式的值。當值為非0時,轉去執(zhí)行步驟①;當值為0時,執(zhí)行步驟③。③退出do…while循環(huán)。對于本題變量i的初始值等于“0”,接著執(zhí)行do后面的循環(huán)體中的語句,輸出變量i的值0。再判斷while后面括號中表達式i++的值,其值為0,所以循環(huán)結束。此時變量i的值經(jīng)過自加已經(jīng)變?yōu)?,所以再次輸出i的值“1”。
47.B
48.B解析:C語言在預編譯時遇到帶實參的宏名,則按命令行中指定的字符串從左到右進行置換。在做這題時,也不妨運用置換法。得到a/=k+m*k+m/k+m*k+m=16/7=2。注:a為整型,所以在做除法,自動取整。
49.B解析:選項B中由于1和2都是整型,其1/2的運算結果為0,故整個表達式的值為0,所以它的結果和題目中要求的代數(shù)式的討算結果不相符,所以,4個選項中選項B符合題意。
50.C
51.C解析:C語言中:strcpy(st1,st2);,其兩個參數(shù)均為字符指針或字符數(shù)組,選項C中的目的串指針str3沒有指向具體有效的存儲單元,故是錯誤的調(diào)用。
52.B
53.A解析:本題int型占2個字節(jié),即16位,unsignedint所能表示的數(shù)據(jù)范圍是0~(2(上標)16-1),即0~65535。
54.C解析:本題考核的知識點是函數(shù)的返回值.函數(shù)的返回值應該為return后面的表達式的值,在本題中的表達式為*p,*p指的是形參p所指存儲單元中的值,所以,4個選項中選項C符合題意。
55.Cc)【解析】在對程序進行了成功的測試之后將進入程序調(diào)試,程序調(diào)試的任務是診斷和改正程序中的錯誤。
56.DD.【解析】在線性鏈表中,各元素在存儲空間中的位置是任意的,各元素的順序也是任意的,依靠指針來實現(xiàn)數(shù)據(jù)元素的前后件關系。
57.C
58.C解析:用高級語言編寫的程序稱為“源程序”,而計算機只能識別和執(zhí)行由O和1組成的二進指令,所以高級語言必須先用—種稱為“編譯程序”的軟件,把源程序翻譯成二進制形式的“目標程序”。
59.D解析:在數(shù)據(jù)庫系統(tǒng)中,通過系統(tǒng)提供的映象功能,使數(shù)據(jù)具有兩方面的獨立性:一是物理獨立性。即由于數(shù)據(jù)的存儲結構與邏輯結構之間由系統(tǒng)提供映象,使得當數(shù)據(jù)的存儲結構改變時,其邏輯結構可以不變,因此,基于邏輯結構的應用程序不必修改。二是邏輯獨立性。即由于數(shù)據(jù)的局部邏輯結構(它是總體邏輯結構的一個子集,由具體的應用程序所確定,并且根據(jù)具體的需要可以作一定的修改)與總體邏輯結構之間也由系統(tǒng)提供映象,使得當總體邏輯結構改變時,其局部邏輯結構可以不變,從而根據(jù)局部邏輯結構編寫的應用程序也可以不必修改。由此可知,選項A.B與C中的說法都是錯誤的。
60.D
61.A\n本題中定義了整形變量case,但case是關鍵字,關
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 廣東水利電力職業(yè)技術學院《數(shù)字邏輯設計》2023-2024學年第一學期期末試卷
- 廣東生態(tài)工程職業(yè)學院《建筑裝飾工程概預算》2023-2024學年第一學期期末試卷
- 廣東梅州職業(yè)技術學院《地下水污染與防治》2023-2024學年第一學期期末試卷
- 【2022屆走向高考】高三數(shù)學一輪(人教B版)基礎鞏固:第2章-第1節(jié)-函數(shù)及其表示
- 廣東省揭陽市榕城區(qū)2024-2025年第一學期期終質(zhì)量檢測小學五年級語文科試卷(有答案)
- 【金版學案】2014-2021學年高中歷史優(yōu)化訓練(人教版必修3)第11課-物理學的重大進展
- 【全程復習方略】2020年人教A版數(shù)學理(福建用)課時作業(yè):第十章-第九節(jié)離散型隨機變量的均值與方差
- 2022屆《創(chuàng)新設計》數(shù)學一輪課時作業(yè)(文科)(浙江專用)-第四章-三角函數(shù)、解三角形-4-2
- 四年級數(shù)學(四則混合運算)計算題專項練習與答案匯編
- 會議應急預案策劃包括哪些內(nèi)容
- 評判創(chuàng)業(yè)計劃書
- 銀行信訪工作培訓課件
- 北京市西城區(qū)2023-2024學年部編版七年級上學期期末歷史試卷
- T-CPIA 0054-2023 光伏發(fā)電系統(tǒng)用柔性鋁合金電纜
- 廣東省博物館
- 徐州市2023-2024學年九年級上學期期末道德與法治試卷(含答案解析)
- 農(nóng)業(yè)信息化實現(xiàn)農(nóng)業(yè)現(xiàn)代化的數(shù)字化轉型
- 《義務教育道德與法治課程標準(2022年版)》
- 20以內(nèi)退位減法口算練習題100題30套(共3000題)
- 調(diào)味品年終總結匯報
- 無人機遙感技術與應用
評論
0/150
提交評論