版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
2021年四川省綿陽市全國計算機等級考試C語言程序設計真題二卷(含答案)學校:________班級:________姓名:________考號:________
一、單選題(20題)1.若有定義:“inta,b;”,通過語句“scan[("%d;%d".,&a,&b);”,能把整數3賦給變量a,5賦給變量b的輸入數據是()。
A.35B.3,5C.3;5D.35
2.有以下程序:程序運行后的輸出結果是()。A.1.000000B.0.000000C.0.250000D.0.500000
3.設有定義:int?x=2,以下表達式中,值不為6的是()。
A.2*<.x+=2B.x++.2*xC.x=x*(1+x)D.x*=x+1
4.設x、y和z是int型變量,且x=4,y=6,z=8,則下列表達式中值為0的是()。
A.x&&yB.x<=yC.x||++y&&y-zD.!(x<y&&!z||15.在單鏈表指針為p的結點之后插入指針為s的結點,正確的操作是()。A.p->next=s;s->next=p->next;
B.s->next=p->next;p->next=s;
C.p->next=s;p->next=s->next;
D.p->next=s->next;p->next=s;
6.有如下程序段:inta[10]={1,2,3,4,5,6,7,8,9,10};int*p=&a[3],b;b=P[5];則b的值是()。
A.5B.6C.9D.8
7.有以下程序:
程序運行后的輸出結果是()。
A.0B.一1C.1D.7
8.設fun函數的定義形式為voidfun(charch,floatx){…}則下列對函數fun的調用語句中,正確的是()。
A.fun("abc",3.0);
B.t=fun(D.16.5);
C.fun(65,2.8);
D.fun(32,32);
9.若有以下程序段
intm=0xabc,n=0xabc;
m-=n;
printf("%x\n",m);
執(zhí)行后的輸出結果是A.A.0X0
B.0x0
C.0
D.0xABC
10.設R是一個2元關系,有3個元組,S是一個3元關系,有3個元組。如T=R×S,則T的元組的個數為()。A.6B.8C.9D.12
11.
12.一個二維數組的定義語句為“inta[3][4]={{3,4},{2,8,6}};”,則元素a[2][1]的值為()。
A.0B.4C.8D.6
13.若運行以下程序時,從鍵盤輸入ADescriptor<CR>(<CR>表示回車),則下面程序的運行結果是
#include<stdio.h>
main()
{charc;
intv0=1,v1=0,v2=0;
do{switch(c=getchar())
{case′a′:case′A′:
case′e′:case′E′:
case′i′:case′I′:
case′o′:case′O′:
case′u′:case′U′:v1+=1;
default:v0+=1;v2+=1;}}while(c!='\n');
printf("v0=%d,v1=%d,v2=%d\n",v0,v1,v2);}
A.v0=7,v1=4,v2=7
B.v0=8,v1=4,v2=8
C.v0=11,v1=4,v2=11
D.v0=13,v1=4,v2=12
14.
15.有下列程序:intfunl(doublea){returna*=a;)intfun2(doublex,doubley){doublea=0,b=0;a=funl(x);b=funl(y);return(int)(a+h);}main{doublew;w=fun2(1.1,2.0),……)程序執(zhí)行后變量w中的值是()。A.5.21B.5C.5.0D.0.0
16.有以下程序:structSTU{charname[10];intnum;floatTotalScore;};voidf(structSTU*p){structSTUs[2]={{"SunDan",20044,550},{"Penghua",20045,537}},*q=s;++p;++q;*p=*q;}main(){structSTUs[3]={{"YangSan",20041,703},{"LiSiGuo",20042,580}};f(s);printf("%s%d%3.0f\n",s[1].name,s[1].num,s[1].TotalScore);}程序運行后的輸出結果是______。
A.SunDan20044580
B.Penghua20045537
C.LiSiGUO20042580
D.SunDan20041703
17.a、b、c、d變量均為float類型且已正確賦值,下列選項中與數學式子“2ab/(5cd)”等價的C語言表達式是()。
A.2/5*a/c*d/b
B.a/(5*c*d)*(2*b)
C.2*a*b/5*c*d
D.2/5*a*d*(1/c*d)
18.使用深度優(yōu)先算法遍歷下圖,遍歷的順序為()A.ABCDEFGB.ABDCFEGC.ABDECFGD.ABCDFEG
19.
20.信息隱蔽的概念與下述哪一種概念直接相關?
A.軟件結構定義B.模塊獨立性C.模塊類型的劃分D.模塊耦合度
二、2.填空題(20題)21.數據的安全性是指保護數據以防止【】用戶的使用造成的數據泄密和破壞。
22.下面程序的運行結果是【】。
#include<stdio.h>
#defineN10
#defines(x)x*x
#definef(x)(x*x)
main()
{inti1,i2;
i1=1000/s(N);i2=1000/f(N);
printf("%d%d\n",i1,i2);
}
23.下列程序的運行結果是______。
#include<stdio.h>
func(a,b)
{staticintm=0,i=2;
i+=m+1;
m=i+a+b;
return(m);
}
main()
{intk=5,m=3,p;
p=func(k,m);
printf("%d",p);
p=func(k,m);
printf("%d\n",p);
}
24.下列程序的輸出結果是______。
main()
{inta=2,b=4,c=6;
int*p1=&a,*p2,&b,*p;
*(p=&c)=*p1*(*p2);
printf("%d\n",c);
}
25.以下scanf函數調用語句中對結構體變量成員的引用不正確的是{charname[20];}pup[5],*p;
26.函數fun的功能是:根據以下公式求p的值,結果由函數值返回。m與n為兩個正數且要求m>n。
例如:m=12,n=8時,運行結果應該是495.000000。請在題目的空白處填寫適當的程序語句,將該程序補充完整。
#include<conio.h>
#include<stdio.h)
floatfun(intm,intn)
{inti;
doublep=1.0;
for(i=1;i<=m;i++)【】;
for(i=1;i<=n;i++)【】;
for(i=1;i<=m-n;i++)p=p/i;
returnP;}
main()
{clrscr();
printf("p=%f\n",fun(12,8));}
27.長度為n的順序存儲線性表中,當在任何位置上插入一個元素概率都相等時,插入一個元素所需移動元素的平均個數為【】。
28.由25人圍坐成圓圈,先從任意一人出發(fā)用1到25順時針依次編號,然后從1號開始順時針報數(1、2、3…),凡報5的倍數者出圈,剩下者繼續(xù)報數,求出最后出圈者的編號。
#include<stdio.h>
【】
{inta[26],j,n,count;
for(j=1;j<=25;j++)a[j]=j;
j=1;count=0;n=【】;
do
{if(a[j]!=0)
{n++;
if(n%5==0)
{【】;
if(count==24)printf("%d\n",j);
count++;
}
}
j++;
if(j>25)j=1;
}
while(【】);
}
29.以下函數creat用來建立一個帶頭結點的單向鏈表,新產生的結點是插在鏈表頭的
末尾。單向鏈表的頭指針作為函數值返回。請?zhí)羁铡?/p>
#include<stdio.h>
structlist
{chardata;
structlist*next;
};
structlist*creat;
{structlist*h,*p,*q;
charch;
h=(【】)malloc(sizeof(structlist));
p=q=h;
ch=getchar();
while(ch!='?')
{p=(【】)mallco(sizeof(structlist));
p->data=ch;
q->next=p;
q=p;
ch=getchar();
}
p->next='\0';
【】;
}
30.二叉樹的遍歷可以分為三種:前序遍歷、()遍歷和后序遍歷。
31.【】是從二維表列的方向進行的運算。
32.單元測試又稱模塊測試,一般采用【】測試。
33.下面的程序可對指定字符串中的字符串進行從大到小排序,請將程序填完整。(注:程序采用了冒泡排序算法)
#include<stdio.h>
#include<string.h>
main()
{char*str="ABCDabcd",temp;
intn,i;
n=strlen(str);
while(n->1)
for(i=0;i<n;i++)
if(str[i]<str[i+1])
{temp=【】;
str[i]=str[i+1];
【】=temp;
}
printf(【】);
}
34.軟件結構是以【】為基礎而組成的一種控制層次結構。
35.若a的值為1,則表達式!a‖++a的值是______。
36.軟件是程序、數據和【】的集合。
37.若s是int型變量,且s=8,則s%3+(s+1)%3表達式的值為()。
38.以下程序的輸出結果是______。
main()
{intx;0;
sub(&x,8,1);
printf("%d\n",x);
}
sub(int*a,intn,intk)
{if(k<=n)sub(a,n/2,2*k);
*a+=k;
}
39.下列程序的輸出結果是______。
longfun5(intn)
{longs;
if((n==1)‖(n==2))
s=2;
else
s=n+fun5(n-1);
return(s);
}
main()
{longx;
x=fun5(4);
printff"%1d\n",x);}
40.已定義charch=′$′;inti=1,j;,執(zhí)行j!=ch&&i++以后,i的值為【】。
三、1.選擇題(20題)41.若有以下的說明和語句:intt[3][3],*pt[3],k;for(k=0;k<3;k++)pt[k]=&t[k][0];則在執(zhí)行for語句后,*(*(pt+1)+2)表示的數組元素是______。
A.t[2][0]B.t[2][2]C.t[1][2]D.t[2][1]
42.在標準C語言中,下列程序的輸出結果為______。main(){printf("%e",123.456);}
A.123.456B.123.4560C.1.23456e2D.1.234560e+002
43.有下列程序:
fun(intx)
{intp;
if(x==0‖x==1)return(3);
p=x-fun(x-2);
returnp;
}
main()
{printf("%d\n",fun(7));}
執(zhí)行后的輸出結果是()。
A.7B.3C.2D.0
44.完整的計算機存儲器應包括______。
A.軟盤、硬盤B.磁盤、磁帶、光盤C.內存儲器、外存儲器D.RAM、ROM
45.有下列程序段:intn,t=1,s=0;scanf("%d",&n);do{s=s+t;t=t-2;}while(t!=n);為使此程序段不陷入死循環(huán),從鍵盤輸入的數據應該是()。
A.任意正奇數B.任意負偶數C.任意正偶數D.任意負奇數
46.若有以下程序段intm=0xabc,n=0xabc;m-=n;printf("%X\n".m);執(zhí)行后輸出結果是
A.0X0B.0x0C.0D.0XABC
47.設有如下三個關系表:
下列操作中正確的是()。
A.T=R∩SB.T=R∪SC.T=R×SD.T=R/S
48.下列不屬于軟件工程的3個要素的是______。
A.工具B.過程C.方法D.環(huán)境
49.若進棧序列為1、2、3、4、5,并且在它們進棧的過程中可以進行出棧操作,那么不可能是出棧序列的是______。
A.1,3,2,5,4B.1,2,5,4,3C.4,3,2,1,5D.3,5,1,4,2
50.有程序#include<stdio.h>main(){inta,b,c=246;a=c/100%9;b=(-)&&(-1);printf("%d,%d\n%,a,b);}輸出結果是()
A.2,1B.3,2C.4,3D.2,-1
51.設x,y,z,(均為整型變量,現(xiàn)有如下語句x=y=z=1;t=++x‖++y&&++z;,則執(zhí)行這個語句后t的值為
A.2B.1C.0D.不定值
52.若變量已正確定義,要求程序段完成求5!的計算,不能完成此操作的程序段是()。
A.for(i=1,p=1;i<=5;i++)p*=i;
B.for(i=1;i<=5;i++){p=1;p*=i;}
C.i=1;p=1;while(i<=5){p*=i;i++;}
D.i=1;p=1;do{p*=i;i++;}while(i<=5);
53.若希望下列的程序運行后輸出25,程序空白處的正確選項是()。main(){inti,j=50,a[]={7,4,10,5,8};for()j+=a[i];printf("%d",j-40);}
A.i=1;i<4;++iB.i=1;i<3;++iC.i=4;i>2;i--D.i=2;i<4;++i
54.設有定義:#defineSTR"12345";,則以下敘述中正確的是()
A.宏名STR代替的是數值常量12345
B.宏定義以分號結束,編譯時一定會產生錯誤信息
C.宏名STR代替的是字符串"12345";
D.宏名STR代替的是字符串常量"12345"
55.假設a和b為int型變量,則執(zhí)行以下語句后,b的值為______。a=1;b=10;do{b-=a;a++;}while(b--<0);
A.9B.-2C.-1D.8
56.有以下程序段:intk=0,a=1,b=2,c=3;k=a<b?b:a;k=k>c?c:k;執(zhí)行該程序段后,k的值是______。A.3B.2C.1D.0
57.以下程序的輸出結果是()。#include<stdio.h>main(){inta=1,b=3;if((++a<0)&&!(b--<=0))printf("%d,%d\n",a,B;elseprintf("%d,%d\n",b,A);}
A.2,2B.1,3C.3,2D.3,1
58.有以下程序:#defmeP3voidP(intx){return(p*x*x);}main(){pritnf("%d\n",F(3+5);}程序運行后的輸出結果是()。
A.192B.29C.25D.編譯出錯
59.#define能作簡單的替代,用宏來替代計算多項式5*x*x+5*x+5的值的函數f,正確的宏定義語句為()。
A.#definef(x)5*x*x+5*x+5
B.#definef5*X*x+5*x+5
C.#definef(a)(5*a*a+5*a+5)
D.#define(5*x*x+5*x+5)f(x)
60.設有表示學生選課的三張表,學生s(學號,姓名,性別,年齡,身份證號),課程c(課號,課名),選課SC(學號,課號,成績),則表sc的關鍵字(鍵或碼)為()。
A.課號,成績B.學號,成績C.學號,課號D.學號,姓名,成績
四、選擇題(20題)61.在數據庫管理系統(tǒng)DBMS中,用來定義內模式和外模式等一些數據庫管理系統(tǒng)中其他結構的語言為
A.CB.BasicC.DDLD.DML
62.若有定義“floata=25,b,*p=&b;”,則下列對賦值語句“*p=a;”和“p=&a;”的正確解釋為()。
A.兩個語句都是將變量a的值賦予變量P
B.*p=a是使P指向變量a,而p=&a是將變量的值賦予變量指針P
C.*p=a是將變量a的值賦予變量b,而&a是使P指向變量a
D.兩個語句都是使P指向變量a
63.軟件(程序)調試的任務是()。
A.診斷和改正程序中的錯誤B.盡可能多地發(fā)現(xiàn)程序中的錯誤C.發(fā)現(xiàn)并改正程序中的所有錯誤D.確定程序中錯誤的性質
64.在JavaScript語言中,擁有onsubmit事件的對象是()。
A.documentB.eventC.windowD.form.
65.第
13
題
設有程序段
intk=10;
while(k=0)k=k-1;
則下面描述中正確的是A.while循環(huán)執(zhí)行10次B.循環(huán)是無限循環(huán)C.循環(huán)體語句一次也不執(zhí)行D.循環(huán)體語句執(zhí)行一次
66.下列敘述中正確的是()。
A.用E—R圖能夠表示實體集之間一對一的聯(lián)系、一對多的聯(lián)系、多對多的聯(lián)系
B.用E—R圖只能表示實體集之間一對一的聯(lián)系
C.用E—R圖只能表示實體集之間一對多的聯(lián)系
D.用E—R圖表示的概念數據模型只能轉換為關系數據模型
67.在面向對象方法中,不屬于“對象”基本特點的是A.一致性B.分類性C.多態(tài)性D.標識唯一性
68.下列語句中,正確地執(zhí)行當i等于5時執(zhí)行一些語句的條件語句是()。
A.if(i==5)B.ifi=5thenC.ifi=5D.ifi==5then
69.以下程序的輸出結果是()。
main
{intx=0.5;charz='a';
printf("%d\n",(x&1)&&(z<'2'));}A.A.0B.1C.2D.3
70.
71.有下列函數定義:fun(floath){printf("%f,%f\n",h,h*h);)該函數的類型是()。
A.int類型B.float類型C.void類型D.函數無類型說明,定義有錯
72.
73.
74.
75.
76.
77.若輸入“abcdef”“abdef”,下述程序的輸出結果為()。#include#includemain{intn;chars1[20],s2[20],*p1,*p2;scanf("%s",s1);scanf("%S",s2);p1=s1;p2=s2;n=strcmp(p1,p2);printf("Vood\n",n);}A.A.-1B.0C."abcdef"D."abdef"
78.若變量x、y已正確定義并賦值,以下符合C語言語法的表達式是()。
A.X+1=yB.++X.Y=X一一C.X=X+10=X+YD.double(X)/10
79.
80.下列關于隊列的敘述中正確的是()。A.在隊列中只能插人數據B.在隊列中只能刪除數據C.隊列是先進先出的線性表D.隊列是先進后出的線性表
五、程序改錯題(1題)81.下列給定程序中,proc()函數的功能是:根據形參m,計算下列公式的值。t=1+1/2+1/3+1/4+…+1/m例如,若輸入10,則應輸出2.928968。請修改程序中的錯誤,使它能計算出正確的結果。注意:不要改動main()函數,不得增行或刪行,也不得更改程序的結構。試題程序:
六、程序設計題(1題)82.學生的記錄由學號和成績組成,M名學生的數據已在主函數中放人結構體數組stu中。請編寫函數proc(),它的功能是:函數返回指定成績的學生數據,指定的成績在主函數中輸入。若沒找到指定的成績,在結構體變量中給學號置空串,給成績置-1,作為函數值返回。注意:部分源程序給出如下。請勿改動main()函數和其他函數中的任何內容,僅在函數proc()的花括號中填人所編寫的若干語句。試題程序:
參考答案
1.C\n在輸入時必須遵守scanf函數中的格式才能正確地賦值給相應的變量,由于scanf函數為“%d;%d”,所以在輸入時要輸入3;5,答案為C。
\n
2.D程序定義double變量x、y,給x賦初值2.0。if語句判斷,當x小于0.0時,給y賦值0.0。否則當x小于10.0時,y的值為1.0/x;當x大于等于10.0時,y的值為1.0。題干中x的值為2.0,所以y的值為1.0/x,即0.500000。本題答案為D選項。
3.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。
4.D本題考查邏輯運算符的使用。當“&&”的兩個運算對象都是邏輯1時,表達式返回值才是1;“||”的兩個運算對象至少有一個是邏輯1時,表達式返回值也是1,x<y為1,!z為0,1&&0為1,0||為1,因此,!1為0。
5.B
6.C解析:p=&a[3]將指針指向數組a的第4個元素,p[5]則是數組a的第9個元素,而a[8]=9,所以b=9。
7.Ba一一的含義是先用后減l,所以當a的值為0時,跳出循環(huán),但是仍要執(zhí)行a一一,g的值變?yōu)橐?。
8.C由題目的已知條件函數fun的定義形式voidfun(charch,floatx){…)可知第一個形參為字符型,所以A不符合,第二個形參為精度型,所以D不符合,函數fun定義為void型(無論返回值型),故其沒有返回值,所以選項B錯誤。選項C的第一個實參的類型為字符型,第二個實參的類型為單精度型,與函數fun的形式參數的類型相符合,所以選項C為正確答案。
9.C本題考查C語言中的數據輸出格式。
題目中定義了兩個整型變量m、n,對這兩個變量賦值,輸入的數值為十六進制整數,并且有m=n。進行m-n運算后,將減法所得到的值賦給m,并將m值輸出。其中printf的格式字符選用的格式字符為x,即以十六進制形式輸出整數。注意,0x是表示該數為十六進制的標志,輸出數據時,數據前面不會自動加上進制的標志。
10.CC。R為n元關系,有P個元組S為m元關系,有q個元組。兩個關系笛卡兒積是一個n+m元的關系,元組個數是q×p。所以T的元組的個數為9個。
11.D
12.A
13.D解析:本題考查switch語句的掌握。必須撐握以下內容:首先應該明白switch語句的語法格式:
switch語句的語法格式為:
switch(表達式)
{
case常量表達式1:語句組1;
case常量表達式2:語句組2;
case常量表達式n:語句組n;
default:語句組n+1;
}
另外,以下幾點關于switch語句的重點:
①系統(tǒng)在執(zhí)行時計算開關表達式的值;②根據所得的值在各個case標號表達式中尋找匹配,直到發(fā)現(xiàn)與表達式匹配的標號(本例中匹配的是case\'B\':);\ue008③找\ue009到匹配后執(zhí)行后面相應的語句表,順序往下執(zhí)行;④如果無相匹配的標號,若存在default標號,則執(zhí)行該語句標號后面的語句表n+1;當不存在default標號時,不執(zhí)行switch中的任何一個語句表。
一般而言,在多分支結構中總會出現(xiàn)'意外'的情況,這時均可歸入default程序段,作統(tǒng)一的處理。default標號是可選性的,不必每次都有,視需要而定。switch語句中還可以包含switch語句,形成switch的嵌套。
14.C
15.C子函數fun1(doublea)的功能是返回a的平方值的整數部分。子函數fun2(doublex,doubley)的功能是返回X的平方值的整數部分與Y的平方值的整數部分的和。又因為題中變量w的定義為double型,函數fun(2)的定義為int型,按照各類數值型數據間的混合運算,整型數據被轉換為實型數據。所以雙精度型變量w的值為5.0。
16.B解析:f函數用了顯式傳地址的方式,因此主函數中的s值發(fā)生了變化。
17.B解析:選項A和選項D中首先計算2/5,因為兩個計算分量都是整型,所以結果為2,與實際運算不符;選項B中因為乘除法滿足交換律,所以2*b放前面和放后面都是一樣的,所以滿足題目要求;選項C中的表達式等價于2abcd/5,所以不滿足題目要求。故應該選擇B。
18.C
19.C
20.B解析:采用信息隱蔽的目的就是為了確保每個模塊的獨立性。
21.(非法)不合法(非法)不合法
22.100010100010解析:對于define宏定義語句,系統(tǒng)在編譯前進行如下替換:
i1=1000/s(N)i1=1000/s(10)i1=1000/10*10
i2=1000/f(N))i2=1000/f(10)i2=1000/(10*10)
23.11231123解析:在主函數中第一次調用func子函數時,m=0,i=2,i=i+m+1=3,m=i+a+b=3+5+3=11。因為在子函數中將m和i定義成了static類型,所以在子函數中對m和i進行的改變在下一次調用子函數時能進行保存,所以第二次調用子函數時,m=11,i=3,則i=i+m+1=15,m=i+a+b=15+5+3=23。
24.本程序定義了3個指針變量p1、p2、p,并且將a、b的地址分別賦給p1、p2,則*p1=a=2,*p2=b=4,所以表達式*p1*(*p2)的值是8。在賦值語句的左邊是*(p=&c),即使指針p指向了變量c,因而*(p)代表了c的存儲單元,賦值語句“*(p=&c)=*p1*(*p2);”是把整數8賦給了變量c。\r\n\r\n
25.D
26.p=p*Ip=p/ip=p*I\r\np=p/i解析:本題中,欲求p的值,需要先求m,n,m-n的階乘值,可用循環(huán)語句實現(xiàn)。
27.n/2性表的任何位置插入一個元素的概率相等,即概率為p=1/(n+1),則插入一個元素時所需移動元素的平均次數為E=1/(n+1)(n-i+1)=n/2。
28.main()0a[j]=0count<25
29.strcurlist*strucrlist*return(h)
30.中序中序解析:二叉樹的遍歷可以分為三種:前序遍歷、中序遍歷和后序遍歷。前序遍歷是指在訪問根結點、遍歷左子樹與遍歷右子樹這三者中,首先訪問根結點,然后遍歷左子樹,最后遍歷右子樹;并且遍歷左、右子樹時,仍然先訪問根結點,然后遍歷左子樹,最后遍歷右子樹。中序遍歷指在訪問根結點、遍歷左子樹與遍歷右子樹這三者中,首先遍歷左子樹,然后訪問根結點,最后遍歷右子樹;并且遍歷左、右子樹時,仍然先遍歷左子樹,然后訪問根結點,最后遍歷右子樹。后序遍歷指在訪問根結點、遍歷左子樹與遍歷右子樹這三者中,首先遍歷右子樹,然后訪問根
31.投影投影解析:在關系模型的數據語言中,一般除了運用常規(guī)的集合運算,(并、交,差、笛卡爾積等)外,還定義了一些專門的關系運算,如投影、選擇、連接等。投影是從二維表的列方向上進行的運算。
32.白盒法白盒法
33.str[i]str[i+1]"%s"strstr[i]\r\nstr[i+1]\r\n'%s',str解析:本題要求將字符串str中的字符用冒泡排序算法從大到小排列,其實現(xiàn)過程是將相鄰兩個字符進行比較,如果當前字符小于下—個字符,則通過中間變量temp將字符兩兩交換,所以第一空應填:str[i],第二空應填:str[i+1]。最終打印輸出得到的字符串str,所以第三空應填:'%s',str。
34.模塊模塊
35.11解析:邏輯運算中,非1即0,非0即1,!a=0,++a為邏輯1,所以0和1相或結果為1。
36.文檔文檔解析:計算機軟件是計算機系統(tǒng)中與硬件相互依存的另一部分,是包括程序、數據以及相關文檔的完整集合。
37.22解析:考查基本表達式的計算,“%”運算符的功能是取余。題中條件s=8,則s%3=2,(s+1)%3=9%3=0,所以表達式s%3+(s+1)%3=2+0=2。
38.77解析:在主函數中定義了一個變量x并賦初值0,然后執(zhí)行函數調用語句,該語句的執(zhí)行過程為sub(&x,8,1)調用sub(&a,4,2),sub(&s,4,2)調用sub(&a,2,4),sub(&a,2,4)中由于2<4,所以if后面括號里的判斷為假,遞歸結束,執(zhí)行其后的。*a+=k;語句此時x=x+k=0+4+4,回推到上一層調用函數sub(Rx,4,2)中,執(zhí)行后面的語句,x=x+k=4+2=6,在回推到最上一層調用函數sub(&x,8,1)執(zhí)行后面的語句,x=x+k=6+1=7,所以最后輸出7。
39.99解析:考查ifelse語句,n==4不滿足條件,所以fun5(4)=4+fun5(3),n==3也不滿足條件,fun5(3)=3+funS(2),n==2滿足條件fun5(2)=2,故x=4+3+2=9。
40.11解析:在執(zhí)行邏輯表達式'j=!ch&&i++'時,首先判斷j=!ch的值,因為'ch=\'$\''不為0,所以'j=!ch=0',編譯系統(tǒng)便不再計算表達式'i++'的值,i的值不變,仍為1。
41.C解析:pt是指向整型變量的指針數組,pt+1即pt[1]表示第2行的首地址,*(pt+1)表示第2行第1個元素即t[1][0]的地址,*(pt+1)+2表示第2行第3個元素即t[1][2]的地址,(*(pt+1)+2)則表示第2行第3個元素。
42.D
43.C解析:因為在函數fun(intx)中,如果參數x等于0或1時,返回值3。否則p=x-fun(x-2)這是一個遞歸函數,所以在主函數調用fun(7)時,其過程為:“fun(7)=7-fun(5)=7-(5-fun(3))=7-(5-(3-fun(1))=7-(5-(3-3))=7-5=2”,所以最后的輸出結果為2。
44.C
45.D解析:因為變量t的初始值等于1,經過第一次dowhile循環(huán)中,執(zhí)行t=t-2這條語句一次,所以變量t的值為-1,判斷關系表達式t!=n是否成立,如果關系表達式成立,則執(zhí)行第二次循環(huán),再執(zhí)行t=t-2這條語句一次,所以變量t的值為-3,接著再判斷關系表達式t!=n是否成立,如果關系表達式成立,執(zhí)行第三次循環(huán),否則退出循環(huán)。由此可知,所以只要輸入變量n的值為負奇數,則一定會使t==n成立,則退出dowhile循環(huán)。
46.C解析:本題考核的知識點是C語言中的自反賦值運算符?!癿-=n”相當于“m=m-n”,兩個相等的數相減,其值為0。所以,C選項為所選。
47.C解析:本題考查數據庫的關系代數運算。R表中只有一個域名A,有兩個記錄(也叫元組),分別是m和n;S表中有兩個域名,分別是B和C,其所對應的記錄分別為1和3。注意觀察表T,它是由R的第一個記錄依次與S的所有記錄組合,然后再由R的第二個記錄與S的所有記錄組合,形成的一個新表。上述運算恰恰符合關系代數的笛卡兒積運算規(guī)則。關系代數中,笛卡兒積運算用“×”來表示。因此,上述運算可以表示為T=R×S。因此,本題的正確答案為C。
48.D解析:本題考查了軟件工程的基本概念。軟件工程包括3個要素,即方法、工具和過程。方法是完成軟件工程項目的技術手段;工具支持軟件的開發(fā)、管理和文檔生成;過程支持軟件開發(fā)的各個環(huán)節(jié)的控制和管理。
49.D
50.A
51.B解析:邏輯與(&&)優(yōu)先于邏輯或(‖)優(yōu)先于賦值運算符。由于邏輯運算符的結果為邏輯值,真為1,假為0,題目中的邏輯值為真。
52.B解析:選項B中for循環(huán)了5次,而每次循環(huán)的時候,都將p的值重新賦值為1后,再乘以當前數字i,所以最后的結果為5,顯然不是5!的值,同樣的分析可知選項A、選項C和選項D計算的都是5!。所以,4個選項中選項B符合題意。
53.D解析:要想使程序輸出是25,則j-40=25,j=65,而j初值是50,所以填入for循環(huán)中的語句,使引用的數組元素累加為65-50=15即可。
54.C
55.D解析:本題程序第一輪循環(huán)后b的值為9,在進行循環(huán)條件測試時,先取b的現(xiàn)值9與0比較,然后再將b減1。由于9<0不成立,因此循環(huán)結束,這時b的值已變成8,本題正確答案為D。
56.B解析:本題考查的知識點是條件表達式.條件運算符?:是C語言中唯一的三目運算符,它的規(guī)則是先計算左邊運算分量,如果為“真”(非0),則返回中間運算分量的值,否則返回右邊運算分量的值。本題中因為a<b為“真”,所以第1個條件表達式的值為b的值2,所以k=2。然后又因為k>c為“假’,所以第2個表達式的值為k的值2。所以本題應該選擇B。
57.C
58.D解析:本題是一道陷阱題,考生如果沒注意到F()函數被定義為void類型的話,很容易錯選為選項A,其實應該選擇選項D,編譯出錯。
59.C解析:帶參數宏的格式為:#define標識符(形參表
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 國慶-大學活動策劃方案(3篇)
- 施工進度管理及控制制度
- 罕見血液病患者的營養(yǎng)支持方案
- 2026廣東佛山市順德區(qū)順盛投資開發(fā)有限公司招聘1人備考題庫及完整答案詳解一套
- 甘肅省武威市第二中學 2026屆英語高三上期末達標測試試題含解析
- 2026上半年貴州事業(yè)單位聯(lián)考大方縣招聘210人備考題庫及答案詳解(考點梳理)
- 銷售部回款規(guī)定制度
- 2025浙江寧波文旅會展集團有限公司招聘9人備考題庫及完整答案詳解一套
- 農村小學食堂財務制度
- 家用電器財務制度范本
- 2026中國電信四川公用信息產業(yè)有限責任公司社會成熟人才招聘備考題庫及1套完整答案詳解
- 2025班組三級安全安全教育考試題庫(+答案解析)
- 學霸寒假語文閱讀集訓五年級答案
- 2025年復旦三位一體浙江筆試及答案
- 成都印鈔有限公司2026年度工作人員招聘參考題庫含答案
- GB/T 28743-2025污水處理容器設備通用技術條件
- 人工智能-歷史現(xiàn)在和未來
- 半導體廠務項目工程管理 課件 項目7 氣體的分類
- 安徽省亳州市2025屆高三上學期期末質量檢測生物試卷(含答案)
- 2026年1月上海市春季高考數學試題卷(含答案及解析)
- 深度解析(2026)DZT 0064.45-1993地下水質檢驗方法 甘露醇-堿滴定法 測定硼
評論
0/150
提交評論