版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
2021-2022年遼寧省遼陽(yáng)市全國(guó)計(jì)算機(jī)等級(jí)考試C語(yǔ)言程序設(shè)計(jì)學(xué)校:________班級(jí):________姓名:________考號(hào):________
一、單選題(20題)1.
2.當(dāng)執(zhí)行以下程序段時(shí),()。x=-l:do{x=x*X;)while(!x);A.循環(huán)體將執(zhí)行一次B.循環(huán)體將執(zhí)行兩次C.循環(huán)體將執(zhí)行無(wú)限次D.系統(tǒng)將提示有語(yǔ)法錯(cuò)誤
3.設(shè)有函數(shù)說(shuō)明語(yǔ)句:intfun(int,int);以及函數(shù)指針定義語(yǔ)句:int(*f)(int,int);若要使函數(shù)指針指向函數(shù)fun的入口地址,以下選項(xiàng)中正確的是()。
A.f=fun();B.*f=fun;C.f=fun;D.*f=fun();
4.在E-R圖中,用來(lái)表示實(shí)體的圖形是______。A.矩形B.橢圓形C.菱形D.三角形
5.已知各變量的類(lèi)型說(shuō)明如下則以下符合C語(yǔ)言語(yǔ)法的表達(dá)式是()。A.a+=a-=(b=4)*(a=3)B.a=a*3=2C.x%(-3)D.y=f1oat(i)
6.用二分法查找一個(gè)長(zhǎng)度為10的,排好序的線(xiàn)性表,查找不成功時(shí),最多需要比較()次
A.5B.2C.4D.1
7.
8.
9.數(shù)據(jù)庫(kù)DB、數(shù)據(jù)庫(kù)系統(tǒng)DBS、數(shù)據(jù)庫(kù)管理系統(tǒng)DBMS之間的關(guān)系是()。
A.DB包括DBS和DBMSB.DBMS包括DB和DBSC.DBS包括DB和DBMSD.沒(méi)有任何關(guān)系
10.數(shù)據(jù)的存儲(chǔ)結(jié)構(gòu)是指()。
A.存儲(chǔ)在外存中的數(shù)據(jù)B.數(shù)據(jù)所占的存儲(chǔ)空間量C.數(shù)據(jù)在計(jì)算機(jī)中的順序存儲(chǔ)方式D.數(shù)據(jù)的邏輯結(jié)構(gòu)在計(jì)算機(jī)中的表示
11.若變量已正確定義,有以下程序段
A.0,0B.0,1C.1,1D.程序進(jìn)入無(wú)限循環(huán)
12.在存儲(chǔ)數(shù)據(jù)時(shí),通常不僅要存儲(chǔ)各數(shù)據(jù)元素的值,而且還要存儲(chǔ)()。
A.數(shù)據(jù)的處理方法B.數(shù)據(jù)元素的類(lèi)型C.數(shù)據(jù)元素之間的關(guān)系D.數(shù)據(jù)的存儲(chǔ)方法
13.下列說(shuō)法正確的是()。
A.在C語(yǔ)言中,可以使用動(dòng)態(tài)內(nèi)存分配技術(shù)定義元素個(gè)數(shù)可變的數(shù)組
B.在c語(yǔ)言中,數(shù)組元素的個(gè)數(shù)可以不確定,允許隨機(jī)變動(dòng)
C.在C語(yǔ)言中,數(shù)組元素的數(shù)據(jù)類(lèi)型可以不一致
D.在C語(yǔ)言中,定義一個(gè)數(shù)組后.就確定了它所容納的元素的個(gè)數(shù)
14.算法分析的目的是()。
A.找出數(shù)據(jù)結(jié)構(gòu)的合理性B.找出算法中輸入和輸出之間的關(guān)系C.分析算法的易懂性和可靠性D.分析算法的效率以求改進(jìn)
15.若運(yùn)行以下程序時(shí),從鍵盤(pán)輸入ADescriptor<CR>(<CR>表示回車(chē)),則下面程序的運(yùn)行結(jié)果是
#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
16.現(xiàn)有如下程序段#include"stdio.h"main(){intk[30]={12,324,45,6,768,98,21,34,453,456};intcount=0,i=0;while(k[i]){if(k[i]%2==0||k[i]%5==0)count++;i++;}printf("%d,%d\n",count,i);}則程序段的輸出結(jié)果為
A.7,8B.8,8C.7,10D.8,10
17.有以下程序:main(){intX,i;for(i=1;i<=50;i++){x=i;if(X%2=O)if(x%3=O)if(X%7=0)printf("%d,i)";}}輸出結(jié)果是()。A.28B.27C.42D.41
18.下面程序的輸出是()。A.17B.18C.23D.24
19.有定義語(yǔ)句:inta=1,b=2,c=3,x;,則以下選項(xiàng)中各程序段執(zhí)行后,x的值不為3的是A.if(c<a)x=1;elseif(b<a)x=2;elsex=3;
B.if(a<3)x=3;elseif(b<a)x=2;elsex=1;
C.if(a<3)x=3;if(a<2)x=2;if(a<1)x=1;
D.if(a<b)x=b;if(b<c)x=c;if(c<a)x=a;
20.下列敘述中,正確的是()
A.軟件交付使用后還需要進(jìn)行維護(hù)
B.軟件一旦交付使用就不需要再進(jìn)行維護(hù)
C.軟件交付使用后其生命周期就結(jié)束
D.軟件維護(hù)是指修復(fù)程序中被破壞的指令
二、2.填空題(20題)21.若有程序:
main()
{inti,j;
scanq("i=%d,j=%d",&i,&j);
printf("i=%d,j=%d\n",i,j);
}
要求給i賦10,給j賦20,則應(yīng)該從鍵盤(pán)輸入【】。
22.以下程序的功能是:將輸入的正整數(shù)按逆序輸出。例如:若輸入135,則輸出531,請(qǐng)?zhí)羁铡?/p>
#include<stdio.h>
main()
{intn,s;
printf("Enteranumber:");scanf("%d",&n);
printf("Output:");
do
{s=n%10;printf("%d",s);();}
while(n!=0);
printf("\n");
}
23.下面程序的運(yùn)行結(jié)果是()。
#defineEXCH(a,B){intt;t=a;a=b;b=t;}
main()
{intx=1,y=2;
EXCH(x,y);
printf("x=%d,y=%d\n",x,y);
}
24.將代數(shù)式轉(zhuǎn)換成程序設(shè)計(jì)中的表達(dá)式為【】。
25.設(shè)有下列的程序段;
charstr[]="Hello";
char*ptr;
ptr=str;
執(zhí)行上面的程序段后,*(ptr+5)的值為_(kāi)_____。
26.設(shè)一棵完全二叉樹(shù)共有700個(gè)結(jié)點(diǎn),則在該二叉樹(shù)中有【】個(gè)葉子結(jié)點(diǎn)。
27.以下程序從終端讀入數(shù)據(jù)到數(shù)組中,統(tǒng)計(jì)其中正數(shù)的個(gè)數(shù),并計(jì)算它們之和。請(qǐng)?zhí)羁铡?/p>
main()
{inti,a[20],sum,count;
sum=count=0;
for(i=0;i<20;i++)scanf("%d",【】);
for(i=0;i<20;i++)
{if(a[i]>0)
{count++;
sum+=【】;
}
}
printf("sum=%d,count=%d\n",sum,count);
}
28.以下程序的運(yùn)行結(jié)果是【】。
#defineMAX(a,b)(a>b?a:b)+1
main()
{inti=6,j=8,k;
printf("%d\n",MAX(i,j));
}
29.下列程序段的輸出結(jié)果是【】。
intn='c';
switch(n++)
{default:printf("error");break;
case'a':
case'A':
case'b':
case'B':printf("good");break;
case'c':case'C':printf(”pass");
case'd':case'D':printf(”warn");
}
30.當(dāng)所有結(jié)點(diǎn)的權(quán)值都相等時(shí),用這些結(jié)點(diǎn)構(gòu)造的二叉排序樹(shù)是【】。
31.以下程序中給指針p分配3個(gè)double型動(dòng)態(tài)內(nèi)存單元,請(qǐng)?zhí)羁铡?/p>
#include<stdllb.h>
main()
{double*p;
p=(double*)malloc(【】);
p[0]=1.5;p[1]=2.5;p[2]=3.5
printf("%f%f%f\n",p[0],p[1],p[2]);
}
32.在面向?qū)ο蟮某绦蛟O(shè)計(jì)中,類(lèi)描述的是具有相似性質(zhì)的一組【】。
33.以下程序的輸出結(jié)果是【】。
#include<stdio.h>
voidswap(int*a,int*b)
{int*t;
t=a;a=b;b=t;
}
main()
{inti=3,j=5,*p=&i,*q=&j;
swap(p,q);printf("%d%d\n",*p,*q);
}
34.下面程序執(zhí)行后輸出的結(jié)果是【】。
intm=13;
intfun(intx,inty)
{intm=3;
return(x*y-m);
}
main()
{inta=7,b=5;
printf("%d\n",fun(a,b)/m);
}
35.以下程序運(yùn)行后的輸出結(jié)果是【】。
#include<stdio.h>
main()
{inta,b,c;
a=25;b=025;e=0x25;
prinff("%d%d%d\n",a,h,c);
}
36.有如下程序段:
main(intargc,char*argv[])
{intn,i=0;
while(argv[1][i]!='\0')
{n=fun();i++;}
printf("%d\n",n*argc);
}
intfun()
{staticints=0;
s+=1;
returns;
}
假設(shè)程序經(jīng)編譯、連接后生成可執(zhí)行文件exam,exe,若鍵入如下命令行:
examl23<回車(chē)>
則運(yùn)行結(jié)果為【】。
37.C語(yǔ)言中用______表示邏輯值為“真”,用數(shù)字“0”表示邏輯值為“假”。
38.以下程序中函數(shù)fun的功能是:構(gòu)成一個(gè)如圖所示的帶頭結(jié)點(diǎn)的單向鏈表,在結(jié)點(diǎn)的數(shù)據(jù)域中放入了具有兩個(gè)字符的字符串。函數(shù)disp的功能是顯示輸出該單鏈表中所有結(jié)點(diǎn)中的字符串。請(qǐng)?zhí)羁胀瓿珊瘮?shù)disp。
#include<stdio.h>
typedefstructnode/*鏈表結(jié)點(diǎn)結(jié)構(gòu)*/
{charsub[3];
structnode*next;
}Node;
Nodefun(chars)/*建立鏈表*/
{……}
voiddisp(Node*h)
{Node*p;
p=h->next;
while(【】)
{printf("%s\n",P->sub);p=【】;}
}
main()
{Node*hd;
hd=fun();disp(hd);printf("\n");
}
39.以下程序的運(yùn)行結(jié)果是【】。
#include<stdio.h>
main()
{intfun();fun();}
fun()
{staticinta[3]={0,1,2};
inti;
for(i=0;i<3;i++)a[i]+=a[i];
for(i=0;i<3;i++)printf("%d,",a[i]);
printf("\n");}
40.以下程序運(yùn)行后的輸出結(jié)果是【】。
main()
{
chara[]="Language",b[]="Programe";
char,p1,*p2;
intk;
p1=a,p2=b;
for(k=0;k<=7;k++)
if*(p1+k)==*(p2+k))printf("%c",*(p1+k));
}
三、1.選擇題(20題)41.______是構(gòu)成C語(yǔ)言程序的基本單位。
A.函數(shù)B.過(guò)程C.子程序D.子例程
42.在關(guān)系數(shù)據(jù)庫(kù)中,用來(lái)表示實(shí)體之間聯(lián)系的是
A.樹(shù)結(jié)構(gòu)B.網(wǎng)結(jié)構(gòu)C.線(xiàn)性表D.二維表
43.以下程序的運(yùn)行結(jié)果是
intk=0;
voidfun(intm)
{m+=k;k+=m;printf("m=%dk=%d",m,k++);}
main()
{inti=4;
fun(i++);
printf("i=%dk=%d\n",i,k);
}
A.m=4k=5i=5k=5
B.m=4k=4i=5k=5
C.m=4k=4i=4k=5
D.m=4k=5i=4k=5
44.為了避免在嵌套的條件語(yǔ)句ifelse中產(chǎn)生二義性,C語(yǔ)言規(guī)定,else子句總是與()配對(duì)。
A.縮排位置相同ifB.其前面最近的ifC.其后面最近的ifD.同一行上的if
45.對(duì)下列二叉樹(shù)
進(jìn)行中序遍歷的結(jié)果是()。
A.ACBDFEGB.ACBDFGEC.ABDCGEFD.FCADBEG
46.設(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)
47.當(dāng)3.5in(英寸)軟盤(pán)的寫(xiě)保護(hù)窗口開(kāi)著時(shí),該軟盤(pán)()
A.只能寫(xiě)不能讀B.既能讀又能寫(xiě)C.只能讀不能寫(xiě)D.不能使用
48.設(shè)有如下程序段:intx=2002,y=2003;printf("%d\n",(x,y));則以下敘述中正確的是()。
A.輸出語(yǔ)句中格式說(shuō)明符的個(gè)數(shù)少于輸出項(xiàng)的個(gè)數(shù),不能正確輸出
B.運(yùn)行時(shí)產(chǎn)生出錯(cuò)信息
C.輸出值為2002
D.輸出值為2003
49.語(yǔ)句int(*ptr)()的含義是()。
A.ptr是一個(gè)返回值是血的函數(shù)
B.ptr是指向int型數(shù)據(jù)的指針變量
C.ptr是指向函數(shù)的指針,該函數(shù)返回一個(gè)血型數(shù)據(jù)
D.ptr是一個(gè)函數(shù)名,該函數(shù)的返回值是指向int型數(shù)據(jù)的指針
50.設(shè)有聲明語(yǔ)句chara='\72';,則變量a______。
A.包含1個(gè)字符B.包含2個(gè)字符C.包含3個(gè)字符D.聲明不合法
51.已知形成鏈表的存儲(chǔ)結(jié)構(gòu)如下圖所示,則下述類(lèi)型描述中的空白處應(yīng)填______。structlink{chardata;______;}node;
A.Structlinknext
B.link*next
C.structnextlink
D.Structlink*next
52.設(shè)Y為整型變量,A=1,A的地址為EF01;B=2,B的地址為EF02;執(zhí)行語(yǔ)句B=&A;Y=&b;后Y的值()。
A.1B.2C.EF01D.EF02
53.以下程序的輸出結(jié)果是______。#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
54.現(xiàn)有如下程序段#include"stdio.h"main(){intk[30]={12,324,45,6,768,98,21,34,453,456};intcount=0,i=0;while(k[i]){if(k[i]%2==0||k[i]%5==0)count++;i++;}printf("%d,%d\n",count,i);}則程序段的輸出結(jié)果為
A.7,8B.8,8C.7,10D.8,10
55.下列二維數(shù)組初始化語(yǔ)句中,不正確的是()。
A.intb[][2]={1,2,3,4,5,6,7};
B.intb[3][5]={0,0,0);
C.intb[][4]={{1,2},{3,4,5},{6)};
D.intb[3][2]={(1,2),(3,4),(5,6)};
56.以下變量x、y、z均為double類(lèi)型且已正確賦值,不能正確表示數(shù)學(xué)式子x/(y*z)的C語(yǔ)言表達(dá)式是______。
A.x/y*zB.x*(1/(y*z))C.x/y*1/zD.x/y/z
57.以下不能正確定義二維數(shù)組的選項(xiàng)是A.inta[2][2]={{1},{2}};
B.inta[][2]={1,2,3,4};
C.inta[2][2]={{1},2,3};
D.inta[2][]={{1,2},{3,4}};
58.下列程序的輸出結(jié)果是______。main(){intx=1,a=0,b=0;switch(x){case0:b++;case1:a++;case2:a++;b++;}printf("a=%d,b=%d\n",a,b);}
A.a=2,b=1B.a=1,b=1C.a=1,b=0D.a=2,b=2
59.若有說(shuō)明:inta[][3]={0,0};則不正確的敘述是()。
A.數(shù)組a的每個(gè)元素的初值都是0
B.數(shù)組a的第一維大小為1
C.數(shù)組a的行數(shù)為1
D.只有元素a[0][0]和a[0][1]可得到初值0,其余元素均得不到初值0
60.下列程序的輸出結(jié)果是______。main(){union}inta[2];longk;charc[4];}un,*sp=&un;sp->a[0]=0x39;sp->a[1]=0x38;printf("%1x\n",sp->k);}
A.3938B.3839C.390038D.380039
四、選擇題(20題)61.以下敘述中錯(cuò)誤的是()。A.算法正確的程序可以有零個(gè)輸出
B.算法正確的程序最終一定會(huì)結(jié)束
C.算法正確的程序可以有零個(gè)輸入
D.算法正確的程序?qū)τ谙嗤妮斎胍欢ㄓ邢嗤慕Y(jié)果
62.有以下程序
#include"stdio.h"
voidfun(int*a,int*b,intc)
{c=*a+*b;}
main()
{inta[2]={6,9},c=0;
fun(a,a+1,&c);
printf("%d\n",c);
}
程序輸出的結(jié)果是
A.6B.9
C.0D.15
63.以下程序中函數(shù)sCmp的功能是返回形參指針sl和s2所指字符串中較小字符串的首地址。
若運(yùn)行時(shí)依次輸入:abCd、abba和abC三個(gè)字符串,則輸出結(jié)果是()。
A.abCdB.abbaC.abCD.abCa
64.有以下結(jié)構(gòu)體說(shuō)明、變量定義和賦值語(yǔ)句
65.有下列程序段:intn,t=1,S=0;scanf("%d",&n);do{s=s+t;t=t-2;while(t!=n);為使此程序段不陷入循環(huán),從鍵盤(pán)輸入的數(shù)據(jù)應(yīng)該是()。A.任意正奇數(shù)B.任意負(fù)偶數(shù)C.任意正偶數(shù)D.任意負(fù)奇數(shù)
66.若有定義語(yǔ)句:“charS[3][10],(*k)[3],*p;”,則以下賦值語(yǔ)句正確的是()。
A.p=S;B.p=k;C.p=s[0];D.k=s;
67.
68.有以下程序:
程序運(yùn)行后的輸出結(jié)果是()。
A.a=2,b=2B.a=2,b=1C.a=1,b=1D.a=1,b=0
69.
70.下列敘述中錯(cuò)誤的是()。
A.列表框和組合框都有List屬性
B.列表框有Selected屬性,而組合框沒(méi)有
C.列表框和組合框都有Style屬性
D.組合框有Text屬性,而列表框沒(méi)有
71.設(shè)有如下定義:int(*ptr);則以下敘述中正確的是()。
A.ptr是指向一維組數(shù)的指針變量
B.ptr是指向int型數(shù)據(jù)的指針變量
C.ptr是指向函數(shù)的指針,該函數(shù)返回一個(gè)int型數(shù)據(jù)
D.ptr是一個(gè)函數(shù)名,該函數(shù)的返回值是指int型數(shù)據(jù)的指針
72.有以下程序:
程序運(yùn)行后的輸出結(jié)果是()。
A.1,2,3,0,0,0,0,0,0,0,
B.1,2,3,1,2,3,0,0,0,0,
C.123,0,0,0,0,123,0,0,0,0,
D.1,2,3,0,0,1,2,3,0,0,
73.有以下程序,程序中庫(kù)函數(shù)islower(ch)用以判斷ch中的字母是否為小寫(xiě)字母:
程序運(yùn)行后的輸出結(jié)果是()。
A.abcdEFg!B.AbCdEFg!C.abcdEFG!D.aBcDEFG!
74.以下程序段
75.在以下給出的表達(dá)式中,與while(E)中的(E)不等價(jià)的表達(dá)式是()。
76.設(shè)有定義:intm=0;。以下選項(xiàng)的四個(gè)表達(dá)式中與其他三個(gè)表達(dá)式的值不相同的是()。
A.++mB.m+=1C.m++D.m+1
77.下列數(shù)據(jù)結(jié)構(gòu)中,能用二分法進(jìn)行查找的是()。
A.順序存儲(chǔ)的有序線(xiàn)性表B.線(xiàn)性鏈表C.二叉鏈表D.有序線(xiàn)性鏈表
78.表達(dá)式a+=a-=a=9的值是()。
A.9B.-9C.18D.0
79.若有定義和語(yǔ)句:
int*(*pp),*P,a=20,b=10;
pp=&p;p=&a;p=&b;printf("%d,%d\n",*P,**PP);
則輸出結(jié)果是()。A.A.20,10B.20,20C.10,20D.10,10
80.在數(shù)據(jù)結(jié)構(gòu)中,與所使用的計(jì)算機(jī)無(wú)關(guān)的是數(shù)據(jù)的()。
A.存儲(chǔ)結(jié)構(gòu)B.物理結(jié)構(gòu)C.邏輯結(jié)構(gòu)D.物理和存儲(chǔ)結(jié)構(gòu)
五、程序改錯(cuò)題(1題)81.寫(xiě)出下列程序的運(yùn)行結(jié)果。
#include“stdio.h”
Main
{inta[]={1,2,3,-4,5};
intm,n,*p;p=&a[0];m=*(p+1);n=*(p+4);
printf(“%d%d%d”,*p,m,n);}
六、程序設(shè)計(jì)題(1題)82.從鍵盤(pán)上輸入9個(gè)數(shù),按3行3列的格式輸出。
參考答案
1.C
2.Ado-wlfile的功能是先執(zhí)行一次循環(huán)體,再判斷條件是否成立,當(dāng)x=-1時(shí),執(zhí)行do語(yǔ)句,x=x*x=1,接著執(zhí)行while后的表達(dá)式,其值為0,退出循環(huán),因此循環(huán)體只執(zhí)行了一次。
3.CC語(yǔ)言中,函數(shù)名也是一個(gè)指針,是函數(shù)的人口地址。使函數(shù)指針f指向函數(shù)fun的入口地址,直接將函數(shù)名fun賦給指針f即可。故本題答案為C選項(xiàng)。
4.A解析:在E-R圖中,用三種圖框分別表示實(shí)體、屬性和實(shí)體之間的聯(lián)系,其規(guī)定如下:用矩形框表示實(shí)體,框內(nèi)標(biāo)明實(shí)體名;用橢圓狀框表示實(shí)體的屬性,框內(nèi)標(biāo)明屬性名;用菱形框表示實(shí)體間的聯(lián)系,框內(nèi)標(biāo)明聯(lián)系名。所以,選項(xiàng)A正確。
5.A
6.C
7.D
8.B
9.CC。【解析】數(shù)據(jù)庫(kù)系統(tǒng)(DBS)由數(shù)據(jù)庫(kù)(DBS)、數(shù)據(jù)庫(kù)管理系統(tǒng)(DBMS)、數(shù)據(jù)庫(kù)管理員、硬件平臺(tái)和軟件平臺(tái)五個(gè)部分組成,可見(jiàn)DB和DBMS都是DBS的組成部分。
10.D數(shù)據(jù)的邏輯結(jié)構(gòu)是指數(shù)據(jù)元素之間的邏輯關(guān)系的數(shù)據(jù)結(jié)構(gòu)。數(shù)據(jù)的存儲(chǔ)結(jié)構(gòu)則是數(shù)據(jù)的邏輯結(jié)構(gòu)在計(jì)算機(jī)中的物理實(shí)現(xiàn),有時(shí)也稱(chēng)作數(shù)據(jù)的物理結(jié)構(gòu)。兩者的區(qū)別是數(shù)據(jù)的邏輯結(jié)構(gòu)只涉及到數(shù)據(jù)之間抽象的數(shù)學(xué)關(guān)系。存儲(chǔ)結(jié)構(gòu)則涉及到如何在計(jì)算機(jī)中通過(guò)對(duì)數(shù)據(jù)的物理存儲(chǔ)進(jìn)行組織來(lái)表達(dá)數(shù)據(jù)元素之間的邏輯關(guān)系。比如在線(xiàn)性表的順序存儲(chǔ)中是利用物理存儲(chǔ)空間上的連續(xù)性來(lái)表達(dá)線(xiàn)性表中數(shù)據(jù)的前后件關(guān)系;在線(xiàn)性表的鏈?zhǔn)酱鎯?chǔ)中是通過(guò)指針域構(gòu)成的邏輯鏈條來(lái)表達(dá)數(shù)據(jù)的前后件關(guān)系。一般的,一種數(shù)據(jù)的邏輯結(jié)構(gòu)對(duì)應(yīng)的物理實(shí)現(xiàn),即數(shù)據(jù)的存儲(chǔ)結(jié)構(gòu)不止一種。因此選項(xiàng)D正確。
11.Bdo…while循環(huán)的執(zhí)行過(guò)程如下:①執(zhí)行do后面的循環(huán)體中的語(yǔ)句。②計(jì)算while后一對(duì)圓括號(hào)中表達(dá)式的值。當(dāng)值為非0時(shí),轉(zhuǎn)去執(zhí)行步驟①;當(dāng)值為0時(shí),執(zhí)行步驟③。③退出do…while循環(huán)。對(duì)于本題變量i的初始值等于“0”,接著執(zhí)行do后面的循環(huán)體中的語(yǔ)句,輸出變量i的值0。再判斷while后面括號(hào)中表達(dá)式i十的值,其值為0,所以循環(huán)結(jié)束。.此時(shí)變量i的值經(jīng)過(guò)自加已經(jīng)變?yōu)?,所以再次輸出i的值“1”。
12.C
13.D在C語(yǔ)言中,數(shù)組元素的個(gè)數(shù)是確定的,不允許隨機(jī)變動(dòng),數(shù)組定義好后,它所能容納的元素的個(gè)數(shù)也就確定了,并且同一個(gè)數(shù)組中所有元素都是同一類(lèi)型。
14.D解析:算法分析是指對(duì)一個(gè)算法的運(yùn)行時(shí)間和占用空間做定量的分析,一般計(jì)算出相應(yīng)的數(shù)量級(jí),常用時(shí)間復(fù)雜度和空間復(fù)雜度表示。分析算法的目的就是要降低算法的時(shí)間復(fù)雜度和空間復(fù)雜度;提高算法的執(zhí)行效。率。
15.D解析:本題考查switch語(yǔ)句的掌握。必須撐握以下內(nèi)容:首先應(yīng)該明白switch語(yǔ)句的語(yǔ)法格式:
switch語(yǔ)句的語(yǔ)法格式為:
switch(表達(dá)式)
{
case常量表達(dá)式1:語(yǔ)句組1;
case常量表達(dá)式2:語(yǔ)句組2;
case常量表達(dá)式n:語(yǔ)句組n;
default:語(yǔ)句組n+1;
}
另外,以下幾點(diǎn)關(guān)于switch語(yǔ)句的重點(diǎn):
①系統(tǒng)在執(zhí)行時(shí)計(jì)算開(kāi)關(guān)表達(dá)式的值;②根據(jù)所得的值在各個(gè)case標(biāo)號(hào)表達(dá)式中尋找匹配,直到發(fā)現(xiàn)與表達(dá)式匹配的標(biāo)號(hào)(本例中匹配的是case\'B\':);\ue008③找\ue009到匹配后執(zhí)行后面相應(yīng)的語(yǔ)句表,順序往下執(zhí)行;④如果無(wú)相匹配的標(biāo)號(hào),若存在default標(biāo)號(hào),則執(zhí)行該語(yǔ)句標(biāo)號(hào)后面的語(yǔ)句表n+1;當(dāng)不存在default標(biāo)號(hào)時(shí),不執(zhí)行switch中的任何一個(gè)語(yǔ)句表。
一般而言,在多分支結(jié)構(gòu)中總會(huì)出現(xiàn)'意外'的情況,這時(shí)均可歸入default程序段,作統(tǒng)一的處理。default標(biāo)號(hào)是可選性的,不必每次都有,視需要而定。switch語(yǔ)句中還可以包含switch語(yǔ)句,形成switch的嵌套。
16.D解析:在C語(yǔ)言中,定義一維數(shù)組的語(yǔ)句一般形式如下:
類(lèi)型名數(shù)組名[常量表達(dá)式];
一維數(shù)組的引用形式為:數(shù)組名[下標(biāo)表達(dá)式]。count表示能被2整除或被5整除的個(gè)數(shù),i則計(jì)算有多少個(gè)數(shù)組元素。
17.C只有當(dāng)3個(gè)if條件同時(shí)成立,即能夠同時(shí)被2、3、7整除時(shí),才輸出i的值,而從0到50能夠同時(shí)被2、3、7整除的數(shù)只有42,故選擇c選鞏。
18.B
19.C解析:選項(xiàng)A),B)考查了多分支結(jié)構(gòu)的用法,選項(xiàng)A)中的程序段執(zhí)行時(shí),c<a,b<a條件均不成立,故執(zhí)行else后的語(yǔ)句,x值為3;選項(xiàng)B)中a<3條件成立,執(zhí)行x=3;而選項(xiàng)C),D)是單分支結(jié)構(gòu)的用法,選項(xiàng)C)中程序段執(zhí)行時(shí),a<3條件成立,x=3,但條件a<2也成立,此時(shí)執(zhí)行x=2,下一個(gè)條件不成立,不再執(zhí)行其后的語(yǔ)句。
20.A解析:維護(hù)是軟件生命周期的最后一個(gè)階段,也是持續(xù)時(shí)間最長(zhǎng)、付出代價(jià)最大的階段。軟件工程學(xué)的目的就在于提高軟件的可維護(hù)性,同時(shí)也要設(shè)法降低維護(hù)的代價(jià)。
軟件維護(hù)通常有以下四類(lèi);
①為糾正使用中出現(xiàn)的錯(cuò)誤而進(jìn)行的改正性維護(hù);
②為適應(yīng)環(huán)境變化而進(jìn)行的適應(yīng)性維護(hù);
③為改進(jìn)原有軟件而進(jìn)行的完善性維護(hù);
④為將來(lái)的可維護(hù)和可靠而進(jìn)行的預(yù)防性維護(hù)。
軟件維護(hù)不僅包括程序代碼的維護(hù),還包括文檔的維護(hù)。文檔可以分為用戶(hù)文檔和系統(tǒng)文檔兩類(lèi)。但無(wú)論是哪類(lèi)文檔,都必須與程序代碼同時(shí)維護(hù)。只有與程序代碼完全一致的文檔才有意義和價(jià)值。由此可知,本題中選項(xiàng)B、C、D中的說(shuō)法都是錯(cuò)誤的。
21.i=0j=20i=0,j=20解析:該函數(shù)的第一個(gè)參數(shù)是格式字符串,主要由兩類(lèi)字符組成,一類(lèi)是非格式符要求原樣輸入,一類(lèi)是格式符對(duì)應(yīng)要輸入的變量,所以說(shuō)本題中應(yīng)該原樣輸入i=,j=,后面分別給變量0和20,所以說(shuō)空格處應(yīng)該填入i=0,j=20。
22.n/=10n/=10解析:正整數(shù)按逆序輸出,即從低位到高位順序取出該正整數(shù)個(gè)數(shù)位的值輸出?!皊=n%10”為除10取余,第一次循環(huán)取出該正整數(shù)小數(shù)位,為順序移位,該空應(yīng)為n/=10。
23.x=2y=1
24.SQRT(x2+y2)/(a+b)
25.'\0''\\0'解析:本題涉及字符數(shù)組和指針的兩個(gè)知識(shí)點(diǎn):①在C語(yǔ)言中,字符型數(shù)組在存放字符串時(shí)會(huì)自動(dòng)在末尾加上字符串結(jié)束標(biāo)識(shí)符'\\0'所以題中數(shù)組str有6個(gè)元素。②ptr指向數(shù)組str的首地址,ptr+5是指向str[5],*(ptr+5)是引用str[5]的值,即'\\0'。
26.350350解析:在任意一棵二叉樹(shù)中,度為0的結(jié)點(diǎn)(即葉子結(jié)點(diǎn))總是比度為2的結(jié)點(diǎn)多一個(gè)。在根據(jù)完全二叉樹(shù)的定義,在一棵完全二叉樹(shù)中,最多有1個(gè)度為1的結(jié)點(diǎn)。因此,設(shè)一棵完全二叉樹(shù)具有n個(gè)結(jié)點(diǎn),若n為偶數(shù),則在該二叉樹(shù)中有n/2個(gè)葉子結(jié)點(diǎn)以及n/2-1個(gè)度為2的結(jié)點(diǎn),還有1個(gè)是度為1的結(jié)點(diǎn):若n為奇數(shù),則在該二叉樹(shù)中有[n/2]+1個(gè)葉子結(jié)點(diǎn)以及[n/2]個(gè)度為2的結(jié)點(diǎn),沒(méi)有度為1的結(jié)點(diǎn)。本題中,完全二叉樹(shù)共有700個(gè)結(jié)點(diǎn),700是偶數(shù),所以,在該二叉樹(shù)中有350個(gè)葉子結(jié)點(diǎn)以及349個(gè)度為2的結(jié)點(diǎn),還有1個(gè)是度為1的結(jié)點(diǎn)。所以,本題的正確答案為350。
27.&a[i]或a+ia[i]或*(a+i)&a[i]或a+i\r\na[i]或*(a+i)解析:主函數(shù)中一開(kāi)始定義了一個(gè)長(zhǎng)度為20的整型數(shù)組,然后通過(guò)一個(gè)循環(huán),循環(huán)20次給它的每個(gè)元素賦初值,所以在第一個(gè)空格處應(yīng)填各個(gè)元素的地址,即填&a[i]或a+i,然后再通過(guò)一個(gè)循環(huán)執(zhí)行20次,每循環(huán)一次,先判斷該循環(huán)是否大于0,如果大于0將其累加到變量sum中,所以第二個(gè)空格處應(yīng)該填入數(shù)組元素,所以應(yīng)該填a或*(a+i)。
28.99解析:本題考查宏定義與三目運(yùn)算符的綜合用法,宏定義是原樣替換,本題中,如果a>b成立,則a+1的值為整個(gè)表達(dá)式的值,否則為b+1的值為整個(gè)表達(dá)式的值,(應(yīng)注意后面的加1)。
29.passwarnpasswarn解析:n++是在執(zhí)行完其所在的語(yǔ)句后再加1,因此,在執(zhí)行case的時(shí)候,n的值依然為'c',執(zhí)行case'c'后面的語(yǔ)句,先打印出“pass”;在執(zhí)行完case'c'后,未遇到break跳出switch,便接著執(zhí)行下面的語(yǔ)句,又打印出warn。所以此題輸出結(jié)果是passwarn。
30.右子樹(shù)(單支樹(shù))右子樹(shù)(單支樹(shù))解析:二叉排序樹(shù)對(duì)于任意新結(jié)點(diǎn),若大于等于根結(jié)點(diǎn),則在右子樹(shù)上建立。
31.3*sizeof(double)3*sizeof(double)解析:malloc(size)函數(shù)用于申請(qǐng)動(dòng)態(tài)存儲(chǔ)空間,故應(yīng)填3個(gè)double型變量在內(nèi)存中所占的字節(jié)數(shù)。while循環(huán)的功能把字符從第二個(gè)元素開(kāi)始左移一位,并將原第一個(gè)元素賦給最后一個(gè)元素。
32.對(duì)象對(duì)象解析:將屬性、操作相似的對(duì)象歸為類(lèi),也就是說(shuō),類(lèi)是具有共同屬性、共同方法的對(duì)象的集合。
33.3535解析:函數(shù)swap(int*a,int*b)的功能是實(shí)現(xiàn)*a和*b中兩個(gè)數(shù)據(jù)的交換,在主函數(shù)中調(diào)用swap(p,q)后,形參指針變量a和b分別指向i和j,在swap(int*a,int*b)執(zhí)行完后,指針變量a和b分別指向j和i,而指針變量p,q所指向變量的值沒(méi)有發(fā)生變化,所以輸出結(jié)果為35。
34.22解析:本題變量m既是外部變量(值是13),又是fun函數(shù)的局部變量(值為3)。函數(shù)fun(x*y-m)的值為7*5-3=32,在main函數(shù)中,fun(a,b)/m中的m應(yīng)取外部變量的值13,因此輸出2。
35.252137252137解析:程序中變量a、b、c分別為十進(jìn)制、八進(jìn)制、十六進(jìn)制的數(shù)25,按%d格式輸出,a的輸出值為25;b=025轉(zhuǎn)換為十進(jìn)制數(shù)(b=2*8+5=16+5=21)輸出;c=0x25轉(zhuǎn)換為十進(jìn)制數(shù)(c=2*16+5=32+5=37)輸出。輸出結(jié)果為252137。
36.66解析:本題中命令行輸入2個(gè)符號(hào)串,所以argc=2,argv[0]指向符號(hào)串'exam',argv[1]指向符號(hào)串'123',while循環(huán)的作用是計(jì)算argv[1]所指向的字符串的長(zhǎng)度,執(zhí)行完while循環(huán)后n=3,所以n*argc=3×2=6。
37.非0非0解析:邏輯運(yùn)算中,非0表示邏輯“真”,用。表示邏輯“假”。
38.p!=NULLp->nextp!=NULL,p->next解析:考查了單鏈表的相關(guān)知識(shí)。NULL的ASCII碼的值和'\\0'的ASCII碼的值相等,條件到NULL停止循環(huán)。把下一個(gè)節(jié)點(diǎn)的地址賦給p,這樣循環(huán),節(jié)點(diǎn)可以依次向后取值。
39.0240480,2,4\r\n0,4,8解析:本題主要考查for循環(huán)語(yǔ)句的使用以及靜態(tài)局部變量的特點(diǎn)。
40.gaegae解析:本題定義了兩個(gè)字符串?dāng)?shù)組a[],b[],字符型指針變量p1和p2,且分別指向字符串?dāng)?shù)組a和b,抽打for循環(huán),當(dāng)if(*(p1+k)==*(p2+k))條件為真,執(zhí)行輸出*(p1+k)對(duì)應(yīng)的字符。即當(dāng)k=0時(shí),*(p1+k)對(duì)應(yīng)的字符串?dāng)?shù)組a中的字符L,*(p2+k)對(duì)應(yīng)的字符串?dāng)?shù)組b中字符P,因此if(*(p1+k)==*(p2+k))條件為假,不執(zhí)行printf語(yǔ)句,依此類(lèi)推,將字符串?dāng)?shù)組a和b中對(duì)應(yīng)位置上的字符——比較,如果對(duì)應(yīng)位置上的字符相同,則輸出該字符。
41.A解析:C程序是由函數(shù)構(gòu)成的?!獋€(gè)C源程序至少包含—個(gè)main函數(shù),也可以包含—個(gè)main函數(shù)和若干個(gè)其他函數(shù),因此,函數(shù)是C程序的基本單位。
42.D解析:在關(guān)系模型中,把數(shù)據(jù)看成一個(gè)二維表,每一個(gè)二維表稱(chēng)為一個(gè)關(guān)系。即關(guān)系模型是用表格數(shù)據(jù)來(lái)表示實(shí)體本身及其相互之間的聯(lián)系。本題的正確答案是D。
43.B解析:由于在main()函數(shù)中,變量i=4,所以就調(diào)用fun(4),則輸出“m=4k=4”。然后變量k增1等于5,變量i增1等于5,所以main()函數(shù)的“printf('i=%dk=%d\\n',i,k);”語(yǔ)句輸出“i=5k=5”。
44.B解析:本題考查ifelse語(yǔ)句。C語(yǔ)言規(guī)定,else總是與它前面的最近的if配對(duì)。
45.A解析:二叉樹(shù)的中序遍歷指在訪問(wèn)根結(jié)點(diǎn)、遍歷左子樹(shù)與遍歷右子樹(shù)這三者中,首先遍歷左子樹(shù),然后訪問(wèn)根結(jié)點(diǎn),最后遍歷右子樹(shù);并且遍歷左、右子樹(shù)時(shí),仍然先遍歷左子樹(shù),然后訪問(wèn)根結(jié)點(diǎn),最后遍歷右子樹(shù)。
46.D
47.C
48.D解析:本題考查逗號(hào)表達(dá)式。逗號(hào)表達(dá)式的形式為:表達(dá)式1,表達(dá)式2,其求解過(guò)程為:先求解表達(dá)式1,再求解表達(dá)式2。整個(gè)逗號(hào)表達(dá)式的值是表達(dá)式2的值。
49.C解析:本題考查的是指向函數(shù)的指針。函數(shù)指針定義的基本格式為:類(lèi)型標(biāo)識(shí)符(指針變量名)()?!邦?lèi)型標(biāo)識(shí)符”為函數(shù)返回值的類(lèi)型。
50.A解析:轉(zhuǎn)文字符常量'\\xx'可以把'\\'后面的數(shù)字轉(zhuǎn)換為對(duì)應(yīng)的ASCII字符。
51.D解析:在單向鏈表中,由于每個(gè)結(jié)點(diǎn)需要存儲(chǔ)下一個(gè)結(jié)點(diǎn)的地址,且下一個(gè)結(jié)點(diǎn)的數(shù)據(jù)類(lèi)型與前一個(gè)結(jié)點(diǎn)的數(shù)據(jù)類(lèi)型完全相同,故應(yīng)為structlink*next。
52.C
53.B解析:C語(yǔ)言在預(yù)編譯時(shí)遇到帶實(shí)參的宏名,則按命令行中指定的字符串從左到右進(jìn)行置換。在做這題時(shí),也不妨運(yùn)用置換法。得到a/=k+m*k+m/k+m*k+m=16/7=2。注:a為整型,所以在做除法,自動(dòng)取整。
54.D解析:在C語(yǔ)言中,定義一維數(shù)組的語(yǔ)句一般形式如下:
類(lèi)型名數(shù)組名[常量表達(dá)式];
一維數(shù)組的引用形式為:數(shù)組名[下標(biāo)表達(dá)式]。count表示能被2整除或被5整除的個(gè)數(shù),i則計(jì)算有多少個(gè)數(shù)組元素。
55.D解析:在對(duì)二維數(shù)組元素賦初值時(shí),可以只對(duì)部分元素賦初值,未賦初值的元素自動(dòng)取0;C語(yǔ)言規(guī)定,對(duì)于二維數(shù)組,只可以省略第1個(gè)方括號(hào)中的常量表達(dá)式,而不能省略第2個(gè)方括號(hào)中的常量表達(dá)式:賦的初值不能多于事先定義好的數(shù)組元素個(gè)數(shù)。
在選項(xiàng)D)賦值表達(dá)式中對(duì)每一維的元素賦初值應(yīng)用{},而不是()。
56.A解析:按照自左向右的運(yùn)算邏輯,選項(xiàng)A是先做x/y,然后再乘以x,顯然與題意不符。
57.D解析:選項(xiàng)A)定義的數(shù)組按行各數(shù)組元素分別是:1,0,2,0;選項(xiàng)B)定義的數(shù)組按行各數(shù)組元素分別是:1,2,3,4;選項(xiàng)C)定義的數(shù)組按行各數(shù)組元素分別是:1,0,2,3;因?yàn)槎x數(shù)組時(shí),第一維的長(zhǎng)度可以不指定,第二維的長(zhǎng)度必須指定,所以選項(xiàng)D)錯(cuò)。
58.A
59.D解析:本題考查給二維數(shù)組元素賦值。給二維數(shù)組元素賦值時(shí)應(yīng)注意下列兩點(diǎn):①在對(duì)二維數(shù)組元素賦初值時(shí),可以只對(duì)部分元素賦初值,未賦初值的元素自動(dòng)取0。②二維數(shù)組第一維的大小由下列規(guī)則確定;當(dāng)初值的個(gè)數(shù)能被第二維的常量表達(dá)式的值除盡時(shí),所得商數(shù)就是第一維的大小;當(dāng)初值的個(gè)數(shù)不能被第二維的常量表達(dá)式的值除盡時(shí),第一維的大小等于所得商數(shù)加1。
60.D解析:結(jié)構(gòu)體變量un的存儲(chǔ)情況如圖18-3所示,第一列表示地址,第二列為每個(gè)字節(jié)的值,可用兩位的十六進(jìn)制數(shù)表示,當(dāng)把這4個(gè)字節(jié)的內(nèi)容作為long型數(shù)據(jù)時(shí),高地址字節(jié)的值表示高位,低地址字節(jié)的值表示低位。
61.A算法有零個(gè)或多個(gè)輸入,有一個(gè)或多個(gè)輸出,所以A)錯(cuò)誤。
62.C函數(shù)的參數(shù)通常分為兩種:數(shù)值變量和指針變量。數(shù)值變量被函數(shù)調(diào)用后,函數(shù)內(nèi)的參數(shù)為該數(shù)值變量的副本。對(duì)副本的一切操作都不會(huì)影響到調(diào)用函數(shù)外原來(lái)的參數(shù)。指針變量在函數(shù)中傳遞的是對(duì)其存放地址的一份副本,該副本存放的地址與原來(lái)的指針?biāo)娴牡刂芬恢?。在函?shù)體內(nèi)修改指針存放的地址對(duì)應(yīng)的值與在函數(shù)體外對(duì)原參數(shù)的修改同樣有效,因?yàn)樵瓍?shù)也指向該地址。
題目中的程序包括主函數(shù)main和fun函數(shù),其中fun函數(shù)為void型,不需要fun函數(shù)返回值。fun函數(shù)的形參為2個(gè)整型指針變量和1個(gè)整型變量。在main函數(shù)中調(diào)用fun函數(shù),a為指向數(shù)組第一個(gè)數(shù)的地址,a+1指向數(shù)組第二個(gè)數(shù)的地址,變量c的初始值為0。雖然在fun函數(shù)中也有整型變量c,但是該變量的使用范圍為fun函數(shù),與main中的變量c沒(méi)有關(guān)系,有c=*a+*b,即c=15,但是main函數(shù)對(duì)fun函數(shù)的參數(shù)傳遞為數(shù)值變量,fun函數(shù)中變量c數(shù)值的改變不會(huì)影響main函數(shù)中變量c的數(shù)值改變,即主函數(shù)中變量c的值依然為0。
63.Bmain函數(shù)將輸入的三個(gè)字符串存在二維數(shù)組str中,并通過(guò)兩次streW函數(shù)調(diào)用,將最小的一個(gè)字符串復(fù)制到string中。abcd、abba、abc中最小的字符串為abba。
64.Aps一>age不是地址,不能用于scanf函數(shù)中。所以選擇A)。
65.D本題主要考查do—while循環(huán),因?yàn)樽兞縯的初始值等于1,經(jīng)過(guò)第一次do-while循環(huán)后,執(zhí)行t=t-1這條語(yǔ)句一次,所以變量t的值為-1,判斷關(guān)系表達(dá)式t!=n是否成立,如果關(guān)系表達(dá)式成立,則執(zhí)行第二次循環(huán),如果關(guān)系表達(dá)式不成立,退出循環(huán)。由此可見(jiàn),只要輸入變量n的值為負(fù)奇數(shù),則一定會(huì)使t==n成立,故退出do-while循環(huán)。
66.C答案C的意思是*P指向數(shù)組的第一個(gè)值。
67.D
68.BC88e常量表達(dá)式只是起語(yǔ)句標(biāo)號(hào)作用,并不是該處進(jìn)行條件判斷。在執(zhí)行switch語(yǔ)句時(shí),根據(jù)switch的表達(dá)式,找到與之匹配的Case語(yǔ)句,就從此case子句執(zhí)行下去,不在進(jìn)行判斷,直到碰到break或函數(shù)結(jié)束為止。所以執(zhí)行內(nèi)層switch(y)時(shí)只執(zhí)行了a++,此時(shí)a的值為1。然后執(zhí)行外層case2語(yǔ)句的a++;b++;a為2,b為1。所以結(jié)果為B。
69.A
70.BB。【解析】組合框和列表框都沒(méi)有selected屬性。
71.C本題中int(*ptr)的含義是指向函數(shù)的指針變量,其為指向函數(shù)的指針變量,該函數(shù)返回一個(gè)int型數(shù)據(jù),故選擇C選項(xiàng)。
72.D本題考查文件操作函數(shù),兩次fwrite后,幣文件中已經(jīng)寫(xiě)入l,2,3,O,0,l,2,3,0,0然后將文件幣中的內(nèi)容重新寫(xiě)人數(shù)組a中,最后輸出a為1。2,3,0,0,1,2,3,0,0,所以選項(xiàng)D正確。
73.D調(diào)用缸函數(shù)后,實(shí)參數(shù)組名sl傳給形參指針P,P也指向數(shù)組sl。m函數(shù)的功能是遍歷字符數(shù)組中的所有字符,如果某一個(gè)字符是空格并且前一個(gè)字符是小寫(xiě)字母的話(huà),就把前一個(gè)字符轉(zhuǎn)換為大寫(xiě)。程序中語(yǔ)句P[i一1]=P[i—1]一ga’+-A‘;即P[i一1]=P[i一1]一32,意思是將P[i一1]中的字符轉(zhuǎn)換為大寫(xiě)。因此D選項(xiàng)正確。
74.Aseanf中name得至lJLili,Rum得到l001,所以結(jié)果選擇A)。
75.Bwhile語(yǔ)句中條件表達(dá)式E的值不為0即為真,認(rèn)為滿(mǎn)足條件,所以與B選項(xiàng)中表達(dá)式的含義正好相反,選擇B選項(xiàng)。
76.C選項(xiàng)中的四個(gè)表達(dá)式執(zhí)行后,m的值都遞增1。選項(xiàng)c)中,表達(dá)式的值是m遞增前的值,為0。選項(xiàng)A)、B)、D)中,表達(dá)式的值都是m遞增后的值,為1。
77.A\r\n二分法又叫折半(對(duì)分)查找法,只適合于順序存儲(chǔ)的有序表(是指線(xiàn)性表中的元素按值非遞減排列)。二分法的基本思想是:設(shè)有序線(xiàn)性表的長(zhǎng)度為n,被查元素為X,則二分查找的方法如下:
將X與線(xiàn)性表的中間項(xiàng)進(jìn)行比較:若中間項(xiàng)的值等于x,則說(shuō)明找到,查找結(jié)束;若x小于中間項(xiàng)的值,則在線(xiàn)性表的前半部分(即中間項(xiàng)以前的部分)以相同的方法進(jìn)行查找;若X大于中間項(xiàng)的值,則在線(xiàn)性表的后半部分(即中間項(xiàng)以后的部分)以相同的方法進(jìn)行查找、這個(gè)過(guò)程-直進(jìn)行到查找成功或于表長(zhǎng)度為0,(說(shuō)明線(xiàn)性表中沒(méi)有這個(gè)元素為止)順序存儲(chǔ)的線(xiàn)性袁在計(jì)算機(jī)中-般用一個(gè)-維數(shù)組來(lái)表示,在數(shù)組中我們可以通過(guò)數(shù)組名和下標(biāo)來(lái)對(duì)數(shù)組中的任意一個(gè)元素進(jìn)行訪問(wèn),而在鏈表(不管是有序還是無(wú)序)中,要對(duì)元素進(jìn)行訪問(wèn)必須從表頭結(jié)點(diǎn)開(kāi)始,順著鏈條一個(gè)一個(gè)結(jié)點(diǎn)進(jìn)行搜索,因此選項(xiàng)A正確
78.D解析:+=、-=、=等符號(hào)優(yōu)先級(jí)相同結(jié)合性是由右至左,所以選D。
79.D本題考查指針變量的賦值。**PP是定義一個(gè)指針變量,語(yǔ)句pp=&p是將pp指向指針P,*P和**PP都是指針P所指的內(nèi)存空間的內(nèi)容,即b的值。
80.C解析:數(shù)據(jù)結(jié)構(gòu)概念一般包括3個(gè)方面的內(nèi)容,數(shù)據(jù)的邏輯結(jié)構(gòu)、存儲(chǔ)結(jié)構(gòu)及數(shù)據(jù)上的運(yùn)算集合。數(shù)據(jù)的邏輯結(jié)構(gòu)只抽象地反映數(shù)據(jù)元素之間的邏輯關(guān)系,而不管它在計(jì)算機(jī)中的存儲(chǔ)表示形式。
81.
82.\n#include'stdio.h'
\nmain
\n{inta[3][3],i,j,s=0;
\nfor(i=0;i<3;i++)
\nfor(j=0;j<3;j++)
\nscanf('%d',&a[i][j]);
\nfor(i=0;i<3;i++)
\n{for(j=0;j<3;j++)
\nprintf(“%d”,a[i][j]);
\nprintf(“\\n”);
\n}
\n}
\n2021-2022年遼寧省遼陽(yáng)市全國(guó)計(jì)算機(jī)等級(jí)考試C語(yǔ)言程序設(shè)計(jì)學(xué)校:________班級(jí):________姓名:________考號(hào):________
一、單選題(20題)1.
2.當(dāng)執(zhí)行以下程序段時(shí),()。x=-l:do{x=x*X;)while(!x);A.循環(huán)體將執(zhí)行一次B.循環(huán)體將執(zhí)行兩次C.循環(huán)體將執(zhí)行無(wú)限次D.系統(tǒng)將提示有語(yǔ)法錯(cuò)誤
3.設(shè)有函數(shù)說(shuō)明語(yǔ)句:intfun(int,int);以及函數(shù)指針定義語(yǔ)句:int(*f)(int,int);若要使函數(shù)指針指向函數(shù)fun的入口地址,以下選項(xiàng)中正確的是()。
A.f=fun();B.*f=fun;C.f=fun;D.*f=fun();
4.在E-R圖中,用來(lái)表示實(shí)體的圖形是______。A.矩形B.橢圓形C.菱形D.三角形
5.已知各變量的類(lèi)型說(shuō)明如下則以下符合C語(yǔ)言語(yǔ)法的表達(dá)式是()。A.a+=a-=(b=4)*(a=3)B.a=a*3=2C.x%(-3)D.y=f1oat(i)
6.用二分法查找一個(gè)長(zhǎng)度為10的,排好序的線(xiàn)性表,查找不成功時(shí),最多需要比較()次
A.5B.2C.4D.1
7.
8.
9.數(shù)據(jù)庫(kù)DB、數(shù)據(jù)庫(kù)系統(tǒng)DBS、數(shù)據(jù)庫(kù)管理系統(tǒng)DBMS之間的關(guān)系是()。
A.DB包括DBS和DBMSB.DBMS包括DB和DBSC.DBS包括DB和DBMSD.沒(méi)有任何關(guān)系
10.數(shù)據(jù)的存儲(chǔ)結(jié)構(gòu)是指()。
A.存儲(chǔ)在外存中的數(shù)據(jù)B.數(shù)據(jù)所占的存儲(chǔ)空間量C.數(shù)據(jù)在計(jì)算機(jī)中的順序存儲(chǔ)方式D.數(shù)據(jù)的邏輯結(jié)構(gòu)在計(jì)算機(jī)中的表示
11.若變量已正確定義,有以下程序段
A.0,0B.0,1C.1,1D.程序進(jìn)入無(wú)限循環(huán)
12.在存儲(chǔ)數(shù)據(jù)時(shí),通常不僅要存儲(chǔ)各數(shù)據(jù)元素的值,而且還要存儲(chǔ)()。
A.數(shù)據(jù)的處理方法B.數(shù)據(jù)元素的類(lèi)型C.數(shù)據(jù)元素之間的關(guān)系D.數(shù)據(jù)的存儲(chǔ)方法
13.下列說(shuō)法正確的是()。
A.在C語(yǔ)言中,可以使用動(dòng)態(tài)內(nèi)存分配技術(shù)定義元素個(gè)數(shù)可變的數(shù)組
B.在c語(yǔ)言中,數(shù)組元素的個(gè)數(shù)可以不確定,允許隨機(jī)變動(dòng)
C.在C語(yǔ)言中,數(shù)組元素的數(shù)據(jù)類(lèi)型可以不一致
D.在C語(yǔ)言中,定義一個(gè)數(shù)組后.就確定了它所容納的元素的個(gè)數(shù)
14.算法分析的目的是()。
A.找出數(shù)據(jù)結(jié)構(gòu)的合理性B.找出算法中輸入和輸出之間的關(guān)系C.分析算法的易懂性和可靠性D.分析算法的效率以求改進(jìn)
15.若運(yùn)行以下程序時(shí),從鍵盤(pán)輸入ADescriptor<CR>(<CR>表示回車(chē)),則下面程序的運(yùn)行結(jié)果是
#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
16.現(xiàn)有如下程序段#include"stdio.h"main(){intk[30]={12,324,45,6,768,98,21,34,453,456};intcount=0,i=0;while(k[i]){if(k[i]%2==0||k[i]%5==0)count++;i++;}printf("%d,%d\n",count,i);}則程序段的輸出結(jié)果為
A.7,8B.8,8C.7,10D.8,10
17.有以下程序:main(){intX,i;for(i=1;i<=50;i++){x=i;if(X%2=O)if(x%3=O)if(X%7=0)printf("%d,i)";}}輸出結(jié)果是()。A.28B.27C.42D.41
18.下面程序的輸出是()。A.17B.18C.23D.24
19.有定義語(yǔ)句:inta=1,b=2,c=3,x;,則以下選項(xiàng)中各程序段執(zhí)行后,x的值不為3的是A.if(c<a)x=1;elseif(b<a)x=2;elsex=3;
B.if(a<3)x=3;elseif(b<a)x=2;elsex=1;
C.if(a<3)x=3;if(a<2)x=2;if(a<1)x=1;
D.if(a<b)x=b;if(b<c)x=c;if(c<a)x=a;
20.下列敘述中,正確的是()
A.軟件交付使用后還需要進(jìn)行維護(hù)
B.軟件一旦交付使用就不需要再進(jìn)行維護(hù)
C.軟件交付使用后其生命周期就結(jié)束
D.軟件維護(hù)是指修復(fù)程序中被破壞的指令
二、2.填空題(20題)21.若有程序:
main()
{inti,j;
scanq("i=%d,j=%d",&i,&j);
printf("i=%d,j=%d\n",i,j);
}
要求給i賦10,給j賦20,則應(yīng)該從鍵盤(pán)輸入【】。
22.以下程序的功能是:將輸入的正整數(shù)按逆序輸出。例如:若輸入135,則輸出531,請(qǐng)?zhí)羁铡?/p>
#include<stdio.h>
main()
{intn,s;
printf("Enteranumber:");scanf("%d",&n);
printf("Output:");
do
{s=n%10;printf("%d",s);();}
while(n!=0);
printf("\n");
}
23.下面程序的運(yùn)行結(jié)果是()。
#defineEXCH(a,B){intt;t=a;a=b;b=t;}
main()
{intx=1,y=2;
EXCH(x,y);
printf("x=%d,y=%d\n",x,y);
}
24.將代數(shù)式轉(zhuǎn)換成程序設(shè)計(jì)中的表達(dá)式為【】。
25.設(shè)有下列的程序段;
charstr[]="Hello";
char*ptr;
ptr=str;
執(zhí)行上面的程序段后,*(ptr+5)的值為_(kāi)_____。
26.設(shè)一棵完全二叉樹(shù)共有700個(gè)結(jié)點(diǎn),則在該二叉樹(shù)中有【】個(gè)葉子結(jié)點(diǎn)。
27.以下程序從終端讀入數(shù)據(jù)到數(shù)組中,統(tǒng)計(jì)其中正數(shù)的個(gè)數(shù),并計(jì)算它們之和。請(qǐng)?zhí)羁铡?/p>
main()
{inti,a[20],sum,count;
sum=count=0;
for(i=0;i<20;i++)scanf("%d",【】);
for(i=0;i<20;i++)
{if(a[i]>0)
{count++;
sum+=【】;
}
}
printf("sum=%d,count=%d\n",sum,count);
}
28.以下程序的運(yùn)行結(jié)果是【】。
#defineMAX(a,b)(a>b?a:b)+1
main()
{inti=6,j=8,k;
printf("%d\n",MAX(i,j));
}
29.下列程序段的輸出結(jié)果是【】。
intn='c';
switch(n++)
{default:printf("error");break;
case'a':
case'A':
case'b':
case'B':printf("good");break;
case'c':case'C':printf(”pass");
case'd':case'D':printf(”warn");
}
30.當(dāng)所有結(jié)點(diǎn)的權(quán)值都相等時(shí),用這些結(jié)點(diǎn)構(gòu)造的二叉排序樹(shù)是【】。
31.以下程序中給指針p分配3個(gè)double型動(dòng)態(tài)內(nèi)存單元,請(qǐng)?zhí)羁铡?/p>
#include<stdllb.h>
main()
{double*p;
p=(double*)malloc(【】);
p[0]=1.5;p[1]=2.5;p[2]=3.5
printf("%f%f%f\n",p[0],p[1],p[2]);
}
32.在面向?qū)ο蟮某绦蛟O(shè)計(jì)中,類(lèi)描述的是具有相似性質(zhì)的一組【】。
33.以下程序的輸出結(jié)果是【】。
#include<stdio.h>
voidswap(int*a,int*b)
{int*t;
t=a;a=b;b=t;
}
main()
{inti=3,j=5,*p=&i,*q=&j;
swap(p,q);printf("%d%d\n",*p,*q);
}
34.下面程序執(zhí)行后輸出的結(jié)果是【】。
intm=13;
intfun(intx,inty)
{intm=3;
return(x*y-m);
}
main()
{inta=7,b=5;
printf("%d\n",fun(a,b)/m);
}
35.以下程序運(yùn)行后的輸出結(jié)果是【】。
#include<stdio.h>
main()
{inta,b,c;
a=25;b=025;e=0x25;
prinff("%d%d%d\n",a,h,c);
}
36.有如下程序段:
main(intargc,char*argv[])
{intn,i=0;
while(argv[1][i]!='\0')
{n=fun();i++;}
printf("%d\n",n*argc);
}
intfun()
{staticints=0;
s+=1;
returns;
}
假設(shè)程序經(jīng)編譯、連接后生成可執(zhí)行文件exam,exe,若鍵入如下命令行:
examl23<回車(chē)>
則運(yùn)行結(jié)果為【】。
37.C語(yǔ)言中用______表示邏輯值為“真”,用數(shù)字“0”表示邏輯值為“假”。
38.以下程序中函數(shù)fun的功能是:構(gòu)成一個(gè)如圖所示的帶頭結(jié)點(diǎn)的單向鏈表,在結(jié)點(diǎn)的數(shù)據(jù)域中放入了具有兩個(gè)字符的字符串。函數(shù)disp的功能是顯示輸出該單鏈表中所有結(jié)點(diǎn)中的字符串。請(qǐng)?zhí)羁胀瓿珊瘮?shù)disp。
#include<stdio.h>
typedefstructnode/*鏈表結(jié)點(diǎn)結(jié)構(gòu)*/
{charsub[3];
structnode*next;
}Node;
Nodefun(chars)/*建立鏈表*/
{……}
voiddisp(Node*h)
{Node*p;
p=h->next;
while(【】)
{printf("%s\n",P->sub);p=【】;}
}
main()
{Node*hd;
hd=fun();disp(hd);printf("\n");
}
39.以下程序的運(yùn)行結(jié)果是【】。
#include<stdio.h>
main()
{intfun();fun();}
fun()
{staticinta[3]={0,1,2};
inti;
for(i=0;i<3;i++)a[i]+=a[i];
for(i=0;i<3;i++)printf("%d,",a[i]);
printf("\n");}
40.以下程序運(yùn)行后的輸出結(jié)果是【】。
main()
{
chara[]="Language",b[]="Programe";
char,p1,*p2;
intk;
p1=a,p2=b;
for(k=0;k<=7;k++)
if*(p1+k)==*(p2+k))printf("%c",*(p1+k));
}
三、1.選擇題(20題)41.______是構(gòu)成C語(yǔ)言程序的基本單位。
A.函數(shù)B.過(guò)程C.子程序D.子例程
42.在關(guān)系數(shù)據(jù)庫(kù)中,用來(lái)表示實(shí)體之間聯(lián)系的是
A.樹(shù)結(jié)構(gòu)B.網(wǎng)結(jié)構(gòu)C.線(xiàn)性表D.二維表
43.以下程序的運(yùn)行結(jié)果是
intk=0;
voidfun(intm)
{m+=k;k+=m;printf("m=%dk=%d",m,k++);}
main()
{inti=4;
fun(i++);
printf("i=%dk=%d\n",i,k);
}
A.m=4k=5i=5k=5
B.m=4k=4i=5k=5
C.m=4k=4i=4k=5
D.m=4k=5i=4k=5
44.為了避免在嵌套的條件語(yǔ)句ifelse中產(chǎn)生二義性,C語(yǔ)言規(guī)定,else子句總是與()配對(duì)。
A.縮排位置相同ifB.其前面最近的ifC.其后面最近的ifD.同一行上的if
45.對(duì)下列二叉樹(shù)
進(jìn)行中序遍歷的結(jié)果是()。
A.ACBDFEGB.ACBDFGEC.ABDCGEFD.FCADBEG
46.設(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)
47.當(dāng)3.5in(英寸)軟盤(pán)的寫(xiě)保護(hù)窗口開(kāi)著時(shí),該軟盤(pán)()
A.只能寫(xiě)不能讀B.既能讀又能寫(xiě)C.只能讀不能寫(xiě)D.不能使用
48.設(shè)有如下程序段:intx=2002,y=2003;printf("%d\n",(x,y));則以下敘述中正確的是()。
A.輸出語(yǔ)句中格式說(shuō)明符的個(gè)數(shù)少于輸出項(xiàng)的個(gè)數(shù),不能正確輸出
B.運(yùn)行時(shí)產(chǎn)生出錯(cuò)信息
C.輸出值為2002
D.輸出值為2003
49.語(yǔ)句int(*ptr)()的含義是()。
A.ptr是一個(gè)返回值是血的函數(shù)
B.ptr是指向int型數(shù)據(jù)的指針變量
C.ptr是指向函數(shù)的指針,該函數(shù)返回一個(gè)血型數(shù)據(jù)
D.ptr是一個(gè)函數(shù)名,該函數(shù)的返回值是指向int型數(shù)據(jù)的指針
50.設(shè)有聲明語(yǔ)句chara='\72';,則變量a______。
A.包含1個(gè)字符B.包含2個(gè)字符C.包含3個(gè)字符D.聲明不合法
51.已知形成鏈表的存儲(chǔ)結(jié)構(gòu)如下圖所示,則下述類(lèi)型描述中的空白處應(yīng)填______。structlink{chardata;______;}node;
A.Structlinknext
B.link*next
C.structnextlink
D.Structlink*next
52.設(shè)Y為整型變量,A=1,A的地址為EF01;B=2,B的地址為EF02;執(zhí)行語(yǔ)句B=&A;Y=&b;后Y的值()。
A.1B.2C.EF01D.EF02
53.以下程序的輸出結(jié)果是______。#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
54.現(xiàn)有如下程序段#include"stdio.h"main(){intk[30]={12,324,45,6,768,98,21,34,453,456};intcount=0,i=0;while(k[i]){if(k[i]%2==0||k[i]%5==0)count++;i++;}printf("%d,%d\n",count,i);}則程序段的輸出結(jié)果為
A.7,8B.8,8C.7,10D.8,10
55.下列二維數(shù)組初始化語(yǔ)句中,不正確的是()。
A.intb[][2]={1,2,3,4,5,6,7};
B.intb[3][5]={0,0,0);
C.intb[][4]={{1,2},{3,4,5},{6)};
D.intb[3][2]={(1,2),(3,4),(5,6)};
56.以下變量x、y、z均為double類(lèi)型且已正確賦值,不能正確表示數(shù)學(xué)式子x/(y*z)的C語(yǔ)言表達(dá)式是______。
A.x/y*zB.x*(1/(y*z))C.x/y*1/zD.x/y/z
57.以下不能正確定義二維數(shù)組的選項(xiàng)是A.inta[2][2]={{1},{2}};
B.inta[][2]={1,2,3,4};
C.inta[2][2]={{1},2,3};
D.inta[2][]={{1,2},{3,4}};
58.下列程序的輸出結(jié)果是______。main(){intx=1,a=0,b=0;switch(x){case0:b++;case1:a++;case2:a++;b++;}printf("a=%d,b=%d\n",a,b);}
A.a=2,b=1B.a=1,b=1C.a=1,b=0D.a=2,b=2
59.若有說(shuō)明:inta[][3]={0,0};則不正確的敘述是()。
A.數(shù)組a的每個(gè)元素的初值都是0
B.數(shù)組a的第一維大小為1
C.數(shù)組a的行數(shù)為1
D.只有元素a[0][0]和a[0][1]可得到初值0,其余元素均得不到初值0
60.下列程序的輸出結(jié)果是______。main(){union}inta[2];longk;charc[4];}un,*sp=&un;sp->a[0]=0x39;sp->a[1]=0x38;printf("%1x\n",sp->k);}
A.3938B.3839C.390038D.380039
四、選擇題(20題)61.以下敘述中錯(cuò)誤的是()。A.算法正確的程序可以有零個(gè)輸出
B.算法正確的程序最終一定會(huì)結(jié)束
C.算法正確的程序可以有零個(gè)輸入
D.算法正確的程序?qū)τ谙嗤妮斎胍欢ㄓ邢嗤慕Y(jié)果
62.有以下程序
#include"stdio.h"
voidfun(int*a,int*b,intc)
{c=*a+*b;}
main()
{inta[2]={6,9},c=0;
fun(a,a+1,&c);
printf("%d\n",c);
}
程序輸出的結(jié)果是
A.6B.9
C.0D.15
63.以下程序中函數(shù)sCmp的功能是返回形參指針sl和s2所指字符串中較小字符串的首地址。
若運(yùn)行時(shí)依次輸入:abCd、abba和abC三個(gè)字符串,則輸出結(jié)果是()。
A.abCdB.abbaC.abCD.abCa
64.有以下結(jié)構(gòu)體說(shuō)明、變量定義和賦值語(yǔ)句
65.有下列程序段:intn,t=1,S=0;scanf("%d",&n);do{s=s+t;t=t-2;while(t!=n);為使此程序段不陷入循環(huán),從鍵盤(pán)輸入的數(shù)據(jù)應(yīng)該是()。A.任意正奇數(shù)B.任意負(fù)偶數(shù)C.任意正偶數(shù)D.任意負(fù)奇數(shù)
66.若有定義語(yǔ)句:“charS[3][10],(*k)[3],*p;”,則以下賦值語(yǔ)句正確的是()。
A.p=S;B.p=k;C.p=s[0];D.k=s;
67.
68.有以下程序:
程序運(yùn)行后的輸出結(jié)果是()。
A.a=2,b=2B.a=2,b=1C.a=1,b=1D.a=1,b=0
69.
70.下列敘述中錯(cuò)誤的是()。
A.列表框和組合框都有List屬性
B.列表框有Selected屬性,而組合框沒(méi)有
C.列表框和組合框都有Style屬性
D.組合框有Text屬性,而列表框沒(méi)有
71.設(shè)有如下定義:int(*ptr);則以下敘述中正確的是()。
A.ptr是指向一維組數(shù)的指針變量
B.ptr是指向int型數(shù)據(jù)的指針變量
C.ptr是指向函數(shù)的指針,該函數(shù)返回一個(gè)int型數(shù)據(jù)
D.ptr是一個(gè)函數(shù)名,該函數(shù)的返回值是指int型數(shù)據(jù)的指針
72.有以下程序:
程序運(yùn)行后的輸出結(jié)果是()。
A.1,2,3,0,0,0,0,0,0,0,
B.1,2,3,1,2,3,0,0,0,0,
C.123,0,0,0,0,123,0,0,0,0,
D.1,2,3,0,0,1,2,3,0,0,
73.有以下程序,程序中庫(kù)函數(shù)islower(ch)用以判斷ch中的字母是否為小寫(xiě)字母:
程序運(yùn)行后的輸出結(jié)果是()。
A.abcdEFg!B.AbCdEFg!C.abcdEFG!D.aBcDEFG!
74.以下程序段
75.在以下給出的表達(dá)式中,與while(E)中的(E)不等價(jià)的表達(dá)式是()。
76.設(shè)有定義:intm=0;。以下選項(xiàng)的四個(gè)表達(dá)式中與其他三個(gè)表達(dá)式的值不相同的是()。
A.++mB.m+=1C.m++D.m+1
77.下列數(shù)據(jù)結(jié)構(gòu)中,能用二分法進(jìn)行查找的是()。
A.順序存儲(chǔ)的有序線(xiàn)性表B.線(xiàn)性鏈表C.二叉鏈表D.有序線(xiàn)性鏈表
78.表達(dá)式a+=a-=a=9的值是()。
A.9B.-9C.18D.0
79.若有定義和語(yǔ)句:
int*(*pp),*P,a=20,b=10;
pp=&p;p=&a;p=&b;printf("%d,%d\n",*P,**PP);
則輸出結(jié)果是()。A.A.20,10B.20,20C.10,20D.10,10
80.在數(shù)據(jù)結(jié)構(gòu)中,與所使用的計(jì)算機(jī)無(wú)關(guān)的是數(shù)據(jù)的()。
A.存儲(chǔ)結(jié)構(gòu)B.物理結(jié)構(gòu)C.邏輯結(jié)構(gòu)D.物理和存儲(chǔ)結(jié)構(gòu)
五、程序改錯(cuò)題(1題)81.寫(xiě)出下列程序的運(yùn)行結(jié)果。
#include“stdio.h”
Main
{inta[]={1,2,3,-4,5};
intm,n,*p;p=&a[0];m=*(p+1);n=*(p+4);
printf(“%d%d%d”,*p,m,n);}
六、程序設(shè)計(jì)題(1題)82.從鍵盤(pán)上輸入
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年度茶樓與茶葉種植基地合作租賃協(xié)議4篇
- 2025年度拆除工程噪聲及揚(yáng)塵控制合同4篇
- 2025年度智能倉(cāng)儲(chǔ)廠房購(gòu)買(mǎi)及自動(dòng)化解決方案合同4篇
- 專(zhuān)屬2024版月餅銷(xiāo)售代理協(xié)議版B版
- 二零二五年度綠色能源項(xiàng)目商鋪?zhàn)赓U合同樣本2篇
- 2024物流企業(yè)融資租賃合同
- 2025年度廠房墻地磚節(jié)能減排改造項(xiàng)目合同3篇
- 2024版螺旋鋼管買(mǎi)賣(mài)合同書(shū)
- 2025年廠區(qū)光伏發(fā)電與配電一體化工程承包合同4篇
- 2024照明工程分包合同
- 長(zhǎng)鏈氯化石蠟
- 小學(xué)六年級(jí)數(shù)學(xué)解方程計(jì)算題
- 春節(jié)英語(yǔ)介紹SpringFestival(課件)新思維小學(xué)英語(yǔ)5A
- 進(jìn)度控制流程圖
- 2023年江蘇省南京市中考化學(xué)真題
- 【閱讀提升】部編版語(yǔ)文五年級(jí)下冊(cè)第四單元閱讀要素解析 類(lèi)文閱讀課外閱讀過(guò)關(guān)(含答案)
- 供電副所長(zhǎng)述職報(bào)告
- 現(xiàn)在完成時(shí)練習(xí)(短暫性動(dòng)詞與延續(xù)性動(dòng)詞的轉(zhuǎn)換)
- 產(chǎn)品質(zhì)量監(jiān)控方案
- 物業(yè)總經(jīng)理述職報(bào)告
- 新起點(diǎn),新發(fā)展心得體會(huì)
評(píng)論
0/150
提交評(píng)論