![2022-2023年江西省新余市全國(guó)計(jì)算機(jī)等級(jí)考試C語言程序設(shè)計(jì)_第1頁](http://file4.renrendoc.com/view/483f715211e6cfd7e19a4aa825f0be98/483f715211e6cfd7e19a4aa825f0be981.gif)
![2022-2023年江西省新余市全國(guó)計(jì)算機(jī)等級(jí)考試C語言程序設(shè)計(jì)_第2頁](http://file4.renrendoc.com/view/483f715211e6cfd7e19a4aa825f0be98/483f715211e6cfd7e19a4aa825f0be982.gif)
![2022-2023年江西省新余市全國(guó)計(jì)算機(jī)等級(jí)考試C語言程序設(shè)計(jì)_第3頁](http://file4.renrendoc.com/view/483f715211e6cfd7e19a4aa825f0be98/483f715211e6cfd7e19a4aa825f0be983.gif)
![2022-2023年江西省新余市全國(guó)計(jì)算機(jī)等級(jí)考試C語言程序設(shè)計(jì)_第4頁](http://file4.renrendoc.com/view/483f715211e6cfd7e19a4aa825f0be98/483f715211e6cfd7e19a4aa825f0be984.gif)
![2022-2023年江西省新余市全國(guó)計(jì)算機(jī)等級(jí)考試C語言程序設(shè)計(jì)_第5頁](http://file4.renrendoc.com/view/483f715211e6cfd7e19a4aa825f0be98/483f715211e6cfd7e19a4aa825f0be985.gif)
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
2022-2023年江西省新余市全國(guó)計(jì)算機(jī)等級(jí)考試C語言程序設(shè)計(jì)學(xué)校:________班級(jí):________姓名:________考號(hào):________
一、單選題(20題)1.若希望下列的程序運(yùn)行后輸出25,程序空白處的正確選項(xiàng)是()。
main()
{inti,j=50,a[]={7,4,10,5,8};
for()
j+=a[i];
primf("%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
2.在一個(gè)有頭結(jié)點(diǎn)的鏈隊(duì)列中,假設(shè)f和r分別為隊(duì)首和隊(duì)尾指針,則插入s所指的結(jié)點(diǎn)的運(yùn)算是()。
A.f->next=s;f=s;
B.r->next=s;r=s;
C.s->next=r;r=s;
D.s->next=f;f=s;
3.若x,i,j和k都是int型變量,則執(zhí)行下面表達(dá)式后x的值為()。x=(i=4,j=16,k=32)
A.4B.16C.32D.52
4.下列敘述中錯(cuò)誤的是()。
A.用戶定義的函數(shù)中可以沒有return語句
B.用戶定義的函數(shù)中可以有多個(gè)return語句,以便調(diào)用一次返回多個(gè)函數(shù)值
C.用戶定義的函數(shù)中若沒有return語句,則應(yīng)當(dāng)定義函數(shù)為void類型
D.函數(shù)的return語句中可以沒有表達(dá)式
5.
6.相對(duì)于數(shù)據(jù)庫系統(tǒng),文件系統(tǒng)的主要缺陷有數(shù)據(jù)關(guān)聯(lián)差、數(shù)據(jù)不一致性和()。
A.可重用性差B.安全性差C.非持久性D.冗余性
7.若用一個(gè)大小為6的數(shù)組來實(shí)現(xiàn)循環(huán)隊(duì)列,且當(dāng)前rear和front的值分別為0和3,當(dāng)從隊(duì)列中刪除一個(gè)元素,再加入兩個(gè)元素后,rear和front的值分別為()
A.2和4B.1和5C.4和2D.5和1
8.下列程序的輸出結(jié)果是()。#include<stdio.h>voidp(int*x){printf("%d¨,++*x);}voidmain(){inty=3;p(&y);}A.3B.4C.2D.5
9.有下列程序:
main()
{inty=20;
do{y--;}while(--y);
phntf("%d\n",y--);
}
當(dāng)執(zhí)行程序時(shí),輸出的結(jié)果是()。
A.-1B.1C.4D.0
10.面向?qū)ο蠓椒ㄖ?,繼承是指()。
A.一組對(duì)象所具有的相似性質(zhì)B.一個(gè)對(duì)象具有另一個(gè)對(duì)象的性質(zhì)C.各對(duì)象之間的共同性質(zhì)D.類之間共享屬性和操作的機(jī)制
11.在結(jié)構(gòu)化方法中,軟件功能分解屬于下列軟件開發(fā)中的階段是______。
A.詳細(xì)設(shè)計(jì)B.需求分析C.總體設(shè)計(jì)D.編程調(diào)試
12.
13.線處應(yīng)填入().A.b[i++]B.b[i]++C.b[i+=2]D.b[i]+=2
14.若有定義語句“char*s1=“OK”,*s2=“ok”;”,以下選項(xiàng)中,能夠輸出“OK”的語句是()。
A.if(strcmp(s1,s2)!=0)puts(s2);
B.if(strcmp(s1,s2)!=0)puts(s1);
C.if(strcmp(s1,s2)==1)puts(s1);
D.if(strcmp(s1,s2)==0)puts(s1);
15.設(shè)ch是char型變量,值為'A',則表達(dá)式ch=(ch>='A'&&ch<='Z')?ch+32:ch的值是()。
A.ZB.aC.zD.A
16.在以下給出的表達(dá)式中,與“while(E)”中的“(E)”不等價(jià)的表達(dá)式是()。
A.(E>0||E<0)B.(E==0)C.(!E==0)D.(E!=0)
17.有以下程序:voidswap(char*x,char*y){chart;t=*x;*x=*y;*y=t;}main{char*s1="abe",*s2="123":swap(s1,s2);printf("%s,%s\n",s1,s2);}程序執(zhí)行后的輸出結(jié)果是()。A.123,abeB.abc.123C.1bc,a23D.321,cba
18.對(duì)初始狀態(tài)為遞增序列的數(shù)組按遞增順序排序,最省時(shí)間的是插入排序算法,最費(fèi)時(shí)間的算法是()
A.堆排序B.快速排序C.插入排序D.歸并排序
19.下列描述錯(cuò)誤的是()。
A.繼承分為多重繼承和單繼承
B.對(duì)象之問的通信靠傳遞消息來實(shí)現(xiàn)
C.在外面看不到對(duì)象的內(nèi)部特征是基于對(duì)象的“模塊獨(dú)立性好”這個(gè)特征
D.類是具有共同屬性、共同方法的對(duì)象的集合
20.針對(duì)簡(jiǎn)單程序設(shè)計(jì),以下敘述的實(shí)施步驟順序正確的是()。
A.確定算法和數(shù)據(jù)結(jié)構(gòu)、編碼、調(diào)試、整理文檔
B.編碼、確定算法和數(shù)據(jù)結(jié)構(gòu)、調(diào)試、整理文檔
C.整理文檔、確定算法和數(shù)據(jù)結(jié)構(gòu)、編碼、調(diào)試
D.確定算法和數(shù)據(jù)結(jié)構(gòu)、調(diào)試、編碼、整理文檔
二、2.填空題(20題)21.Jackson結(jié)構(gòu)化程序設(shè)計(jì)方法是英國(guó)的M.Jackson提出的,它是一種面向______的設(shè)計(jì)方法。
22.按照邏輯結(jié)構(gòu)分類,數(shù)據(jù)結(jié)構(gòu)可分為線性結(jié)構(gòu)和非線性結(jié)構(gòu),二叉樹屬于______。
23.對(duì)長(zhǎng)度為10的線性表進(jìn)行冒泡排序,最壞情況下需要比較的次數(shù)為【】。
24.以下程序中,fun函數(shù)的功能是求3行4列二維數(shù)組每行元素中的最大值。請(qǐng)?zhí)羁铡?/p>
#include<stdio,h>
voidfun(int,int,int(*)[4],int*);
main()
{inta[3][4]={{12,41,36,28},{19,33,15,27},{3,27,19,1}},b[3],i;
fun(3,4,a,b);
for(i=0;i<3;i++)printf("%4d",b[i]);
prinff("\n");
}
voidfun(intm,intn,intar[][4],int*br)
{inti,j,x;
for(i=0;i<m;i++)
{x=ar[i][0];'
for(j=0;j<n;j++)if(x<ar[i][j])x=ar[i][j];
【】=x;
}
}
25.問題處理方案的正確而完整的描述稱為______。
26.#define命令出現(xiàn)在程序中函數(shù)的外面,宏名的有效范圍為______。
27.下列程序執(zhí)行輸出的結(jié)果是______。
#include<stdio.h>
f(intA)
{intb=0;
staticc=7;
a=c++;b++;
return(A);
}
main()
{inta=2,i,k;
for(i=0;i<2;i++)
k=f(a++);
printf("%d\n",k);
}
28.棧中允許進(jìn)行插入和刪除的一端叫做______。
29.函數(shù)delete(s,i,n)的作用是從字符串s中刪除從第i個(gè)字符開始的n個(gè)字符,請(qǐng)?zhí)羁铡?/p>
voiddelete(chars[],inti,intn)
{intj,k,length=0;
whiles(length])
【】;
-i;
j=i;
}
if(【】)
{k=i+n;
if(i+n<=length)
while(k<length)
s[j++]=s[k++];
s[j]='\0';
}
30.以下程序輸出的結(jié)果是【】。
#include<stdio.h>
main()
{inta=5,b=4,c=3,d;
d=(a>b>c);
printf("%d\n",d);
}
31.數(shù)據(jù)字典是各類數(shù)據(jù)描述的集合,它通常包括五個(gè)部分,即數(shù)據(jù)項(xiàng)、數(shù)據(jù)結(jié)構(gòu)、數(shù)據(jù)流、【】和處理過程。
32.以下程序的運(yùn)行結(jié)果是()。
main()
(inta=2,b=7,c=5;
switch(a>0)
{case1:switch(b<0)
{case1:switch(");break;
case2:printf("!");break;
}
case0:switch(c==5)
{case0:printf("*");break;
case1:printf("#");break;
case2:printf("$");break;
}
default:printf("&");
}
printf("\n");
}
33.設(shè)a,b,c為整型數(shù),且a=2,b=3,c=4,則執(zhí)行完以下語句后,a的值是【】。
a*=16+(b++)-(++c);
34.以下程序運(yùn)行后的輸出結(jié)果是______。
main()
{
inta,b,c;
a=25;
b=025;
c=0x25;
printf("%d%d%d\n",a,b,C);
}
35.下面程序的輸出結(jié)果是【】。
main()
{intarr[10],i,k=0;
for(i=0;i<10;i++)arr[i]=i;
for(i=0;i<4;i++)k+=arr[i]=i;
printf("%d\n",k);
}
36.以下程序的功能是計(jì)算:s=1+12+123+1234+12345。請(qǐng)?zhí)羁铡?/p>
main()
{intt=0,s=0,i;
for(i=1;i<=5;i++)
{t=i+______;s=s+t;}
printf("s=%d\n",s);
}
37.設(shè)有以下定義和語句:
inta[3][2]={1,2,3,4,5},*p[3];
p[0]=a[1];
則*(p[0]+1)所代表的數(shù)組元素是【】。
38.下列程序的輸出結(jié)果是______。
main()
{inta=1,b=2,c=3,t=0;
if(a<B){t=a;a=b;b=t;}
if(a<C){t=a;a=c;c=t;}
printf("%d,%d,%d\n",a,b,C);
}
39.若a是血型變量,且a的初值為4,則計(jì)算a+=a-=a*a表達(dá)式后a的值為______。
40.下列程序段的運(yùn)行結(jié)果是______。
charstr口="ABCD",*p=str;
printf("%d\n",*(p+3));
三、1.選擇題(20題)41.下列敘述中,不屬于測(cè)試的特征的是
A.測(cè)試的挑剔性B.完全測(cè)試的不可能性C.測(cè)試的可靠性D.測(cè)試的經(jīng)濟(jì)性
42.若有以下程序:#include<stdio.h>voidf(intn);main(){voidf(intn);f(5);}voidf(intn){printf("%d\n",n);}則以下敘述中不正確的是()。
A.若只在主函數(shù)中對(duì)函數(shù)f進(jìn)行說明,則只能在主函數(shù)中正確調(diào)用函數(shù)f
B.若在主函數(shù)前對(duì)函數(shù)f進(jìn)行說明,則在主函數(shù)和其后的其他函數(shù)中都可以正確調(diào)用函數(shù)f
C.對(duì)于以上程序,編譯時(shí)系統(tǒng)會(huì)提示出錯(cuò)信息:對(duì)f函數(shù)重復(fù)說明
D.函數(shù)f無返回值,所以可用void將其類型定義為無返回值型
43.下列選項(xiàng)中錯(cuò)誤的說明語句是
A.chara[]={'t','o','y','o','u','\0'};
B.chara[]={"toyou\0"};
C.chara[]="toyou\0";
D.chara[]='toyou\0';
44.以下程序的功能是進(jìn)行位運(yùn)算:main(){unsignedchara,b;a=7^3;b=~4&3;printf("%d%d\n",a,B);}程序運(yùn)行后的輸出結(jié)果是()。
A.43B.73C.70D.40
45.以下敘述中正確的是()。
A.C程序中注釋部分可以出現(xiàn)在程序中任意合適的地方
B.花括號(hào)"{"和"}"只能作為函數(shù)體的定界符
C.構(gòu)成C程序的基本單位是函數(shù),所有函數(shù)名都可以由用戶命名
D.分號(hào)是C語句之間的分隔符,不是語句的一部分
46.有以下程序:#include<stdio.h>main(){inta[3][3],*p,i;p=&a[0][0];for(i=0;i<9;i++)p[i]=i+1;printf("%d\n",a[1][2]);}程序運(yùn)行后的輸出結(jié)果是()。
A.3B.6C.9D.2
47.若變量c為char類型,能正確判斷出c為小寫字母的表達(dá)式是______。
A.'a'<=c<='z'
B.(c>='a')||(c<='z')
C.('a'<=c)and('z'>=c)
D.(c>='a')&&(c<='z')
48.設(shè)有說明:inta=1,b=0;,則執(zhí)行以下語句的輸出結(jié)果是______。switch(a){case1:switch(b){case0:printf("**0**\n");break;case1:printf("**1*\n");break;}case2:printf("**2**\n");break;}
A.**0**B.**0****2**C.**0****1****2**D.switch語句中存在語法錯(cuò)誤
49.下面程序的輸出結(jié)果是()。#include<stdio.h>main(){chara[]={'a','b','c','d','f','g'},*p;p=a;printf("%c\n",*p+4);}
A.aB.bC.eD.f
50.設(shè)a和b均為int型變量,且a=6,b=11,則能使值為3的表達(dá)式是()。
A.b%(a%4)B.b%(a-a%5)C.b%a-a%5D.(b%B)-(a%4)
51.下列循環(huán)體的執(zhí)行次數(shù)是()。#include<stdio.h>main(){inti,j;for(i=0j=1;i<j+1;i+=1,j--)printf("%d\n",j);}
A.3B.2C.1D.0
52.若在以下定義和賦值語句,則才s數(shù)組的第i行第j列(假設(shè)i,j已正確說明并賦值)元素地址的合法引用為ints[2][3]={0},(*p)[3];p=s;
A.*(*(p+i)+j)B.*(p[i]+j)C.(p+i)+jD.(*(p+i))[j]
53.下面一組中都是C語言關(guān)鍵字的是______。
A.doubleIntfor
B.mainwhilegoto
C.volatilebreakstatic
D.mallocsizeofnew
54.以下程序中函數(shù)f的功能是將n個(gè)字符串按由大到小的順序進(jìn)行排序。#include<string.h>voidf(charp[][10],intn){chart[20];inti,j;for(i=0;i<n-1;i++)for(j=i+l;j<n;j++)if(strcmp(p[i],p[j])<0){strcpy(t,p[i]);strcpy(p[i],p[j]);strcpy(p[j],t);}}main(){charp[][lO]-{"abc","aabdfg","abbd","dcdbe","cd"};inti;f(p,5);printf("%dkn",strlen(p[0]));}程序運(yùn){亍后的輸出結(jié)果是
A.6B.4C.5D.3
55.a、b、c、d變量均為float類型且已正確賦值,下列選項(xiàng)中與數(shù)學(xué)式子“2ab/(5cd)”等價(jià)的C語言表達(dá)式是()。
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)
56.在C語言中,運(yùn)算對(duì)象必須是整型數(shù)的運(yùn)算符是()。
A.%B.\C.%和\D.**
57.下列程序的輸出結(jié)果,是______。main(){inta=0,b=0,c=0;if(++a>0||++b>0)++c;printf("\na=%d,b=%d,c=%d",a,b,c);}
A.a=0,b=0,c=0B.a=1,b=1,c=1C.a=1,b=0,c=1D.a=0,b=1,c=1
58.可以在C語言中用做用戶標(biāo)識(shí)符的是______。
A.voiddefineWORDB.as_b3_123IfC.for-abccasD.2cDoSIG
59.下列對(duì)于線性鏈表的描述中正確的是()
A.存儲(chǔ)空間不一定是連續(xù),且各元素的存儲(chǔ)順序是任意的
B.存儲(chǔ)空間不一定是連續(xù),且前件元素一定存儲(chǔ)在后件元素的前面
C.存儲(chǔ)空間必須連續(xù),且前件元素一定存儲(chǔ)在后件元素的前面
D.存儲(chǔ)空間必須連續(xù),且各元素的存儲(chǔ)順序是任意的
60.設(shè)有如下的程序段:inta[]=(1,2,3,4,5),*t;t=a;則下列說法正確的是()
A.a和t的內(nèi)容相同B.a數(shù)組的長(zhǎng)度和t所指的字符串長(zhǎng)度相等C.a和t完全相同D.指針變量t指向數(shù)組a的第一個(gè)元素
四、選擇題(20題)61.若二維數(shù)組a有m列,則在a[i][j]前的元素個(gè)數(shù)為()。
A.i*m+j-1B.i*m+jC.J*m+iD.i*m+j+1
62.以下程序運(yùn)行后的輸出結(jié)果是()。
A.zB.0C.元素Ch[5]地址D.字符y的地址
63.有以下程序:
程序運(yùn)行后的輸出結(jié)果是()。
A.0B.1C.4D.8
64.
65.有以下程序
66.若有以下說明和定義,以下敘述中錯(cuò)誤的是(
)。uniondt{
int
a;char
b;double
c;}data;A.兩個(gè)共用體變量之間可以相互賦值B.變量data所占內(nèi)存字節(jié)數(shù)與成員c所占字節(jié)數(shù)相等C.程序段:data.a=5;printf("%f\n",data.c);輸出結(jié)果為5.000000D.共用體在初始化時(shí)只能用第一個(gè)成員的類型進(jìn)行初始化
67.已知數(shù)據(jù)表A中每個(gè)元素距其最終位置不遠(yuǎn),為了節(jié)省時(shí)間,應(yīng)采用的算法是()。
A.堆排序B.直接插入排序C.快速排序D.直接選擇排序
68.
69.
70.下列數(shù)據(jù)結(jié)構(gòu)中,能用二分法進(jìn)行查找的是()。
A.順序存儲(chǔ)的有序線性表B.線性鏈表C.二叉鏈表D.有序線性鏈表
71.
72.
73.
74.
75.有三個(gè)關(guān)系R、S和T如下:
則由關(guān)系R和S得到關(guān)系T的操作是()。
A.自然連接B.交C.投影D.并
76.
77.
78.
79.有下列二叉樹.對(duì)此二叉樹前序遍歷的結(jié)果為()。
A.ACFXDBEYZB.ABEFXYZCDC.ABCDEFXY7D.ABDYECFXZ
80.
五、程序改錯(cuò)題(1題)81.下列給定程序中函數(shù)fun的功能是:將tt所指字符串中的小寫字母全部改為對(duì)應(yīng)的大寫字母,其他字符不變。
例如,若輸入“Ab,cD”,則輸出“AB,CD”。
請(qǐng)改正程序中的錯(cuò)誤,使它能得出正確的結(jié)果。
注意:部分源程序在文件MODIl.C中,不得增行或刪行,也不得更改程序的結(jié)構(gòu)!
六、程序設(shè)計(jì)題(1題)82.規(guī)定輸入的字符串中只包含字母和。號(hào)。請(qǐng)編寫函數(shù)fun,其功能是:將字符串尾部的。號(hào)全部刪除,前面和中間的*號(hào)不動(dòng)。
參考答案
1.D解析:要想使程序輸出是25,則j-40=25,j=65,而j初值是50,所以填入for循環(huán)中的語句,使引用的數(shù)組元素累加為65-50=15即可。
2.B
3.C
4.B函數(shù)的值只能通過return語句返回主調(diào)函數(shù)。函數(shù)中允許有多個(gè)return語句,但每次只能調(diào)用一個(gè)return語句,因此只能返回一個(gè)函數(shù)值。不返回函數(shù)值的函數(shù),可以明確定義為“空類型”,類型說明符為void。故本題答案為B選項(xiàng)。
5.D
6.D解析:文件系統(tǒng)所管理的數(shù)據(jù)文件基本上是分散的、相互獨(dú)立的,因此相對(duì)于數(shù)據(jù)庫系統(tǒng),以此為基礎(chǔ)的數(shù)據(jù)處理存在3個(gè)缺點(diǎn),數(shù)據(jù)冗余大、數(shù)據(jù)的不一致性、程序與數(shù)據(jù)的相互依賴(簡(jiǎn)稱為數(shù)據(jù)依賴)。注意:文件系統(tǒng)和數(shù)據(jù)庫系統(tǒng)各自的特點(diǎn),人工管理階段及數(shù)據(jù)庫系統(tǒng)三代的特點(diǎn)。
7.A
8.B本題考查函數(shù)調(diào)用時(shí)的參數(shù)傳遞。在函數(shù)調(diào)用時(shí),形參是指向?qū)崊⒌闹羔樧兞?,則printf的執(zhí)行結(jié)果為++x;x=3,則3+1=4。
9.D解析:本題考查do…while循環(huán)。當(dāng)--寸是0(即y是0)時(shí)結(jié)束循環(huán),輸出y--是先輸出y的值再將y的值減1。
10.D繼承是面向?qū)ο蟮姆椒ǖ囊粋€(gè)主要特征,是使用已有的類的定義作為基礎(chǔ)建立新類的定義技術(shù)。廣義的說,繼承是指能夠直接獲得已有的性質(zhì)和特征,而不必重復(fù)定義它們,所以說繼承是指類之間共享屬性和操作的機(jī)制。
11.C解析:軟件系統(tǒng)結(jié)構(gòu)的總體設(shè)計(jì)包括:基于功能層次結(jié)構(gòu)建立系統(tǒng)、按功能劃分成模塊的層次結(jié)構(gòu)、確定每個(gè)模塊的功能、建立與已確定的軟件需求的對(duì)應(yīng)關(guān)系、確定模塊間的調(diào)用關(guān)系和模塊間的接口、評(píng)估模塊劃分的質(zhì)量等方面。詳細(xì)設(shè)計(jì)的任務(wù)是:在使用程序設(shè)計(jì)語言編制程序以前,對(duì)所采用算法的邏輯關(guān)系進(jìn)行分析,設(shè)計(jì)出全部必要的過程細(xì)節(jié),并給予清晰的表達(dá)。需求分析是指用戶對(duì)目標(biāo)軟件系統(tǒng)在功能、行為、性能、設(shè)計(jì)約束等方面的期望。需求分析的任務(wù)是發(fā)現(xiàn)需求、求精、建模和定義需求,通常包括:功能需求、性能需求、環(huán)境需求、可靠性需求、安全保密要求、用戶界面需求、資源使用需求、成本消耗需求、開發(fā)進(jìn)度需求等。編程調(diào)試的任務(wù)是診斷和改正程序中潛在的錯(cuò)誤。綜上所述。軟件功能分解只能發(fā)生在總體設(shè)計(jì)階段。
12.D
13.D
14.B“strcmp(S1,S2)”是字符串比較函數(shù),比較規(guī)則是兩個(gè)字符串自左向右逐個(gè)字符相比較(按照ASCII值大?。R?yàn)椤癘K”<“ok”,所以“strcmp(S1,S2)”為負(fù)值。故本題答案為B選項(xiàng)。
15.B
16.Bwhile語句中條件表達(dá)式E的值不為0即真,認(rèn)為滿足條件。這與B選項(xiàng)中表達(dá)式的含義正好相反。故本題答案為B選項(xiàng)。
17.C本題考查swap函數(shù),它的作用是把x、Y所指的內(nèi)容互換,其他的不變,因此當(dāng)執(zhí)行完調(diào)用函數(shù)后,僅僅a與1互換,其他的沒有變。
18.B
19.C對(duì)象的封裝性是指從外面看只能看到對(duì)象的外部特性,而對(duì)象的內(nèi)部,其處理能力的實(shí)行和內(nèi)部狀態(tài)對(duì)外是不可見的,是隱蔽的。
20.A\nC語言中程序中的步驟實(shí)現(xiàn)為:先確定程序中的算法和數(shù)據(jù)結(jié)構(gòu),然后進(jìn)行程序的編碼,再進(jìn)行對(duì)程序的調(diào)試,最后進(jìn)行文檔的整理和記錄。使用這種步驟可以方便程序的編寫以及在完成后提高代碼的重用性。
\n
21.數(shù)據(jù)結(jié)構(gòu)數(shù)據(jù)結(jié)構(gòu)
22.非線性結(jié)構(gòu)非線性結(jié)構(gòu)解析:對(duì)于一個(gè)非空的數(shù)據(jù)結(jié)構(gòu),如果同時(shí)滿足下列兩個(gè)條件,即1)有且只有一個(gè)根結(jié)點(diǎn);2)每一個(gè)結(jié)點(diǎn)最多有一個(gè)前件,也最多有一個(gè)后件;即為線性結(jié)構(gòu),而二叉樹的結(jié)點(diǎn)可能存在兩個(gè)后件,所以是非線性結(jié)構(gòu)。
23.4545解析:假設(shè)線性表的長(zhǎng)度為n,則在最壞情況下,冒泡排序需要經(jīng)過遍的從前往后掃描和遍的從后往前掃描,需要比較次數(shù)為。
24.br[i]或*(br+i)br[i]或*(br+i)解析:程序中的數(shù)組a是一個(gè)3行4列的二維數(shù)組,一維數(shù)組b用于存放每行的最大數(shù)。在函數(shù)fun中,通過二重for循環(huán)求每行的最大數(shù),外層for循環(huán)用于控制行數(shù),內(nèi)層for循環(huán)用于控制列數(shù),當(dāng)外層循環(huán)執(zhí)行一次時(shí),內(nèi)層循環(huán)則從一行的4個(gè)數(shù)中找出最大數(shù)x,然后將最大值x賦給數(shù)組br,故空格處應(yīng)填br[i]或*(br+i)。
25.算法或程序或流程圖算法或程序或流程圖解析:算法是問題處理方案正確而完整的描述。
26.從定義到本源文件結(jié)束從定義到本源文件結(jié)束解析:C語言規(guī)定,宏名的有效范圍為從定義宏到本源程序結(jié)束。
27.88解析:第1次for循環(huán),i=0,調(diào)用函數(shù)f(2),然后將a的值加1,在f()函數(shù)中,變量c為static類型,所以c=8:第2次for循環(huán),i=1,調(diào)用函數(shù)f(3),然后將a的值加1,調(diào)用函數(shù)f(3)時(shí),a=c++=8,所以k=8。
28.棧頂棧頂解析:棧是限定在表的一端進(jìn)行插入和刪除操作的線性表。在表中,允許插入和刪除的一端叫做“棧頂”,不允許插入和刪除的一端叫做“棧底”。
29.length++i<lengthlength++\r\ni<length解析:第—個(gè)循環(huán)極有可能是計(jì)算串的長(zhǎng)度,在i<=length時(shí)字符才被刪除,被刪除的是從第i個(gè)到笫i+n或最后—個(gè)間的所有字符。刪除前,應(yīng)判斷i<=length。由于已經(jīng)進(jìn)行了-i運(yùn)算,故實(shí)際應(yīng)填入i<length。
30.00解析:在本題中,d=(a>b>c);相當(dāng)于d=(5>4>3);其計(jì)算過程為:先算5>4,結(jié)果為真,得1,即d=(1>3);然后計(jì)算1>3,結(jié)果為假,得0。
31.數(shù)據(jù)存儲(chǔ)數(shù)據(jù)存儲(chǔ)
32.#&#&解析:剛開始時(shí),switch后面的表達(dá)式a>0為真(1),與case1匹配,然后執(zhí)行case1后面的switch語句,表達(dá)式b<0值為0,沒有與其匹配的語句,返回外層,因?yàn)橥鈱記]有break語句,順序執(zhí)行case0后面的switch語句,表達(dá)式“c==5”值為1,與其后面的case1匹配,因此輸出#,遇到break返回外層,又因?yàn)橥鈱記]有break語句,順序執(zhí)行default后的語句,輸出&。
33.28
34.252137252137解析:本題中先定義了整型變量a、b和c,然后分別給賦值a為25,b為八進(jìn)制的025,c為十六進(jìn)制0x25。然后調(diào)用pruntf()函數(shù)將a、b和c分別用十進(jìn)制輸出,且中間用空格隔開,八進(jìn)制025轉(zhuǎn)換為十進(jìn)制的值為21,十六進(jìn)制的0x25轉(zhuǎn)換為十進(jìn)制的值為37,故最后的輸出結(jié)果為252137。
35.66解析:本題第1個(gè)for循環(huán)是為數(shù)組arr元素賦初值。第2個(gè)for循環(huán)是分別用i=0,1,2,3給數(shù)組元素arr[0]、arr[1]、arr[2]、arr[3]賦值,再累加到變量k中,k=0+1+2+3=6。
36.t*10或10*tt*10或10*t解析:本題要求累加一系列有規(guī)律的數(shù),從輸出結(jié)果來看,s保存的是最終結(jié)果,而s在循環(huán)體中,每次累加一個(gè)t,則說明t在5次循環(huán)中分別等于1.12、123、1234、12345;而t每次循環(huán)等于“填空內(nèi)容”加上循環(huán)變量i,又因?yàn)閕在5次循環(huán)中分別等于1、2、3、4,5,所以t每次循環(huán)要加的“填空內(nèi)容”應(yīng)分別為0、10、120,1230,12340,這一系列值正好是前一次t的值的10倍.所以“填空內(nèi)容”應(yīng)是t*10。
37.a[1][1]a[1][1]解析:p是一個(gè)指針數(shù)組,p[0]指向數(shù)組a[1][0]。*(p[0]+1)代表數(shù)組a[1][1]。
38.3123,1,2解析:分析程序,第一個(gè)if語句,a=1,b=2,控制條件a<b成立,則交換a、b的值,此時(shí)a=2,b=1。第二個(gè)if語句,a=2,c=3,控制條件a<c成立,則交換a、c的值,此時(shí)a=3,c=2。
39.-24-24解析:本題考查賦值運(yùn)算符a+=b等價(jià)于a=a+b;a-=a*a等價(jià)于a-a-a*a=4-4*4=-12:a+=a,即a=a+a=-24。
40.6868解析:本題考查如何用指針引用數(shù)組元素。本題先定義了一個(gè)指向字符型數(shù)組str的指針p,指針p指向數(shù)組str的首地址,p+3將指針指向str[3],*(p+3)指的是字符“D”,輸出時(shí)是以“%d,格式輸出的,即輸出其相應(yīng)ASCII碼值68。
41.C解析:軟件測(cè)試的目標(biāo)是在精心控制的環(huán)境下執(zhí)行程序,以發(fā)現(xiàn)程序中的錯(cuò)誤,給出程序可靠性的鑒定。它有3個(gè)方面的重要特征,即測(cè)試的挑剔性、完全測(cè)試的不可能性及測(cè)試的經(jīng)濟(jì)性。其中沒有測(cè)試的可靠性這一說法。注意:軟件測(cè)試與軟件調(diào)試的概念,以及相應(yīng)的方法。
42.C解析:f函數(shù)沒有重復(fù)說明,在main函數(shù)中是對(duì)f函數(shù)聲明,在main函數(shù)外則是對(duì)f函數(shù)的定義。
43.D解析:通過賦初值的方式給一維數(shù)組賦字符串,可以用給一般數(shù)組賦初值的相同方式給一維字符數(shù)組賦字符串,也可以在賦值時(shí)直接賦字符串常量。選項(xiàng)B)和C)后面的'\\0'是多余的,不過也不錯(cuò),在C語言中,系統(tǒng)會(huì)自動(dòng)在字符串的結(jié)尾處加上一個(gè)字符'\\0'作為串的結(jié)束標(biāo)記。
44.A解析:本題考查位運(yùn)算。位運(yùn)算的對(duì)象應(yīng)為二進(jìn)制的形式。7的二進(jìn)制表示為00000111,3的二進(jìn)制表示為00000011,7與3相異或得00000100,即十進(jìn)制數(shù)4,表達(dá)式“~4&3”先進(jìn)行位反操作,再進(jìn)行位與,即11111011&00000011=00000011,即十進(jìn)制數(shù)3。所以應(yīng)輸出為4和3。
45.A解析:/*與*/之間的信息稱為注釋信息,在C語言中,允許在任何能夠插入空格符的位置插入注釋,但C語言的注釋不能進(jìn)行嵌套,故選項(xiàng)A正確:在C語言中,函數(shù)體是從花括號(hào){開始,到花括號(hào)}結(jié)束。但沒有規(guī)定花括號(hào){和}只能作為函數(shù)體定界符,故選項(xiàng)B錯(cuò)誤;選項(xiàng)C中前半句是正確的,C程序由一個(gè)或多個(gè)函數(shù)所組成,但不是所有的函數(shù)都由用戶自己命名,有些函數(shù),比如主函數(shù)main()就不能由用戶來命名,故選C不正確;在C語言中明確規(guī)定每條語句以分號(hào);結(jié)束,分號(hào)是語句不可缺少的一部分,故選項(xiàng)D不正確。所以,4個(gè)選項(xiàng)中選項(xiàng)A符合題意。
46.B解析:本題考查指向數(shù)組元素的指針變量。p=&a[0][0]是把該數(shù)組的第一個(gè)元素a[0][0]的地址賦給指針變量p,a[1][2]是數(shù)組中的第6個(gè)元素,根據(jù)for循環(huán)中的賦值可知,輸出結(jié)果是6。
47.D解析:字符型數(shù)據(jù)在計(jì)算機(jī)內(nèi)部是以ASCII碼存儲(chǔ)的,英文大寫字母和小寫字母在ASCII碼表中都是連續(xù)的,大寫字母A到Z是從65到90,小寫字母a到z是97到122,所以只要變量c大于a并且小于z就能保證其為小寫字母。
48.B解析:本題是switch-case語句的嵌套使用,外層switch語句的第一個(gè)分支(嵌套switch語句)執(zhí)行完后,沒有break;語句,將繼續(xù)執(zhí)行第二個(gè)分支。
49.C解析:“*”號(hào)的優(yōu)先級(jí)比“+”的優(yōu)先級(jí)高,所以先執(zhí)行“*p”;指針p指向的是數(shù)組的首地址,因此*p=a,再加4得'e'。
50.D
51.C解析:本題考查for循環(huán)。第一次循環(huán)前先判斷循環(huán)條件,此時(shí)i=0,j=1,i<j+1成立,循環(huán)第一次;第二次循環(huán)前先判斷循環(huán)條件,此時(shí)i=1,j=0,(j--是先使用j的值再減1),i<j+1不成立,結(jié)束循環(huán)。
52.A解析:p+i是數(shù)組s的第i+1行的首地址,而*(p+i)則是數(shù)組第i+1行第1列的元素的地址,*(p+i)+j則是第i+1行的第j+1列的地址,*(*(p+i)+j)引用的是數(shù)組元素s[i][j]的值。注意:通過建立一個(gè)指針數(shù)組來引用二維數(shù)組元素。
53.C解析:C語言中的關(guān)鍵字有32個(gè)關(guān)鍵字(參見C語言教程),本題中只有C符合題意。
54.C解析:函數(shù)strcmp(字符串1,字符串2)作用是將”字符串1”和”字符串2”進(jìn)行比較,如果“字符串1”》”字符串2”,返回一個(gè)大于0的整數(shù)值;如果“字符串1”<“字符串2”,返回一個(gè)小于0的整數(shù)值;如果”字符串1”=“字符串2”,返回0。函數(shù)strcpy(字符串?dāng)?shù)組名,字符串,[整型表達(dá)式])的作用是將“字符串”的前“整型表達(dá)式”個(gè)字符有入到指定的“字符數(shù)組”中,若省略“整型表達(dá)式”,則將整個(gè)“字符串”存入,字符數(shù)組”中.函數(shù)f()的功能是利用選擇法把一個(gè)具有n行的二維數(shù)組中按行存放的n個(gè)字符串由大到小排序。在主函數(shù)中定義了一個(gè)二維字符數(shù)組p并給它按行賦初值,然后調(diào)用f()函數(shù);把它按行從大到小排列。字符串比較大小的標(biāo)準(zhǔn)是從第一個(gè)字符開始依次向右比較,遇到某一個(gè)字符大,該字符所在的字符串就是較大的字符串。由此可知最大的字符串為“dcdbe”,排序后存放在第一行,其首地址為P[0],在輸出語句輸出的p[0]指向的字符串長(zhǎng)度是5。所以4個(gè)選項(xiàng)中C正確。
55.B解析:選項(xiàng)A和選項(xiàng)D中首先計(jì)算2/5,因?yàn)閮蓚€(gè)計(jì)算分量都是整型,所以結(jié)果為2,與實(shí)際運(yùn)算不符;選項(xiàng)B中因?yàn)槌顺M足交換律,所以2*b放前面和放后面都是一樣的,所以滿足題目要求;選項(xiàng)C中的表達(dá)式等價(jià)于2abcd/5,所以不滿足題目要求。故應(yīng)該選擇B。
56.A解析:在C語言中,“%”運(yùn)算符兩側(cè)的運(yùn)算數(shù)必須是整型。
57.C解析:“||”是或運(yùn)算,它有個(gè)“短路”的特點(diǎn)需特別注意,當(dāng)“||”運(yùn)算符左邊的表達(dá)式的值為真時(shí),則程序就不再對(duì)“||”右邊的表達(dá)式的值進(jìn)行運(yùn)算,而是使得整個(gè)表達(dá)式的值直接為真。
58.B解析:C語言規(guī)定,標(biāo)識(shí)符只能由字母、數(shù)字和下劃線三種符號(hào)組成,而且第一個(gè)字符必須是字母或下劃線。另外還需要注意的是關(guān)鍵字不能作標(biāo)識(shí)符。選項(xiàng)A中void,C中for都為關(guān)鍵字,D中2c以字母開頭。
59.A本題考查的是線性單鏈表、雙向鏈表與循環(huán)鏈表的結(jié)構(gòu)及其基本運(yùn)算。\n在鏈?zhǔn)酱鎯?chǔ)結(jié)構(gòu)中,存儲(chǔ)數(shù)據(jù)結(jié)構(gòu)的存儲(chǔ)空間可以不連續(xù),各數(shù)據(jù)結(jié)點(diǎn)的存儲(chǔ)順序與數(shù)據(jù)元素之間的邏輯關(guān)系可以不一致,而數(shù)據(jù)元素之間的邏輯關(guān)系是由指針域來確定的。故本題答案為A。
60.D
61.B解析:二維數(shù)組的元素可以看成是按矩陣形式存放的,總是先存放第一行的元素,再存放第二行的元素。數(shù)組第一維的下標(biāo)是i,說明它前面還有i行,有i*m個(gè)元素,數(shù)組第二維的下標(biāo)是j,說明它前面還有j列,有j個(gè)元素,所以共有i*m+j個(gè)元素。
62.A表達(dá)式*(pc+5)先將指針向后移動(dòng)5
63.Cm函數(shù)中的X為靜態(tài)局部變量,占用固定的內(nèi)存單元,下一次調(diào)用時(shí)仍可保留上次調(diào)用時(shí)的值。也就是說,如果多次調(diào)用fun函數(shù),x的定義只在第一次調(diào)用時(shí)有效,從第二次調(diào)用開始,x的定義相當(dāng)于不存在,直接使用X的值。主函數(shù)中調(diào)用兩次fun函數(shù)t第一次調(diào)用:X=1,X=x}2=2,s=2;第二次調(diào)用:(直接用上次X的值)x=X·2=4,s=4。因此C選項(xiàng)正確。
64.A
65.Afun函數(shù)將字符串?dāng)?shù)組里字符串從大到小排序,所以結(jié)果為A)。
66.C浮點(diǎn)型占8個(gè)字節(jié),整型占4個(gè)字節(jié),當(dāng)把整型數(shù)據(jù)用浮點(diǎn)型格式輸出時(shí),結(jié)果為0.000000
67.B當(dāng)數(shù)據(jù)表A中每個(gè)元素距其最終位置不遠(yuǎn),說明數(shù)據(jù)A按關(guān)鍵字值基本有序。在待排序數(shù)據(jù)基本有序的情況下,采用插入排序所用的時(shí)間最少。
68.B
69.C
70.A\r\n二分法又叫折半(對(duì)分)查找法,只適合于順序存儲(chǔ)的有序表(是指線性表中的元素按值非遞減排列)。二分法的基本思想是:設(shè)有序線性表的長(zhǎng)度為n,被查元素為X,則二分查找的方法如下:
將X與線性表的中間項(xiàng)進(jìn)行比較:若中間項(xiàng)的值等于x,則說明找到,查找結(jié)束;若x小于中間項(xiàng)的值,則在線性表的前半部分(即中間項(xiàng)以前的部分)以相同的方法進(jìn)行查找;若X大于中間項(xiàng)的值,則在線性表的后半部分(即中間項(xiàng)以后的部分)以相同的方法進(jìn)行查找、這個(gè)過程-直進(jìn)行到查找成功或于表長(zhǎng)度為0,(說明線性表中沒有這個(gè)元素為止)順序存儲(chǔ)的線性袁在計(jì)算機(jī)中-般用一個(gè)-維數(shù)組來表示,在數(shù)組中我們可以通過數(shù)組名和下標(biāo)來對(duì)數(shù)組中的任意一個(gè)元素進(jìn)行訪問,而在鏈表(不管是有序還是無序)中,要對(duì)元素進(jìn)行訪問必須從表頭結(jié)點(diǎn)開始,順著鏈條一個(gè)一個(gè)結(jié)點(diǎn)進(jìn)行搜索,因此選項(xiàng)A正確
71.B
72.C
73.C
74.B
75.A解析:結(jié)構(gòu)化程序的概念首先是從以往編程過程中無限制地使用轉(zhuǎn)移語句而提出的。轉(zhuǎn)移語句可以使程序的控制流程強(qiáng)制性地轉(zhuǎn)向程序的任一處,在傳統(tǒng)流程圖中,就是用上節(jié)我們提到的“很隨意”的流程線來描述這種轉(zhuǎn)移功能。如果一個(gè)程序中多處出現(xiàn)這種轉(zhuǎn)移情況,將會(huì)導(dǎo)致程序流程無序可尋,程序結(jié)構(gòu)雜亂無章,這樣的程序是令人難以理解和接受的,并且容易出錯(cuò)。尤其是在實(shí)際軟件產(chǎn)品的開發(fā)中,更多的追求軟件的可讀性和可修改性,象這種結(jié)構(gòu)和風(fēng)格的程序是不允許出現(xiàn)的。
76.D
77.B
78.B
79.D
\n所謂二叉樹的前序遍歷是指先訪問根結(jié)點(diǎn),訪問左子樹,最后訪問右子樹,本題中序?yàn)镈YBEAFCZX,后序?yàn)閅DEBFZXCA。
\n
80.C
81.
(1)if((tt[i]>=’a’)&&(tt[i]<=‘z’))
(2)tt[i]一=32;
【考點(diǎn)分析】
本題考查:if語句條件表達(dá)式;小寫字母轉(zhuǎn)大寫字母的方法。
【解題思路】
(1)分析本題可知,要判斷字符是否為小寫字母,即判斷其是否在a—z之間,所以這里需要進(jìn)行連續(xù)的比較,用&&。(2)從ASCIl碼表中可以看出,小寫字母的ASCIl碼值比對(duì)應(yīng)大寫字母的ASCIl值大32。將字符串中的小寫字母改為大寫字母的方法是:從字符串第一個(gè)字符開始,根據(jù)ASCIl碼值判斷該字母是不是小寫字母,若是,則ASCIl碼值減32即可。
82.
voidfun(char*a){
while(*a!=’、0。)
a++:
a一一;/*指針a指向字符串的尾部*/while(}a==’*。)
a一一;/·指針a指向最后一個(gè)字母*/
*(a+1)=’、0’;/*在字符串最后加上結(jié)束標(biāo)志符·/
【考點(diǎn)分析】
本題考查:刪除字符串尾部*號(hào);刪除的主要思想是把不刪除的字符保留起來。
【解題思路】
對(duì)于一個(gè)字符串要?jiǎng)h除其尾部的*號(hào),只需要在最后一個(gè)不是*號(hào)的字符后面加上結(jié)束符號(hào)‘、0’。具體操作為:首先找到字符串的結(jié)尾,然后從最后一個(gè)字符開始往前逐個(gè)判斷是否為*號(hào),直到找到非·號(hào)字符為止。最后在該字符后面加上結(jié)束符號(hào)’\0。2022-2023年江西省新余市全國(guó)計(jì)算機(jī)等級(jí)考試C語言程序設(shè)計(jì)學(xué)校:________班級(jí):________姓名:________考號(hào):________
一、單選題(20題)1.若希望下列的程序運(yùn)行后輸出25,程序空白處的正確選項(xiàng)是()。
main()
{inti,j=50,a[]={7,4,10,5,8};
for()
j+=a[i];
primf("%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
2.在一個(gè)有頭結(jié)點(diǎn)的鏈隊(duì)列中,假設(shè)f和r分別為隊(duì)首和隊(duì)尾指針,則插入s所指的結(jié)點(diǎn)的運(yùn)算是()。
A.f->next=s;f=s;
B.r->next=s;r=s;
C.s->next=r;r=s;
D.s->next=f;f=s;
3.若x,i,j和k都是int型變量,則執(zhí)行下面表達(dá)式后x的值為()。x=(i=4,j=16,k=32)
A.4B.16C.32D.52
4.下列敘述中錯(cuò)誤的是()。
A.用戶定義的函數(shù)中可以沒有return語句
B.用戶定義的函數(shù)中可以有多個(gè)return語句,以便調(diào)用一次返回多個(gè)函數(shù)值
C.用戶定義的函數(shù)中若沒有return語句,則應(yīng)當(dāng)定義函數(shù)為void類型
D.函數(shù)的return語句中可以沒有表達(dá)式
5.
6.相對(duì)于數(shù)據(jù)庫系統(tǒng),文件系統(tǒng)的主要缺陷有數(shù)據(jù)關(guān)聯(lián)差、數(shù)據(jù)不一致性和()。
A.可重用性差B.安全性差C.非持久性D.冗余性
7.若用一個(gè)大小為6的數(shù)組來實(shí)現(xiàn)循環(huán)隊(duì)列,且當(dāng)前rear和front的值分別為0和3,當(dāng)從隊(duì)列中刪除一個(gè)元素,再加入兩個(gè)元素后,rear和front的值分別為()
A.2和4B.1和5C.4和2D.5和1
8.下列程序的輸出結(jié)果是()。#include<stdio.h>voidp(int*x){printf("%d¨,++*x);}voidmain(){inty=3;p(&y);}A.3B.4C.2D.5
9.有下列程序:
main()
{inty=20;
do{y--;}while(--y);
phntf("%d\n",y--);
}
當(dāng)執(zhí)行程序時(shí),輸出的結(jié)果是()。
A.-1B.1C.4D.0
10.面向?qū)ο蠓椒ㄖ?,繼承是指()。
A.一組對(duì)象所具有的相似性質(zhì)B.一個(gè)對(duì)象具有另一個(gè)對(duì)象的性質(zhì)C.各對(duì)象之間的共同性質(zhì)D.類之間共享屬性和操作的機(jī)制
11.在結(jié)構(gòu)化方法中,軟件功能分解屬于下列軟件開發(fā)中的階段是______。
A.詳細(xì)設(shè)計(jì)B.需求分析C.總體設(shè)計(jì)D.編程調(diào)試
12.
13.線處應(yīng)填入().A.b[i++]B.b[i]++C.b[i+=2]D.b[i]+=2
14.若有定義語句“char*s1=“OK”,*s2=“ok”;”,以下選項(xiàng)中,能夠輸出“OK”的語句是()。
A.if(strcmp(s1,s2)!=0)puts(s2);
B.if(strcmp(s1,s2)!=0)puts(s1);
C.if(strcmp(s1,s2)==1)puts(s1);
D.if(strcmp(s1,s2)==0)puts(s1);
15.設(shè)ch是char型變量,值為'A',則表達(dá)式ch=(ch>='A'&&ch<='Z')?ch+32:ch的值是()。
A.ZB.aC.zD.A
16.在以下給出的表達(dá)式中,與“while(E)”中的“(E)”不等價(jià)的表達(dá)式是()。
A.(E>0||E<0)B.(E==0)C.(!E==0)D.(E!=0)
17.有以下程序:voidswap(char*x,char*y){chart;t=*x;*x=*y;*y=t;}main{char*s1="abe",*s2="123":swap(s1,s2);printf("%s,%s\n",s1,s2);}程序執(zhí)行后的輸出結(jié)果是()。A.123,abeB.abc.123C.1bc,a23D.321,cba
18.對(duì)初始狀態(tài)為遞增序列的數(shù)組按遞增順序排序,最省時(shí)間的是插入排序算法,最費(fèi)時(shí)間的算法是()
A.堆排序B.快速排序C.插入排序D.歸并排序
19.下列描述錯(cuò)誤的是()。
A.繼承分為多重繼承和單繼承
B.對(duì)象之問的通信靠傳遞消息來實(shí)現(xiàn)
C.在外面看不到對(duì)象的內(nèi)部特征是基于對(duì)象的“模塊獨(dú)立性好”這個(gè)特征
D.類是具有共同屬性、共同方法的對(duì)象的集合
20.針對(duì)簡(jiǎn)單程序設(shè)計(jì),以下敘述的實(shí)施步驟順序正確的是()。
A.確定算法和數(shù)據(jù)結(jié)構(gòu)、編碼、調(diào)試、整理文檔
B.編碼、確定算法和數(shù)據(jù)結(jié)構(gòu)、調(diào)試、整理文檔
C.整理文檔、確定算法和數(shù)據(jù)結(jié)構(gòu)、編碼、調(diào)試
D.確定算法和數(shù)據(jù)結(jié)構(gòu)、調(diào)試、編碼、整理文檔
二、2.填空題(20題)21.Jackson結(jié)構(gòu)化程序設(shè)計(jì)方法是英國(guó)的M.Jackson提出的,它是一種面向______的設(shè)計(jì)方法。
22.按照邏輯結(jié)構(gòu)分類,數(shù)據(jù)結(jié)構(gòu)可分為線性結(jié)構(gòu)和非線性結(jié)構(gòu),二叉樹屬于______。
23.對(duì)長(zhǎng)度為10的線性表進(jìn)行冒泡排序,最壞情況下需要比較的次數(shù)為【】。
24.以下程序中,fun函數(shù)的功能是求3行4列二維數(shù)組每行元素中的最大值。請(qǐng)?zhí)羁铡?/p>
#include<stdio,h>
voidfun(int,int,int(*)[4],int*);
main()
{inta[3][4]={{12,41,36,28},{19,33,15,27},{3,27,19,1}},b[3],i;
fun(3,4,a,b);
for(i=0;i<3;i++)printf("%4d",b[i]);
prinff("\n");
}
voidfun(intm,intn,intar[][4],int*br)
{inti,j,x;
for(i=0;i<m;i++)
{x=ar[i][0];'
for(j=0;j<n;j++)if(x<ar[i][j])x=ar[i][j];
【】=x;
}
}
25.問題處理方案的正確而完整的描述稱為______。
26.#define命令出現(xiàn)在程序中函數(shù)的外面,宏名的有效范圍為______。
27.下列程序執(zhí)行輸出的結(jié)果是______。
#include<stdio.h>
f(intA)
{intb=0;
staticc=7;
a=c++;b++;
return(A);
}
main()
{inta=2,i,k;
for(i=0;i<2;i++)
k=f(a++);
printf("%d\n",k);
}
28.棧中允許進(jìn)行插入和刪除的一端叫做______。
29.函數(shù)delete(s,i,n)的作用是從字符串s中刪除從第i個(gè)字符開始的n個(gè)字符,請(qǐng)?zhí)羁铡?/p>
voiddelete(chars[],inti,intn)
{intj,k,length=0;
whiles(length])
【】;
-i;
j=i;
}
if(【】)
{k=i+n;
if(i+n<=length)
while(k<length)
s[j++]=s[k++];
s[j]='\0';
}
30.以下程序輸出的結(jié)果是【】。
#include<stdio.h>
main()
{inta=5,b=4,c=3,d;
d=(a>b>c);
printf("%d\n",d);
}
31.數(shù)據(jù)字典是各類數(shù)據(jù)描述的集合,它通常包括五個(gè)部分,即數(shù)據(jù)項(xiàng)、數(shù)據(jù)結(jié)構(gòu)、數(shù)據(jù)流、【】和處理過程。
32.以下程序的運(yùn)行結(jié)果是()。
main()
(inta=2,b=7,c=5;
switch(a>0)
{case1:switch(b<0)
{case1:switch(");break;
case2:printf("!");break;
}
case0:switch(c==5)
{case0:printf("*");break;
case1:printf("#");break;
case2:printf("$");break;
}
default:printf("&");
}
printf("\n");
}
33.設(shè)a,b,c為整型數(shù),且a=2,b=3,c=4,則執(zhí)行完以下語句后,a的值是【】。
a*=16+(b++)-(++c);
34.以下程序運(yùn)行后的輸出結(jié)果是______。
main()
{
inta,b,c;
a=25;
b=025;
c=0x25;
printf("%d%d%d\n",a,b,C);
}
35.下面程序的輸出結(jié)果是【】。
main()
{intarr[10],i,k=0;
for(i=0;i<10;i++)arr[i]=i;
for(i=0;i<4;i++)k+=arr[i]=i;
printf("%d\n",k);
}
36.以下程序的功能是計(jì)算:s=1+12+123+1234+12345。請(qǐng)?zhí)羁铡?/p>
main()
{intt=0,s=0,i;
for(i=1;i<=5;i++)
{t=i+______;s=s+t;}
printf("s=%d\n",s);
}
37.設(shè)有以下定義和語句:
inta[3][2]={1,2,3,4,5},*p[3];
p[0]=a[1];
則*(p[0]+1)所代表的數(shù)組元素是【】。
38.下列程序的輸出結(jié)果是______。
main()
{inta=1,b=2,c=3,t=0;
if(a<B){t=a;a=b;b=t;}
if(a<C){t=a;a=c;c=t;}
printf("%d,%d,%d\n",a,b,C);
}
39.若a是血型變量,且a的初值為4,則計(jì)算a+=a-=a*a表達(dá)式后a的值為______。
40.下列程序段的運(yùn)行結(jié)果是______。
charstr口="ABCD",*p=str;
printf("%d\n",*(p+3));
三、1.選擇題(20題)41.下列敘述中,不屬于測(cè)試的特征的是
A.測(cè)試的挑剔性B.完全測(cè)試的不可能性C.測(cè)試的可靠性D.測(cè)試的經(jīng)濟(jì)性
42.若有以下程序:#include<stdio.h>voidf(intn);main(){voidf(intn);f(5);}voidf(intn){printf("%d\n",n);}則以下敘述中不正確的是()。
A.若只在主函數(shù)中對(duì)函數(shù)f進(jìn)行說明,則只能在主函數(shù)中正確調(diào)用函數(shù)f
B.若在主函數(shù)前對(duì)函數(shù)f進(jìn)行說明,則在主函數(shù)和其后的其他函數(shù)中都可以正確調(diào)用函數(shù)f
C.對(duì)于以上程序,編譯時(shí)系統(tǒng)會(huì)提示出錯(cuò)信息:對(duì)f函數(shù)重復(fù)說明
D.函數(shù)f無返回值,所以可用void將其類型定義為無返回值型
43.下列選項(xiàng)中錯(cuò)誤的說明語句是
A.chara[]={'t','o','y','o','u','\0'};
B.chara[]={"toyou\0"};
C.chara[]="toyou\0";
D.chara[]='toyou\0';
44.以下程序的功能是進(jìn)行位運(yùn)算:main(){unsignedchara,b;a=7^3;b=~4&3;printf("%d%d\n",a,B);}程序運(yùn)行后的輸出結(jié)果是()。
A.43B.73C.70D.40
45.以下敘述中正確的是()。
A.C程序中注釋部分可以出現(xiàn)在程序中任意合適的地方
B.花括號(hào)"{"和"}"只能作為函數(shù)體的定界符
C.構(gòu)成C程序的基本單位是函數(shù),所有函數(shù)名都可以由用戶命名
D.分號(hào)是C語句之間的分隔符,不是語句的一部分
46.有以下程序:#include<stdio.h>main(){inta[3][3],*p,i;p=&a[0][0];for(i=0;i<9;i++)p[i]=i+1;printf("%d\n",a[1][2]);}程序運(yùn)行后的輸出結(jié)果是()。
A.3B.6C.9D.2
47.若變量c為char類型,能正確判斷出c為小寫字母的表達(dá)式是______。
A.'a'<=c<='z'
B.(c>='a')||(c<='z')
C.('a'<=c)and('z'>=c)
D.(c>='a')&&(c<='z')
48.設(shè)有說明:inta=1,b=0;,則執(zhí)行以下語句的輸出結(jié)果是______。switch(a){case1:switch(b){case0:printf("**0**\n");break;case1:printf("**1*\n");break;}case2:printf("**2**\n");break;}
A.**0**B.**0****2**C.**0****1****2**D.switch語句中存在語法錯(cuò)誤
49.下面程序的輸出結(jié)果是()。#include<stdio.h>main(){chara[]={'a','b','c','d','f','g'},*p;p=a;printf("%c\n",*p+4);}
A.aB.bC.eD.f
50.設(shè)a和b均為int型變量,且a=6,b=11,則能使值為3的表達(dá)式是()。
A.b%(a%4)B.b%(a-a%5)C.b%a-a%5D.(b%B)-(a%4)
51.下列循環(huán)體的執(zhí)行次數(shù)是()。#include<stdio.h>main(){inti,j;for(i=0j=1;i<j+1;i+=1,j--)printf("%d\n",j);}
A.3B.2C.1D.0
52.若在以下定義和賦值語句,則才s數(shù)組的第i行第j列(假設(shè)i,j已正確說明并賦值)元素地址的合法引用為ints[2][3]={0},(*p)[3];p=s;
A.*(*(p+i)+j)B.*(p[i]+j)C.(p+i)+jD.(*(p+i))[j]
53.下面一組中都是C語言關(guān)鍵字的是______。
A.doubleIntfor
B.mainwhilegoto
C.volatilebreakstatic
D.mallocsizeofnew
54.以下程序中函數(shù)f的功能是將n個(gè)字符串按由大到小的順序進(jìn)行排序。#include<string.h>voidf(charp[][10],intn){chart[20];inti,j;for(i=0;i<n-1;i++)for(j=i+l;j<n;j++)if(strcmp(p[i],p[j])<0){strcpy(t,p[i]);strcpy(p[i],p[j]);strcpy(p[j],t);}}main(){charp[][lO]-{"abc","aabdfg","abbd","dcdbe","cd"};inti;f(p,5);printf("%dkn",strlen(p[0]));}程序運(yùn){亍后的輸出結(jié)果是
A.6B.4C.5D.3
55.a、b、c、d變量均為float類型且已正確賦值,下列選項(xiàng)中與數(shù)學(xué)式子“2ab/(5cd)”等價(jià)的C語言表達(dá)式是()。
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)
56.在C語言中,運(yùn)算對(duì)象必須是整型數(shù)的運(yùn)算符是()。
A.%B.\C.%和\D.**
57.下列程序的輸出結(jié)果,是______。main(){inta=0,b=0,c=0;if(++a>0||++b>0)++c;printf("\na=%d,b=%d,c=%d",a,b,c);}
A.a=0,b=0,c=0B.a=1,b=1,c=1C.a=1,b=0,c=1D.a=0,b=1,c=1
58.可以在C語言中用做用戶標(biāo)識(shí)符的是______。
A.voiddefineWORDB.as_b3_123IfC.for-abccasD.2cDoSIG
59.下列對(duì)于線性鏈表的描述中正確的是()
A.存儲(chǔ)空間不一定是連續(xù),且各元素的存儲(chǔ)順序是任意的
B.存儲(chǔ)空間不一定是連續(xù),且前件元素一定存儲(chǔ)在后件元素的前面
C.存儲(chǔ)空間必須連續(xù),且前件元素一定存儲(chǔ)在后件元素的前面
D.存儲(chǔ)空間必須連續(xù),且各元素的存儲(chǔ)順序是任意的
60.設(shè)有如下的程序段:inta[]=(1,2,3,4,5),*t;t=a;則下列說法正確的是()
A.a和t的內(nèi)容相同B.a數(shù)組的長(zhǎng)度和t所指的字符串長(zhǎng)度相等C.a和t完全相同D.指針變量t指向數(shù)組a的第一個(gè)元素
四、選擇題(20題)61.若二維數(shù)組a有m列,則在a[i][j]前的元素個(gè)數(shù)為()。
A.i*m+j-1B.i*m+jC.J*m+iD.i*m+j+1
62.以下程序運(yùn)行后的輸出結(jié)果是()。
A.zB.0C.元素Ch[5]地址D.字符y的地址
63.有以下程序:
程序運(yùn)行后的輸出結(jié)果是()。
A.0B.1C.4D.8
64.
65.有以下程序
66.若有以下說明和定義,以下敘述中錯(cuò)誤的是(
)。uniondt{
int
a;char
b;double
c;}data;A.兩個(gè)共用體變量之間可以相互賦值B.變量data所占內(nèi)存字節(jié)數(shù)與成員c所占字節(jié)數(shù)相等C.程序段:data.a=5;printf("%f\n",data.c);輸出結(jié)果為5.000000D.共用體在初始化時(shí)只能用第一個(gè)成員的類型進(jìn)行初始化
67.已知數(shù)據(jù)表A中每個(gè)元素距其最終位置不遠(yuǎn),為了節(jié)省時(shí)間,應(yīng)采用的算法是()。
A.堆排序B.直接插入排序C.快速排序D.直接選擇排序
68.
69.
70.下列數(shù)據(jù)結(jié)構(gòu)中,能用二分法進(jìn)行查找的是()。
A.順序存儲(chǔ)的有序線性表B.線性鏈表C.二叉鏈表D.有序線性鏈表
71.
72.
73.
74.
75.有三個(gè)關(guān)系R、S和T如下:
則由關(guān)系R和S得到關(guān)系T的操作是()。
A.自然連接B.交C.投影D.并
76.
77.
78.
79.有下列二叉樹.對(duì)此二叉樹前序遍歷的結(jié)果為()。
A.ACFXDBEYZB.ABEFXYZCDC.ABCDEFXY7D.ABDYECFXZ
80.
五、程序改錯(cuò)題(1題)81.下列給定程序中函數(shù)fun的功能是:將tt所指字符串中的小寫字母全部改為對(duì)應(yīng)的大寫字母,其他字符不變。
例如,若輸入“Ab,cD”,則輸出“AB,CD”。
請(qǐng)改正程序中的錯(cuò)誤,使它能得出正確的結(jié)果。
注意:部分源程序在文件MODIl.C中,不得增行或刪行,也不得更改程序的結(jié)構(gòu)!
六、程序設(shè)計(jì)題(1題)82.規(guī)定輸入的字符串中只包含字母和。號(hào)。請(qǐng)編寫函數(shù)fun,其功能是:將字符串尾部的。號(hào)全部刪除,前面和中間的*號(hào)不動(dòng)。
參考答案
1.D解析:要想使程序輸出是25,則j-40=25,j=65,而j初值是50,所以填入for循環(huán)中的語句,使引用的數(shù)組元素累加為65-50=15即可。
2.B
3.C
4.B函數(shù)的值只能通過return語句返回主調(diào)函數(shù)。函數(shù)中允許有多個(gè)return語句,但每次只能調(diào)用一個(gè)return語句,因此只能返回一個(gè)函數(shù)值。不返回函數(shù)值的函數(shù),可以明確定義為“空類型”,類型說明符為void。故本題答案為B選項(xiàng)。
5.D
6.D解析:文件系統(tǒng)所管理的數(shù)據(jù)文件基本上是分散的、相互獨(dú)立的,因此相對(duì)于數(shù)據(jù)庫系統(tǒng),以此為基礎(chǔ)的數(shù)據(jù)處理存在3個(gè)缺點(diǎn),數(shù)據(jù)冗余大、數(shù)據(jù)的不一致性、程序與數(shù)據(jù)的相互依賴(簡(jiǎn)稱為數(shù)據(jù)依賴)。注意:文件系統(tǒng)和數(shù)據(jù)庫系統(tǒng)各自的特點(diǎn),人工管理階段及數(shù)據(jù)庫系統(tǒng)三代的特點(diǎn)。
7.A
8.B本題考查函數(shù)調(diào)用時(shí)的參數(shù)傳遞。在函數(shù)調(diào)用時(shí),形參是指向?qū)崊⒌闹羔樧兞?,則printf的執(zhí)行結(jié)果為++x;x=3,則3+1=4。
9.D解析:本題考查do…while循環(huán)。當(dāng)--寸是0(即y是0)時(shí)結(jié)束循環(huán),輸出y--是先輸出y的值再將y的值減1。
10.D繼承是面向?qū)ο蟮姆椒ǖ囊粋€(gè)主要特征,是使用已有的類的定義作為基礎(chǔ)建立新類的定義技術(shù)。廣義的說,繼承是指能夠直接獲得已有的性質(zhì)和特征,而不必重復(fù)定義它們,所以說繼承是指類之間共享屬性和操作的機(jī)制。
11.C解析:軟件系統(tǒng)結(jié)構(gòu)的總體設(shè)計(jì)包括:基于功能層次結(jié)構(gòu)建立系統(tǒng)、按功能劃分成模塊的層次結(jié)構(gòu)、確定每個(gè)模塊的功能、建立與已確定的軟件需求的對(duì)應(yīng)關(guān)系、確定模塊間的調(diào)用關(guān)系和模塊間的接口、評(píng)估模塊劃分的質(zhì)量等方面。詳細(xì)設(shè)計(jì)的任務(wù)是:在使用程序設(shè)計(jì)語言編制程序以前,對(duì)所采用算法的邏輯關(guān)系進(jìn)行分析,設(shè)計(jì)出全部必要的過程細(xì)節(jié),并給予清晰的表達(dá)。需求分析是指用戶對(duì)目標(biāo)軟件系統(tǒng)在功能、行為、性能、設(shè)計(jì)約束等方面的期望。需求分析的任務(wù)是發(fā)現(xiàn)需求、求精、建模和定義需求,通常包括:功能需求、性能需求、環(huán)境需求、可靠性需求、安全保密要求、用戶界面需求、資源使用需求、成本消耗需求、開發(fā)進(jìn)度需求等。編程調(diào)試的任務(wù)是診斷和改正程序中潛在的錯(cuò)誤。綜上所述。軟件功能分解只能發(fā)生在總體設(shè)計(jì)階段。
12.D
13.D
14.B“strcmp(S1,S2)”是字符串比較函數(shù),比較規(guī)則是兩個(gè)字符串自左向右逐個(gè)字符相比較(按照ASCII值大?。?。因?yàn)椤癘K”<“ok”,所以“strcmp(S1,S2)”為負(fù)值。故本題答案為B選項(xiàng)。
15.B
16.Bwhile語句中條件表達(dá)式E的值不為0即真,認(rèn)為滿足條件。這與B選項(xiàng)中表達(dá)式的含義正好相反。故本題答案為B選項(xiàng)。
17.C本題考查swap函數(shù),它的作用是把x、Y所指的內(nèi)容互換,其他的不變,因此當(dāng)執(zhí)行完調(diào)用函數(shù)后,僅僅a與1互換,其他的沒有變。
18.B
19.C對(duì)象的封裝性是指從外面看只能看到對(duì)象的外部特性,而對(duì)象的內(nèi)部,其處理能力的實(shí)行和內(nèi)部狀態(tài)對(duì)外是不可見的,是隱蔽的。
20.A\nC語言中程序中的步驟實(shí)現(xiàn)為:先確定程序中的算法和數(shù)據(jù)結(jié)構(gòu),然后進(jìn)行程序的編碼,再進(jìn)行對(duì)程序的調(diào)試,最后進(jìn)行文檔的整理和記錄。使用這種步驟可以方便程序的編寫以及在完成后提高代碼的重用性。
\n
21.數(shù)據(jù)結(jié)構(gòu)數(shù)據(jù)結(jié)構(gòu)
22.非線性結(jié)構(gòu)非線性結(jié)構(gòu)解析:對(duì)于一個(gè)非空的數(shù)據(jù)結(jié)構(gòu),如果同時(shí)滿足下列兩個(gè)條件,即1)有且只有一個(gè)根結(jié)點(diǎn);2)每一個(gè)結(jié)點(diǎn)最多有一個(gè)前件,也最多有一個(gè)后件;即為線性結(jié)構(gòu),而二叉樹的結(jié)點(diǎn)可能存在兩個(gè)后件,所以是非線性結(jié)構(gòu)。
23.4545解析:假設(shè)線性表的長(zhǎng)度為n,則在最壞情況下,冒泡排序需要經(jīng)過遍的從前往后掃描和遍的從后往前掃描,需要比較次數(shù)為。
24.br[i]或*(br+i)br[i]或*(br+i)解析:程序中的數(shù)組a是一個(gè)3行4列的二維數(shù)組,一維數(shù)組b用于存放每行的最大數(shù)。在函數(shù)fun中,通過二重for循環(huán)求每行的最大數(shù),外層for循環(huán)用于控制行數(shù),內(nèi)層for循環(huán)用于控制列數(shù),當(dāng)外層循環(huán)執(zhí)行一次時(shí),內(nèi)層循環(huán)則從一行的4個(gè)數(shù)中找出最大數(shù)x,然后將最大值x賦給數(shù)組br,故空格處應(yīng)填br[i]或*(br+i)。
25.算法或程序或流程圖算法或程序或流程圖解析:算法是問題處理方案正確而完整的描述。
26.從定義到本源文件結(jié)束從定義到本源文件結(jié)束解析:C語言規(guī)定,宏名的有效范圍為從定義宏到本源程序結(jié)束。
27.88解析:第1次for循環(huán),i=0,調(diào)用函數(shù)f(2),然后將a的值加1,在f()函數(shù)中,變量c為static類型,所以c=8:第2次for循環(huán),i=1,調(diào)用函數(shù)f(3),然后將a的值加1,調(diào)用函數(shù)f(3)時(shí),a=c++=8,所以k=8。
28.棧頂棧頂解析:棧是限定在表的一端進(jìn)行插入和刪除操作的線性表。在表中,允許插入和刪除的一端叫做“棧頂”,不允許插入和刪除的一端叫做“棧底”。
29.length++i<lengthlength++\r\ni<length解析:第—個(gè)循環(huán)極有可能是計(jì)算串的長(zhǎng)度,在i<=length時(shí)字符才被刪除,被刪除的是從第i個(gè)到笫i+n或最后—個(gè)間的所有字符。刪除前,應(yīng)判斷i<=length。由于已經(jīng)進(jìn)行了-i運(yùn)算,故實(shí)際應(yīng)填入i<length。
30.00解析:在本題中,d=(a>b>c);相當(dāng)于d=(5>4>3);其計(jì)算過程為:先算5>4,結(jié)果為真,得1,即d=(1>3);然后計(jì)算1>3,結(jié)果為假,得0。
31.數(shù)據(jù)存儲(chǔ)數(shù)據(jù)存儲(chǔ)
32.#&#&解析:剛開始時(shí),switch后面的表達(dá)式a>0為真(1),與case1匹配,然后執(zhí)行case1后面的switch語句,表達(dá)式b<0值為0,沒有與其匹配的語句,返回外層,因?yàn)橥鈱記]有break語句,順序執(zhí)行case0后面的switch語句,表達(dá)式“c==5”值為1,與其后面的case1匹配,因此輸出#,遇到break返回外層,又因?yàn)橥鈱記]有break語句,順序執(zhí)行default后的語句,輸出&。
33.28
34.252137252137解析:本題中先定義了整型變量a、b和c,然后分別給賦值a為25,b為八進(jìn)制的025,c為十六進(jìn)制0x25。然后調(diào)用pruntf()函數(shù)將a、b和c分別用十進(jìn)制輸出,且中間用空格隔開,八進(jìn)制025轉(zhuǎn)換為十進(jìn)制的值為21,十六進(jìn)制的0x25轉(zhuǎn)換為十進(jìn)制的值為37,故最后的輸出結(jié)果為252137。
35.66解析:本題第1個(gè)for循環(huán)是為數(shù)組arr元素賦初值。第2個(gè)for循環(huán)是分別用i=0,1,2,3給數(shù)組元素arr[0]、arr[1]、arr[2]、arr[3]賦值,再累加到變量k中,k=0+1+2+3=6。
36.t*10或10*tt*10或10*t解析:本題要求累加一系列有規(guī)律的數(shù),從輸出結(jié)果來看,s保存的是最終結(jié)果,而s在循環(huán)體中,每次累加一個(gè)t,則說明t在5次循環(huán)中分別等于1.12、123、1234、12345;而t每次循環(huán)等于“填空內(nèi)容”加上循環(huán)變量i,又因?yàn)閕在5次循環(huán)中分別等于1、2、3、4,5,所以t每次循環(huán)要加的“填空內(nèi)容”應(yīng)分別為0、10、120,1230,12340,這一系列值正好是前一次t的值的10倍.所以“填空內(nèi)容”應(yīng)是t*10。
37.a[1][1]a[1][1]解析:p是一個(gè)指針數(shù)組,p[0]指向數(shù)組a[1][0]。*(p[0]+1)代表數(shù)組a[1][1]。
38.3123,1,2解析:分析程序,第一個(gè)if語句,a=1,b=2,控制條件a<b成立,則交換a、b的值,
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年全球及中國(guó)電子廢棄物回收拆解服務(wù)行業(yè)頭部企業(yè)市場(chǎng)占有率及排名調(diào)研報(bào)告
- 2025-2030全球微型矩形電連接器行業(yè)調(diào)研及趨勢(shì)分析報(bào)告
- 2025-2030全球點(diǎn)型可燃?xì)怏w和有毒氣體探測(cè)器行業(yè)調(diào)研及趨勢(shì)分析報(bào)告
- 2025年全球及中國(guó)電磁精密儀器行業(yè)頭部企業(yè)市場(chǎng)占有率及排名調(diào)研報(bào)告
- 2025-2030全球激勵(lì)應(yīng)用程序行業(yè)調(diào)研及趨勢(shì)分析報(bào)告
- 2025-2030全球半導(dǎo)體用PFA閥門行業(yè)調(diào)研及趨勢(shì)分析報(bào)告
- 2025-2030全球送粉式金屬3D打印機(jī)行業(yè)調(diào)研及趨勢(shì)分析報(bào)告
- 2025年全球及中國(guó)滑動(dòng)芯組件行業(yè)頭部企業(yè)市場(chǎng)占有率及排名調(diào)研報(bào)告
- 2025-2030全球工業(yè)級(jí)3D傳感器行業(yè)調(diào)研及趨勢(shì)分析報(bào)告
- 2025年全球及中國(guó)桌面出版 (DTP) 服務(wù)行業(yè)頭部企業(yè)市場(chǎng)占有率及排名調(diào)研報(bào)告
- 《應(yīng)收培訓(xùn)》課件
- 國(guó)土空間生態(tài)修復(fù)規(guī)劃
- 2024年醫(yī)療器械經(jīng)營(yíng)質(zhì)量管理規(guī)范培訓(xùn)課件
- DB11T 1136-2023 城鎮(zhèn)燃?xì)夤艿婪D(zhuǎn)內(nèi)襯修復(fù)工程施工及驗(yàn)收規(guī)程
- 2025屆浙江省兩校高一數(shù)學(xué)第一學(xué)期期末質(zhì)量檢測(cè)試題含解析
- 2023年新高考(新課標(biāo))全國(guó)2卷數(shù)學(xué)試題真題(含答案解析)
- 零部件測(cè)繪與 CAD成圖技術(shù)(中職組)沖壓機(jī)任務(wù)書
- GB/T 19228.1-2024不銹鋼卡壓式管件組件第1部分:卡壓式管件
- 2024年騎電動(dòng)車撞傷人私了協(xié)議書范文
- 四年級(jí)數(shù)學(xué)(上)計(jì)算題專項(xiàng)練習(xí)及答案
- 繪本教學(xué)課件
評(píng)論
0/150
提交評(píng)論