




版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
2021-2022年河南省焦作市全國(guó)計(jì)算機(jī)等級(jí)考試C語(yǔ)言程序設(shè)計(jì)學(xué)校:________班級(jí):________姓名:________考號(hào):________
一、單選題(20題)1.在數(shù)據(jù)管理技術(shù)的發(fā)展過(guò)程中,經(jīng)歷了人工管理階段、文件系統(tǒng)階段和數(shù)據(jù)庫(kù)系統(tǒng)階段。其中數(shù)據(jù)獨(dú)立性最高的階段是()。
A.數(shù)據(jù)庫(kù)系統(tǒng)B.文件系統(tǒng)C.人工管理D.數(shù)據(jù)項(xiàng)管理
2.軟件生命周期是指()。A.軟件產(chǎn)品從提出、實(shí)現(xiàn)、使用維護(hù)到停止使用退役的過(guò)程
B.軟件從需求分析、設(shè)計(jì)、實(shí)現(xiàn)到測(cè)試完成的過(guò)程
C.軟件的開(kāi)發(fā)過(guò)程
D.軟件的運(yùn)行維護(hù)過(guò)程
3.若有定義“doublea=22;inti=0,k=18;”,則不符合C語(yǔ)言規(guī)定的賦值語(yǔ)句是()。
A.i=(a+k)<=(i+k);B.i=a%11;C.a=a++,i++;D.i=!a;
4.有以下程序
#include<stdio.h>
voidfun(intP)
{intd=2;
P=d++;printf(“%d”,P);}
main()
{inta=1;
fun(A);prinff(“%.d\n”,A);}
程序運(yùn)行后的輸出結(jié)果是A.32B.12C.21D.22
5.有以下語(yǔ)句:intb;charc[10];,則正確的輸入語(yǔ)句是______。
A.scanf("%d%s",&b,&c);
B.scanf("%d%s",&b,c);
C.scanf("%d%s",b,c);
D.scanf("%d%s",b,&c);
6.下列描述中正確的是______。
A.軟件工程只是解決軟件項(xiàng)目的管理問(wèn)題
B.軟件工程主要解決軟件新產(chǎn)品的生產(chǎn)率問(wèn)題
C.軟件工程的主要思想是強(qiáng)調(diào)在軟件開(kāi)發(fā)過(guò)程中需要應(yīng)用工程化原則
D.軟件工程只是解決軟件開(kāi)發(fā)中的技術(shù)問(wèn)題
7.快速排序在_____情況下最易發(fā)揮其長(zhǎng)處。
A.被排序數(shù)據(jù)中含有多個(gè)相同排序碼
B.被排序數(shù)據(jù)已基本有序
C.被排序數(shù)據(jù)完全無(wú)序
D.被排序數(shù)據(jù)中最大值和最小值相差懸殊
8.下列關(guān)于邏輯運(yùn)算符兩側(cè)運(yùn)算對(duì)象的敘述中正確的是()。
A.只能是整數(shù)0或1B.只能是整數(shù)0或非0整數(shù)C.可以是結(jié)構(gòu)體類(lèi)型的數(shù)據(jù)D.可以是任意合法的表達(dá)式
9.若有定義“intx[10],*pt=x;”,則對(duì)x數(shù)組元素的引用正確的是()。
A.pt+3B.*&x[10]C.*(pt+10)D.*(x+3)
10.有以下程序:#include<stdio.h>#include<string.h>main(){chara[]=“TEXT”,*b=“++”,c[3]=“1”;printf(“%d,%d,”,strlen(a),sizeof(a));printf(“%d,%d,”,strlen(b),sizeof(b));printf(“%d,%d,\n”,strlen(c),sizeof(c));}程序運(yùn)行后的輸出結(jié)果是()。A.4,5,2,4,1,3,B.4,4,2,2,1,1,C.5,5,3,3,2,2,D.4,4,2,2,1,3
11.若有定義:Typedefint*T[10];T*a;則以下與上述定義中a類(lèi)型完全相同的是()。
A.int*a[10];
B.int**a[10];
C.int*(*a)[10];
D.int*a[][10];
12.下列標(biāo)識(shí)符不是關(guān)鍵字的是()。
A.breakB.charC.SwithchD.return
13.以下關(guān)于鏈?zhǔn)酱鎯?chǔ)結(jié)構(gòu)的敘述中,()是不正確的。
A.結(jié)點(diǎn)除自身信息外還包括指針域,因此存儲(chǔ)密度小于順序存儲(chǔ)結(jié)構(gòu)
B.邏輯上相鄰的結(jié)點(diǎn)物理上不必鄰接
C.可以通過(guò)計(jì)算直接確定第i個(gè)結(jié)點(diǎn)的存儲(chǔ)地址
D.插入、刪除運(yùn)算操作方便,不必移動(dòng)結(jié)點(diǎn)
14.在關(guān)系數(shù)據(jù)庫(kù)中,用來(lái)表示實(shí)體間聯(lián)系的是()。
A.網(wǎng)狀結(jié)構(gòu)B.樹(shù)狀結(jié)構(gòu)C.屬性D.二維表
15.下列敘述中正確的是()。
A.軟件測(cè)試應(yīng)該由程序開(kāi)發(fā)者來(lái)完成
B.程序經(jīng)調(diào)試后一般不需要測(cè)試
C.軟件維護(hù)只包括對(duì)程序代碼的維護(hù)
D.以上三種說(shuō)法都不對(duì)
16.
若輸入“abcdef”“abdef”,下述程序的輸出結(jié)果為()。
#include<stdio.h>
#include<string.h>
main
{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.-1B.0C."abcdef"D."abdef"
17.已知二叉樹(shù)后序遍歷序列是CDABE,中序遍歷序列是CADEB,它的前序遍歷序列是()
A.ABCDEB.ECABDC.EACDBD.CDEAB
18.有以下程序:#include<stdio.h>voidfun(doublex,double*y,double*z){*y=*y-1.0;*z=*z+x;}main(){doublea=2.5,b=9.0,*pa,*pb;pa=&a;pb=&b;fun(b-a,pa,pb);printf(“%f\n”,a);}程序運(yùn)行后的輸出結(jié)果是()。
A.8.000000B.9.000000C.1.500000D.10.500000
19.設(shè)有定義:“inta;floatb;”,執(zhí)行“scanf("%2d%f",&a,&b);”語(yǔ)句時(shí),若從鍵盤(pán)輸入876543.0<回車(chē)>,a和b的值分別是()。
A.876和543.000000
B.87和6.000000
C.87和543.000000
D.76和543.000000
20.
二、2.填空題(20題)21.以下程序運(yùn)行后的輸出結(jié)果是()。
main()
{inta=3,b=4,c=5,t=99;
if(b<a&&a<C)t=a;a=c;c=t;
if(a<c&&b<C)t=b;b=a;a=t;
printf("%d%d%d\n",a,b,A);
}
22.以下程序運(yùn)行后的輸出結(jié)果是【】。
main()
{charm;
m='B'+32;printf("%c\n",m);
}
23.若有語(yǔ)句
inti=-19,j=i%4;
printf("%d\n",j),
則輸出的結(jié)果是______。
24.若有定義inta[4][4]={1,2,3,4},{0},{4,6,8,10},{1,3,5,7}},則初始化后,a[1][1]得到的初值是______。
25.算法的復(fù)雜度主要包括空間復(fù)雜度和______復(fù)雜度。
26.有以下語(yǔ)句段
intnl=10,n2=20;
printf("______",n1,n2);
要求按以下格式輸出n1和n2的值,每個(gè)輸出行從第一列開(kāi)始,請(qǐng)?zhí)羁铡?/p>
n1=10
n2=20
27.最簡(jiǎn)單的交換排序方法是______。
28.下列程序的輸出結(jié)果是______。
#defineP(A)printf("%d,",(int)(A))
#definePRINT(A)P(A);printf("theend")
main()
{inti,a=0;
for(i=1;i<5.i++)
PRINT(a+i);
printf("\n");
}
29.下列程序的輸出結(jié)果是______。
#include<stdio.h>
main()
{intx=3,y=2,z=1;
if(x<y)
if(y<0)z=0;
elsez+=1;
printf("%d\n",z);
}
30.下列程序的輸出結(jié)果是______。
#include<stdio.h>
main()
{inta=2,b=-1,C=2;
if(a<B)
if(b<O)c=0;
elsec++;
printf("%d\n",C);
}
31.軟件的【】設(shè)計(jì)又稱(chēng)為總體結(jié)構(gòu)設(shè)計(jì),其主要任務(wù)是建立軟件系統(tǒng)的總體結(jié)構(gòu)。
32.在使用putchar和getchar函數(shù)處理字符時(shí),必須在程序的開(kāi)頭出現(xiàn)包含頭文件的命令行是【】。
33.結(jié)構(gòu)化程序設(shè)計(jì)方法的主要原則可以概括為自頂向下、逐步求精、______和限制使用goto語(yǔ)句。
34.下述函數(shù)用于統(tǒng)計(jì)一行字符中的單詞個(gè)數(shù),單詞之間用空格分隔。
word_num(str)
for(i=0;str[i]!=【】;i++)
if(【】='')word=0;
【】;
}
return(num);
}
35.關(guān)系模型的完整性規(guī)則是對(duì)關(guān)系的某種約束條件,包括實(shí)體完整性、______和自定義完整性。
36.若有如下程序:
main()
{inta[][2]={1,2,6,9,11},(*t)[2];
t=a;
printf("%d,%d\n",*(t[1]+1),(*t)[1]);
}
則程序運(yùn)行后輸出的結(jié)果是【】。
37.下列程序段的輸出結(jié)果是【】。
main()
{charb[]="Hello,you";
b[5]=0;
printf("%s\n",B);
}
38.閱讀下面程序,則執(zhí)行后的輸出結(jié)果是【】。
#include"stdio.h"
main()
{intx,y,z;
x=1;y=2;z=3;
if(x>y)if(x>z)printf("%d",x);
elseprintf("%d",y);
printf("%d\n",z);}
39.一個(gè)項(xiàng)目具有一個(gè)項(xiàng)目主管,一個(gè)項(xiàng)目主管可管理多個(gè)項(xiàng)目,則實(shí)體“項(xiàng)目主管”與實(shí)體“項(xiàng)目”的聯(lián)系屬于【】。
40.設(shè)有如下程序main(){intn1,n2;scanf(“%d”,&n2);while(n2!=0){n1=n2%10;n2=n2/10;printf(“%d”,n1);}}程序運(yùn)行后,如果從鍵盤(pán)上輸入1298,則輸出結(jié)果為
三、1.選擇題(20題)41.下列程序的輸出結(jié)果是()。#include<stdio.h>main(){charch[2][5]={"1234","5678"},*p[2];inti,j,s=0;for(i=0;i<2;i++)p[i]=ch[i];for(i=0;i<2;i++)for(j=0;p[i][j]>'\0';j+=2){s=p[i][j]-'0';printf("%d",s);}}
A.6357B.6135C.1357D.691357
42.下列有關(guān)數(shù)據(jù)庫(kù)的描述,正確的是______。
A.數(shù)據(jù)庫(kù)是一個(gè)DBF文件B.數(shù)據(jù)庫(kù)是一個(gè)關(guān)系C.數(shù)據(jù)庫(kù)是一個(gè)結(jié)構(gòu)化的數(shù)據(jù)集合D.數(shù)據(jù)庫(kù)是一組文件
43.設(shè)有數(shù)組定義:chararray[]="China";則數(shù)組array所占的空間為()個(gè)字節(jié)。
A.4B.5C.6D.7
44.函數(shù)ftell(fp)的作用是()。
A.得到fp所指向文件的當(dāng)前讀寫(xiě)位置B.初始化流式文件的位置指針C.移動(dòng)流式文件的位置指針D.以上答案均正確
45.設(shè)fp為指向某二進(jìn)制文件的指針,且已讀到此文件末尾,則函數(shù)feof(fp)的返回值為_(kāi)_____。A.EOFB.非0值C.0D.NULL
46.有以下程序main(){intm,n;printf("Enterm,n:");scanf("%d%d",&m,&n);while(m!=n){while(m>n)m-=n;while(n>m)n-=m;}printf("m=%d\n",m);}如果從鍵盤(pán)上輸入6514<回車(chē)>,則輸出結(jié)果為()
A.m=3B.m=2C.m=1D.m=0
47.以下不合法的字符常量是()。
A.'\018'B.'\"'C.'\\'D.'\xcc'
48.以下程序中調(diào)用scanf函數(shù)給變量a輸入數(shù)值的方法是錯(cuò)誤的,其錯(cuò)誤原因是main(){int*p,*q,a,b;p=&a;printf("inputa:");scanf("%d",*p);}
A.*p表示的是指針變量p的地址
B.*p表示的是變量a的值,而不是變量a的地址
C.*p表示的是指針變量p的值
D.*p只能用來(lái)說(shuō)明p是一個(gè)指針變量
49.設(shè)有以下程序段intx=0,s=0;while(!x!=0)s+=++x;printf("%d",s);則
A.運(yùn)行程序段后輸出0B.運(yùn)行程序段后輸出1C.程序段中的控制表達(dá)式是非法的D.程序段執(zhí)行無(wú)限次
50.下列關(guān)于隊(duì)列的敘述中正確的是______。A.在隊(duì)列中只能插入數(shù)據(jù)B.在隊(duì)列中只能刪除數(shù)據(jù)C.隊(duì)列是先進(jìn)先出的線性表D.隊(duì)列是先進(jìn)后出的線性表
51.下列敘述中,不屬于軟件需求規(guī)格說(shuō)明書(shū)的作用的是()
A.便于用戶,開(kāi)發(fā)人員進(jìn)行理解和交流
B.反映出用戶問(wèn)題的結(jié)構(gòu),可以作為軟件開(kāi)發(fā)工作的基礎(chǔ)和依據(jù)
C.作為確認(rèn)測(cè)試和驗(yàn)收的依據(jù)
D.便于開(kāi)發(fā)人員進(jìn)行需求分析
52.若有以下的定義和語(yǔ)句:main(){inta[4][3]*p[4],j;for(j=0;j<4;j++)p[j]=a[j];}則能表示數(shù)組元素的表達(dá)式是______。
A.*(p[1])B.a[4][3]C.a[1]D.*(p+4)[1]
53.以下敘述不正確的是
A.一個(gè)C源程序可由一個(gè)或多個(gè)函數(shù)組成
B.一個(gè)C源程序必須包含一個(gè)main函數(shù)
C.C程序的基本組成單位是函數(shù)
D.在C程序中,注釋說(shuō)明只能位于一條語(yǔ)句的后面
54.在嵌套使用if語(yǔ)句時(shí),C語(yǔ)言規(guī)定else總是A.和之前與其具有相同縮進(jìn)位置的if配對(duì)
B.和之前與其最近的if配對(duì)
C.和之前與其最近的且不帶else的if配對(duì)
D.和之前的第一個(gè)if配對(duì)
55.有以下程序:main(){intp[8]={11,12,13,14,15,16,17,18},i=0,j=0;while(i++<7)if(p[i]%2)j+=p[i];printf("%d\n",j);}程序運(yùn)行后的輸出結(jié)果是______。
A.42B.45C.56D.60
56.有以下程序:#include<stdio.h>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",hum[i][j]);printf("\n");}}若要按以下形式輸出數(shù)組右上半三角;1234678111216則在程序下劃線處應(yīng)填入的是()。
A.i-1B.iC.i+1D.4-i
57.下列語(yǔ)句中,正確的是______。
A.staticcharstr[]="China";
B.staticcharstr[];str="China";
C.staticcharstr1[5],str2[]={"China"};strl=str2;
D.staticcharstr1[],str2[];str2={"China"};strcpy(str1,str2);
58.以下定義語(yǔ)句中正確的是
A.inta=b=0;
B.charA=65+1,b='b';
C.floata=1,*b=&a,*c=&b;
D.doublea=0.0;b=1.1;
59.以下敘述正確的是()。
A.C語(yǔ)言中的文件是流式文件,因此只能順序存取數(shù)據(jù)
B.打開(kāi)一個(gè)已存在的文件并進(jìn)行了寫(xiě)操作后,原有文件中的全部數(shù)據(jù)必定被覆蓋
C.在一個(gè)程序中當(dāng)對(duì)文件進(jìn)行了寫(xiě)操作后,必須先關(guān)閉該文件然后再打開(kāi),才能讀到第一個(gè)數(shù)據(jù)
D.當(dāng)對(duì)文件的讀(寫(xiě))操作完成之后,必須將它關(guān)閉,否則可能導(dǎo)致數(shù)據(jù)丟失
60.若有說(shuō)明語(yǔ)句"inta;floatb;”,以下輸入語(yǔ)句正確的是()
A.scanf("%f%f",&a,&b);
B.scanf("%f%d",&a;&b);
C.scanf("%d,%f",&a,&b);
D.scanf("%6.2f%6.2f",&a,&b);
四、選擇題(20題)61.設(shè)有如下定義:
若要使P指向data中的n域,正確的賦值語(yǔ)句是()。
A.
B.
C.
D.
62.用樹(shù)形結(jié)構(gòu)來(lái)表示實(shí)體之間聯(lián)系的模型稱(chēng)為()。
A.關(guān)系模型B.層次模型C.網(wǎng)狀模型D.數(shù)據(jù)模型
63.若程序中定義了以下函數(shù)doublemyadd(doublea,doubleb){return(a+b);}并將其放在調(diào)用語(yǔ)句之后,則在調(diào)用之前應(yīng)該對(duì)該函數(shù)進(jìn)行說(shuō)明,以下選項(xiàng)中錯(cuò)誤的說(shuō)明是()A.doublemyadd(doublea,b);
B.doublemyadd(double,double);
C.doublemyadd(doubleb,doublea);
D.doublemyadd(doublex,doubley);
64.有以下程序:
#include<stdio.h>
main()
{inta,b,k,m,*pl,*p2;
k=1,m=8;
p1=&k,p2=&m;
a=/*pl-m;b=*p1+*p2+6;
printf("%d",a);printf("%d\n",b);
}
編譯時(shí)編譯器提示錯(cuò)誤信息,你認(rèn)為出錯(cuò)的語(yǔ)句是()。
A.a=/*pl-m;
B.b=*p1+*p2+6;
C.k=1,m=8;
D.pl=&k,p2-&m;
65.有以下程序:
當(dāng)運(yùn)行時(shí)輸入:a<回車(chē)>后,以下敘述正確的是()。
A.變量c1被賦予字符a,c2被賦予回車(chē)符
B.程序?qū)⒌却脩糨斎氲?個(gè)字符
C.變量c1被賦予字符a,c2中仍是原有字符2
D.變量c1被賦予字符a,c2中將無(wú)確定值
66.
當(dāng)c的值不為0時(shí),在下列選項(xiàng)中不能正確將c的值賦給變量a、b的是()。
A.c=b=a;B.(a=c)C.D.(b=c);E.(a=c)&&(b=c);F.a=c=b;
67.有以下程序:
程序運(yùn)行后的輸出結(jié)果是()。
A.1,2B.1,0C.3,2D.0,0
68.
已知有如下結(jié)構(gòu)體:
structsk
{inta;
floatb;
}data,*p;
若有P=&data,則對(duì)data的成員a引用正確的是()。
A.(*p).data.a(chǎn)B.(*p).a(chǎn);C.p->data.a(chǎn)D.p.data.a(chǎn)
69.下面函數(shù)的功能是()。
intfunc(char*x)
{char*y=x;
while(*y++);
return(y-x-1);
}
A.求字符串的長(zhǎng)度
B.比較兩個(gè)字符串的大小
C.將字符串x復(fù)制到字符串y
D.將字符串x連接到字符串y后面
70.語(yǔ)句“printf("akbre"\'hi\'y\\\bou\n")”;的輸出結(jié)果是()。
A.akbre\'hi\'y'\\\bou
B.a\bre\'hi\\y\bou
C.re'hi'you
D.abre'hi'y\bou
71.有以下程序程序運(yùn)托舌的輸出結(jié)果是()。
A.1,2B.1,0C.3,2D.0,0
72.數(shù)據(jù)流圖用于抽象描述一個(gè)軟件的邏輯模型,數(shù)據(jù)流圖由一些特定的圖符構(gòu)成。下列圖符名標(biāo)識(shí)的圖符不屬于數(shù)據(jù)流圖內(nèi)容的是
A.控制流B.加工C.?dāng)?shù)據(jù)存儲(chǔ)D.?dāng)?shù)據(jù)流
73.數(shù)據(jù)庫(kù)的故障恢復(fù)一般是由
A.?dāng)?shù)據(jù)流圖完成的B.?dāng)?shù)據(jù)字典完成的C.DBA完成的D.PAD圖完成
74.在滿足實(shí)體完整性約束的條件下()。
A.一個(gè)關(guān)系中廊該有一個(gè)或多個(gè)候選關(guān)鍵字
B.一個(gè)關(guān)系中只能有一個(gè)候選關(guān)鍵字
C.一個(gè)關(guān)系中必須有多個(gè)候選關(guān)鍵字
D.一個(gè)關(guān)系中可以沒(méi)有候選關(guān)鍵字
75.HTML是一種標(biāo)記語(yǔ)言,它是由()解釋執(zhí)行的。
A.不需要解釋B.WindowsC.瀏覽器D.標(biāo)記語(yǔ)言處理軟件
76.
77.以下程序的輸出結(jié)果是______。#definef(x)x*xmain(){inta=6,b=2,c;c=f(a)/f(b);printf("%d\n",c);}
A.9B.6C.36D.18
78.有以下函數(shù):
函數(shù)的功能是()。
A.將Y所指字符串賦給x所指存儲(chǔ)空間
B.查找x和y所指字符串中是否有
C.統(tǒng)計(jì)x和y所指字符串中最前面連續(xù)相同的字符個(gè)數(shù)
D.統(tǒng)計(jì)x和Y所指字符串中相同的字符個(gè)數(shù)
79.以下關(guān)于retllm語(yǔ)句的敘述中正確的是()。
A.一個(gè)自定義函數(shù)中必須有一條return語(yǔ)句
B.一個(gè)自定義函數(shù)中可以根據(jù)不同情況設(shè)置多條retum語(yǔ)句
C.定義成void類(lèi)型的函數(shù)中可以有帶返回值的return語(yǔ)句
D.沒(méi)有return語(yǔ)句的自定義函數(shù)在執(zhí)行結(jié)束時(shí)不能返回到調(diào)用處
80.
五、程序改錯(cuò)題(1題)81.下列給定的程序中,函數(shù)proc()的功能是:計(jì)算并輸出k以內(nèi)最大的10個(gè)能被13或17整除的自然數(shù)之和。k的值由主函數(shù)傳人,若k的值為600,則函數(shù)的值為5671。請(qǐng)修改程序中的錯(cuò)誤,使它能得出正確的結(jié)果。注意:不要改動(dòng)main()函數(shù),不得增行或刪行,也不得更改程序的結(jié)構(gòu)。試題程序:
六、程序設(shè)計(jì)題(1題)82.學(xué)生的記錄由學(xué)號(hào)和成績(jī)組成,M名學(xué)生的數(shù)據(jù)已在主函數(shù)中放人結(jié)構(gòu)體數(shù)組stu中,請(qǐng)編寫(xiě)函數(shù)proc,它的功能是:把指定分?jǐn)?shù)范圍之外的學(xué)生數(shù)據(jù)放在b所指的數(shù)組中,分?jǐn)?shù)范圍之外的學(xué)生人數(shù)由函數(shù)值返回。
例如,輸入的分?jǐn)?shù)是70和79,則應(yīng)當(dāng)把分?jǐn)?shù)低于70和高于79的學(xué)生數(shù)據(jù)輸出,不包含70分和79分的學(xué)生數(shù)據(jù)。主函數(shù)中把70放在low中,把79放在heigh中。
注意:部分源程序給出如下。
請(qǐng)勿改動(dòng)main函數(shù)和其他函數(shù)中的任何內(nèi)容,僅在函數(shù)proc的花括號(hào)中填人所編寫(xiě)的若干語(yǔ)句。
試題程序:
#include<stdio.h>
#defineM16
typedefstruct
{
charnum[10];
ints:
}
STREC;
intproc(STREC*a,STREC*b,int1,inth)
{}
voidmain
{
STRECstu[M]={{"GA005",55),{"GA003",96},
{"GA002",80),{"GA004",68),
{"GA001",88},{"GA007",74},
{"GA008",85),{"GA006",89},
{"GA015",90),{"GA013”,53),
{"GA012",66},{"GA014”,82),
{"GA011",73},{"GA017",69),
{"GA018",64),{"GA016",86}};
STRECh[M];
inti,n,low,heigh,t;
printf("Enter2integernumberlow&
heigh:");
scanf("%d%d",&low,&heigh);
if(heigh<low)’
{
t=heigh:
heigh=low;
low=t;
}
n=proc(stu,h,low,heigh);
printf("Thestudent’Sdataout
%d--%d:\n",low,heigh);
for(i=0;i<n;i++)
printf("%S%4d\n",h[i].num,h[i].s);
//輸出指定分?jǐn)?shù)范圍內(nèi)的學(xué)生記錄
printf("\n");
}
參考答案
1.A在數(shù)據(jù)管理技術(shù)的發(fā)展過(guò)程中,經(jīng)歷了人工管理階段、文件系統(tǒng)階段和數(shù)據(jù)庫(kù)系統(tǒng)階段。其中數(shù)據(jù)獨(dú)立性最高的階段是數(shù)據(jù)庫(kù)系統(tǒng)這一階段。數(shù)據(jù)庫(kù)系統(tǒng)階段用數(shù)據(jù)模型來(lái)表示復(fù)雜的數(shù)據(jù),有較高的數(shù)據(jù)獨(dú)立性。數(shù)據(jù)庫(kù)系統(tǒng)為用戶提供了方便的用戶接口,用戶既可使用查詢語(yǔ)言或終端命令操作數(shù)據(jù)庫(kù),也可以用程序方式來(lái)操作。數(shù)據(jù)庫(kù)管理系統(tǒng)提供了數(shù)據(jù)控制功能。
2.A通常,將軟件產(chǎn)品從提出、實(shí)現(xiàn)、使用維護(hù)到停止使用退役的過(guò)程稱(chēng)為軟件生命周期。也就是說(shuō),軟件產(chǎn)品從考慮其概念開(kāi)始,到該軟件產(chǎn)品不能使用為止的整個(gè)時(shí)期都屬于軟件生命周期。
3.B運(yùn)算符“%”為二元運(yùn)算符,具有左結(jié)合性,參與運(yùn)算的量均為整型。B選項(xiàng)中的變量a是double型,不符合規(guī)定。故本題答案為B選項(xiàng)。
4.C程序運(yùn)行后,首先輸出的是p的值,然后再輸出a的值。p=d++,得到p的值為d的初始值2;a的值不變,仍為1。
5.B解析:b是整型數(shù),在輸人語(yǔ)句中要加取地址符,而c是數(shù)組名,本身就是數(shù)組的首地址,因此不用加取地址符。
6.C解析:軟件工程是解決軟件項(xiàng)目的管理、軟件開(kāi)發(fā)過(guò)程中的技術(shù)、軟件產(chǎn)品的生產(chǎn)率等問(wèn)題,它的主要思想是強(qiáng)調(diào)在軟件開(kāi)發(fā)過(guò)程中需要應(yīng)用工程化原則。
7.C
8.D解析:邏輯運(yùn)算符兩側(cè)的運(yùn)算對(duì)象可以是任意合法的表達(dá)式。邏輯表達(dá)式的運(yùn)算結(jié)果或者為1(“真”),或者為0(“假”)。
9.D選項(xiàng)A中,“pt+3”使指針變量Pt移動(dòng)3個(gè)單元,指向第4個(gè)元素,不能正確引用。運(yùn)算符“*”與“&”放在一起,其作用相互抵消,且下標(biāo)10超出了數(shù)組下標(biāo)范圍,所以B選項(xiàng)錯(cuò)誤?!?(pt+i)”表示引用指針pt所指元素后的第i個(gè)元素,引用數(shù)組第11個(gè)元素,C選項(xiàng)錯(cuò)誤。故本題答案為D選項(xiàng)。
10.Asizeof是運(yùn)算符,計(jì)算數(shù)組、指針、類(lèi)型、對(duì)象、函數(shù)等所占的字節(jié)大小。strlen(*char)是函數(shù),參數(shù)必須是字符型指針(char*)。該函數(shù)的功能是:返回字符串的長(zhǎng)度,不包括字符串結(jié)束標(biāo)識(shí)?!皊izeof(a)”是求數(shù)組a所占空間的大小,包括字符串最后的‘\\0’。所以“sizeof(a)”=5,strlen遇到‘\\0’就結(jié)束,“strlen(a)”=4?!皊trier(b)”是指針指向的字符串長(zhǎng)度,“sizeof(b)”是指針的大小。“strlen(c)”是字符串的長(zhǎng)度,“sizeof(c)”是數(shù)組的長(zhǎng)度。因此,輸出結(jié)果是4,5,2,4,1,3,。故本題答案為A選項(xiàng)。
11.B由題意可知,T是一個(gè)數(shù)組指針,即int*[],所以使用T*a定義,可知a屬于int**[\n]類(lèi)型。本題答案為B選項(xiàng)。
12.C在C語(yǔ)言中,字母區(qū)分大小,所以break、char、return、switch都是C語(yǔ)言中的關(guān)鍵字,而Swithch不是。
13.C
14.D單一的數(shù)據(jù)結(jié)構(gòu)——關(guān)系,現(xiàn)實(shí)世界的實(shí)體以及實(shí)體間的各種聯(lián)系均用關(guān)系來(lái)表示。數(shù)據(jù)的邏輯結(jié)構(gòu)——二維表,從用戶角度,關(guān)系模型中數(shù)據(jù)的邏輯結(jié)構(gòu)是一張二維表。但是關(guān)系模型的這種簡(jiǎn)單的數(shù)據(jù)結(jié)構(gòu)能夠表達(dá)豐富的語(yǔ)義,描述出現(xiàn)實(shí)世界的實(shí)體以及實(shí)體間的各種關(guān)系。
15.D程序調(diào)試是由程序開(kāi)發(fā)者完成診斷和改正程序中的錯(cuò)誤的過(guò)程;軟件測(cè)試是由專(zhuān)門(mén)的測(cè)試人員完成,是發(fā)現(xiàn)錯(cuò)誤而執(zhí)行程序的過(guò)程;軟件維護(hù)是指軟件系統(tǒng)交付使用以后,為了改正錯(cuò)誤或滿足新的需要而修改軟件的過(guò)程,是軟件生存周期中非常重要的一個(gè)階段。
16.D
\n本題考查字符串比較函數(shù)strcmp(s1,s2),若s1>s2,則返回1;若s1=s2,則返回0;若s1<s2,則返回-1。字符串依次比較的是它們字符的ASCIl碼值。
\n
17.C由于后序遍歷的最后一個(gè)兒素為E,所以E為根結(jié)點(diǎn),所以它的前序遍歷的首個(gè)元素為E,敞排除A)和D)選項(xiàng)。由于中序遍歷中,元素B在元素根結(jié)點(diǎn)E自:J后面,所以B為二叉樹(shù)的右子樹(shù),并且該二叉樹(shù)右子樹(shù)只有一個(gè)兒素,所以前序遍歷的最后一個(gè)元素應(yīng)為B,故選項(xiàng)C)為正確選項(xiàng),即該二叉塒的前序遍歷序列是EACDB。
18.Cmain函數(shù)定義兩個(gè)double類(lèi)型的變量a、b,分別賦初值為2.5、9.0。另外定義兩個(gè)double類(lèi)型的指針變量pa、pb,其中pa指向a,pb指向b。然后將b-a、pa、pb傳給函數(shù)fun,此時(shí)x的值為6.5,y指向a,z指向b?!?y=*y-1.0;”是將變量a的值減去1.0賦給a,a的值為1.5;“*z=*z+x;”是將變量b的值加上6.5賦給b,b的值為15.5。fun函數(shù)執(zhí)行完畢后,輸出a的值為1.5。故本題答案為C選項(xiàng)。
19.B本題考查scanf函數(shù),輸入格式符%2d%f表示只接收了字符,其中a輸入的值為2位的十進(jìn)制整數(shù),即87,然后將緊接著的6賦給b,因?yàn)閎的值為單精度數(shù)在,即6.000000,故選擇B選項(xiàng)。
20.D
21.45994599解析:a、b、c的初值為3、4、5,t的初值為99,if語(yǔ)句的條件“b<a&&b<c”為假,不執(zhí)行“t=a;”,但緊隨其后的“a=c;c=t;”與此if語(yǔ)句無(wú)關(guān),仍被執(zhí)行。此時(shí)a的值為5,b的值仍是4,c的值為99。再執(zhí)行第二個(gè)if語(yǔ)句,由于此時(shí)“a<c&&b<c”為真,執(zhí)行“t=b;”,緊隨其后的“b=a;a=t;”與此if語(yǔ)句無(wú)關(guān),也被執(zhí)行。此時(shí)a的值為4,b的值是5,c的值為99。因此輸出結(jié)果是:4599。
22.BB解析:字符類(lèi)型的數(shù)據(jù)在內(nèi)存中以相應(yīng)的ASCII碼存放,另外,字符數(shù)據(jù)還可以作為整數(shù)參加運(yùn)算。格式控制參數(shù)中的格式字符用以指定輸出項(xiàng)的數(shù)據(jù)類(lèi)型和輸出格式,輸出字符與其對(duì)應(yīng)的輸出項(xiàng)的類(lèi)型要一致。本題中,“b”的ASCII碼為98,字符類(lèi)型m的ASCII碼為98+32=130,所以最后輸出為b。
23.-3-3解析:本題考核的知識(shí)點(diǎn)是運(yùn)算符“%’的應(yīng)用。該運(yùn)算符是求兩個(gè)數(shù)相除的余數(shù),其結(jié)果與被除數(shù)的符號(hào)一致,本題中“-19%4”的值為“-3”,所以說(shuō)空格處應(yīng)該填-3。
24.二維數(shù)組可以看成是按矩陣形式排列的,題目中給二維數(shù)組賦初值是按行分段賦值的,a[4][4]可以分解為4個(gè)一維數(shù)組,其數(shù)組名分別為a[O]、a[1]、a[2]、a[3],這4個(gè)一維數(shù)組都有4個(gè)元素,a[0]的元素為a[0][0]、a[0][1]、a[0][2]、a[0][3]。\r\n\r\n
25.時(shí)間時(shí)間解析:算法的復(fù)雜度主要指時(shí)間復(fù)雜度和空間復(fù)雜度。
26.n1=%d\nn2=%d\n或n1=%d\nn2=%d或n1=%2d\nn2=%2d\n或n1=%2d×nn2=%2dn1=%d\\nn2=%d\\n或n1=%d\\nn2=%d或n1=%2d\\nn2=%2d\\n或n1=%2d×nn2=%2d解析:printf函數(shù)有兩種參數(shù):格式控制參數(shù)和輸出項(xiàng)參數(shù),其中格式控制參數(shù)由兩種成分組成;格式說(shuō)明和普通字符,普通字符將被簡(jiǎn)單地復(fù)制顯示,格式說(shuō)明項(xiàng)將引起一個(gè)輸出參數(shù)項(xiàng)的轉(zhuǎn)換與顯示,它是由“%”引出并以一個(gè)類(lèi)型描述符結(jié)束的字符串。本題中,n1=和n2=就是普通字符,可以直接顯示,又因?yàn)閚1,n2為整數(shù),所以格式說(shuō)明項(xiàng)為%d,也可以在%與d之間加上域?qū)?,另外還要在每行輸出結(jié)束時(shí)加轉(zhuǎn)義字符\\n進(jìn)行換行。所以,應(yīng)填寫(xiě)n1=%d\\nn2=%d\\n,n或n1=%d\\nn2=%d或n1=%2d\\nn2=%2d\\n或n1=%2d\\nn2=%2d。
27.冒泡排序冒泡排序解析:交換排序是指借助數(shù)據(jù)元素之間的互相交換進(jìn)行排序的一種方法。冒泡排序是一種最簡(jiǎn)單的交換排序方法,它是通過(guò)相鄰元素之間的相互交換逐步將線性表變成有序。
28.1234theend1,2,3,4,theend解析:本題考查帶參數(shù)的宏的定義。第1次循環(huán),i=1時(shí),調(diào)用PRINT(1),P(1)輸出1;第2次循環(huán),i=2時(shí),調(diào)用PRINT(2),P(2)輸出2:第3次循環(huán),i=3時(shí),調(diào)用PRINT(3),P(3)輸出3:第4次循環(huán),i=4時(shí),調(diào)用PRINT(4),P(4)輸出4,theend。
29.11解析:ifelse語(yǔ)句的功能是:若表達(dá)式的值為真,執(zhí)行語(yǔ)句1,并跳過(guò)其他語(yǔ)句,執(zhí)行ifelse語(yǔ)句的下一條語(yǔ)句,若表達(dá)式的值為假,跳過(guò)語(yǔ)句1,執(zhí)行語(yǔ)句2,依次往下判斷。題中,x=3,y=2,第一個(gè)if語(yǔ)句的控制條件x<y就不滿足,又沒(méi)有與之配對(duì)的else語(yǔ)句,所以直接執(zhí)行printf語(yǔ)句,在整個(gè)過(guò)程中變量z的值都沒(méi)發(fā)生變化。
30.22解析:分析程序,a=2,b=-1,c=2時(shí),if語(yǔ)句的表達(dá)式a<b不成立,不再往下判斷,直接退出if語(yǔ)句,執(zhí)行后面的輸出語(yǔ)句,程序結(jié)束。在這個(gè)程序中a、b、c的值沒(méi)做任何改變。
31.概要概要
32.#include"stdio.h"#include'stdio.h'解析:使用putchar和getchar函數(shù)時(shí),必須在程序的開(kāi)頭出現(xiàn)包含頭文件#include'stdio.h'的命令行。putchar的函數(shù)調(diào)用形式為:putchar(字符變量或字符常量);getchar函數(shù)的調(diào)用形式為:變量=getchar();getchar后的一對(duì)圓括號(hào)內(nèi)沒(méi)有參數(shù),但這一對(duì)圓括號(hào)不可少。
33.模塊化模塊化
34.\O'或0或NULLstr[i]num++或num=num+1或num+=1\\O'或0或NULL\r\nstr[i]\r\nnum++或num=num+1或num+=1解析:觀察題目要求,可以知道以下幾點(diǎn):
①for循環(huán)的結(jié)束條件應(yīng)當(dāng)是:str[i]已是字符串的最后一個(gè)字符;
②str[i]代表字符串str中的第i+1個(gè)字符;
③整形變量num的值是要記錄的單詞的個(gè)數(shù)。
C語(yǔ)言中規(guī)定字符串的最后一個(gè)字符是一個(gè)隱含的字符串結(jié)束符“\\0”,所以在題中第一個(gè)空中應(yīng)填寫(xiě)“\\0”;題中第二個(gè)空應(yīng)填寫(xiě)“str[i]”,以判斷當(dāng)前位置的字符是否為空格;題中第三個(gè)空中應(yīng)當(dāng)填寫(xiě)“num++”,通過(guò)變量num的加1累加得到字符串中的單詞個(gè)數(shù)。
35.參照完整性參照完整性
36.929,2解析:本題開(kāi)始定義了一個(gè)int型二維數(shù)組a,并賦以5個(gè)初值,系統(tǒng)使數(shù)組的最高維為3,并讓a[0][0]=1,a[0][1]=2,a[1][0]=6,a[1][1]=9,a[2][0]=11,a[2][1]因?yàn)槌踔挡粔蚨跏蓟癁?。然后定義一個(gè)行指針t指向數(shù)組a的首地址,因?yàn)楸磉_(dá)式t[1]表示指向元素a[1][0]的int型指針,t[1]+1表示指向a[1][1]的int型指針,故*(t[1]+1)返回的是a[1][1]的值9。而*t表示指向元素a[0][0]的int型指針,故(*t)[1]返回的是a[0][1]的值2。所以正確答案應(yīng)該為9,2。
37.HelloHello解析:字符串中,數(shù)值0或符號(hào)'/0'表示字符串的結(jié)束。本題中,b[5]被賦了0值,表明字符串b的第六個(gè)字符就是結(jié)束標(biāo)志。因此,只輸出前五個(gè)字符,即Hello。
38.33解析:C語(yǔ)言的語(yǔ)法規(guī)定:else子句總是與前面最近的不帶else的if相結(jié)合。因?yàn)閤不大于y,所以執(zhí)行printf('%d\\n',z);語(yǔ)句。
39.一對(duì)多一對(duì)多解析:由于一個(gè)項(xiàng)目主管可以管理多個(gè)項(xiàng)目,而一個(gè)項(xiàng)目只能有一個(gè)項(xiàng)目主管,“項(xiàng)目主管”這個(gè)實(shí)體與“項(xiàng)目”這個(gè)實(shí)體的管理關(guān)系屬于一對(duì)多。
40.89218921
41.C解析:本題先將指針P指向二維數(shù)組ch[2][5],相當(dāng)于p[0]='1234',p[1]='5678',通過(guò)雙重for循環(huán),是要將p中的字符隔一個(gè)輸出一個(gè),通過(guò)s=p[i][j]-\'0\'這條語(yǔ)句是將所要輸出的字符轉(zhuǎn)換成相應(yīng)的十進(jìn)制數(shù)。
42.C解析:數(shù)據(jù)庫(kù)(Database,簡(jiǎn)稱(chēng)DB)是數(shù)據(jù)的集合,它具有統(tǒng)一的結(jié)構(gòu)形式并存放于統(tǒng)一的存儲(chǔ)介質(zhì)內(nèi),是多種應(yīng)用數(shù)據(jù)的集成,并可被各個(gè)應(yīng)用程序所共享。數(shù)據(jù)庫(kù)中的數(shù)據(jù)具有“集成”、“共事”之特點(diǎn)。
43.C解析:在定義字符數(shù)組用字符串常量進(jìn)行初始化時(shí),系統(tǒng)會(huì)自動(dòng)在結(jié)尾加'\\0'做結(jié)束標(biāo)志,所以數(shù)組array所占的空間為6個(gè)字節(jié)。
44.A解析:位置指針當(dāng)前值函數(shù)ftell()的基本調(diào)用格式為:ftell(fp)。
ftell()函數(shù)的參數(shù)說(shuō)明:“fp”是指向文件的文件型指針。
ftell函數(shù)的功能:得到fp所指向文件的當(dāng)前讀寫(xiě)位置,即位置指針的當(dāng)前值,如果函數(shù)的返回值為-1L,表示出錯(cuò)。
45.B(27)B)解析:函數(shù)feof的功能是:測(cè)試fp所指的文件的位置是否已達(dá)到文件尾,如果達(dá)到文件尾,則函數(shù)返回非0值,否則返回0,表示文件尚未結(jié)束。
46.C
47.A解析:C語(yǔ)言的字符常量是用單引號(hào)括起來(lái)的一個(gè)字符,如'a','A','?','S'等都是字符常量。除此之外,還允許用一個(gè)“\\”開(kāi)頭的字符序列,如'\\ddd'表示1到3位八進(jìn)制數(shù)所代表的字符,而八進(jìn)制是由0~7這幾個(gè)數(shù)字組成的,所以選項(xiàng)A)是不合法的字符常量。
48.B在本題中,題目告訴我們程序中調(diào)用scanf函數(shù)給變量a輸入數(shù)值的方法是錯(cuò)誤的,要求我們找出其錯(cuò)誤的原因,這是一類(lèi)錯(cuò)誤原因分析題。
在本題程序中,首先定義兩個(gè)整型指針變量p和q,然后定義兩個(gè)整型變量a和b,讓指針變量p執(zhí)行變量a,接著輸出提示語(yǔ)句“請(qǐng)輸入a”,執(zhí)行格式輸入語(yǔ)句scanf,由于輸入語(yǔ)句的輸入列表中給出的應(yīng)該是輸入的地址,即存放輸入數(shù)據(jù)的存儲(chǔ)地址,但在本題的輸入語(yǔ)句中給出的是*p,這表示一個(gè)數(shù)值,而非地址。因此,無(wú)法完成數(shù)據(jù)的輸入,若要完成輸入,可以將*p改為p。
根據(jù)上面的分析,我們可以知道本題程序出錯(cuò)的原因是*p表示的是變量a的值,而不是變量a的地址。因此本題正確答案選B。
49.B解析:本題考查while語(yǔ)句的使用。本題考查邏輯非運(yùn)算符和不等于運(yùn)算符的區(qū)別,邏輯非運(yùn)算符'!'的優(yōu)先級(jí)大于不等于運(yùn)算符'!='的優(yōu)先級(jí)。
50.C隊(duì)列是指允許在一端進(jìn)行插入、而在另一端進(jìn)行刪除的線性表,選項(xiàng)A和選項(xiàng)B錯(cuò)誤。允許插入的一端稱(chēng)為隊(duì)尾,允許刪除的一端稱(chēng)為隊(duì)頭。在隊(duì)列中,最先插入的元素將最先能夠被刪除,反之,最后插入的元素將最后才能被刪除。所以,隊(duì)列又稱(chēng)為“先進(jìn)先出”或“后進(jìn)后出”的線性表,它體現(xiàn)了“先來(lái)先服務(wù)”的原則,選項(xiàng)C正確,選項(xiàng)D錯(cuò)誤。
51.D解析:軟件需求規(guī)格說(shuō)明書(shū)SRS,SoftwareRequirementSpecification)是需求分析階段的最后成果,是軟件開(kāi)發(fā)中的重要文檔之一。它有以下幾個(gè)方面的作用,①便于用戶、開(kāi)發(fā)人員進(jìn)行理解和交流;②反映出用戶問(wèn)題的結(jié)構(gòu),可以作為軟件開(kāi)發(fā)工作的基礎(chǔ)和依據(jù);③作為確認(rèn)測(cè)試和驗(yàn)收的依據(jù)。
52.A解析:B項(xiàng)錯(cuò)在越界,下標(biāo)最大的元素只到a[3][2];C項(xiàng)錯(cuò)在a[1]只表示第2行;*(p+4)[1]的錯(cuò)誤也在于越界,p+4相當(dāng)于a[4],實(shí)際上是不存在的。
53.D解析:本題考查C語(yǔ)言的基本基礎(chǔ)知識(shí)。在C程序中,注釋用符號(hào)“/*”開(kāi)始,而以符號(hào)“*/”結(jié)束。程序的注釋可以放在程序的任何位置。通常將注釋放在程序的開(kāi)始,以說(shuō)明本程序的功能;或者放在程序的某個(gè)語(yǔ)句后面,以對(duì)此語(yǔ)句的功能進(jìn)行描述。無(wú)論將注釋放有何處,在程序進(jìn)行編譯時(shí),編譯程序不會(huì)處理注釋的內(nèi)容;且注釋內(nèi)容也不會(huì)出現(xiàn)在目標(biāo)程序中。
54.C解析:C語(yǔ)言的語(yǔ)法規(guī)定:else子句總是與前面最近的不帶else的if相結(jié)合,與書(shū)寫(xiě)格式無(wú)關(guān)。所以選項(xiàng)C)為正確答案。
55.A解析:本題考查while語(yǔ)句和if語(yǔ)句的嵌套,程序段實(shí)現(xiàn)的功能是將p[1]至p[7]中的奇數(shù)相加求和并輸出,j=13+15+17=45。
56.B解析:本程序?yàn)槎匮h(huán),外循環(huán)控制輸出數(shù)據(jù)的行數(shù),內(nèi)循環(huán)控制輸出數(shù)據(jù)的列數(shù)。本題需要輸出4行4列,外層循環(huán)語(yǔ)句for(i=0;i<4;i++)控制輸出4行,內(nèi)層的第一條for循環(huán)控制每行輸出的空格數(shù),第二條for循環(huán)用于控制每行的數(shù)字輸出,由于每一行的數(shù)字個(gè)數(shù)比前一行少1個(gè),所以內(nèi)層的第二條for循環(huán)每次循環(huán)的次數(shù)需要遞減1,那么j的初始值應(yīng)該遞增,因?yàn)榈谝恍休敵龅氖?個(gè)數(shù),所以空格中應(yīng)填i。
57.A
58.B解析:本題考查變量的定義方法。如果要一次進(jìn)行多個(gè)變量的定義,則在它們之間要用逗號(hào)隔開(kāi),因此選項(xiàng)A)和D)錯(cuò)誤。在選項(xiàng)C)中,變量c是一個(gè)浮點(diǎn)型指針,它只能指向一個(gè)浮點(diǎn)型數(shù)據(jù),不能指向指針變量b,故選項(xiàng)C)錯(cuò)誤。
59.D解析:C語(yǔ)言中的文件有兩種存取方式:順序存取和直接存取。文件打開(kāi)之后,就可以進(jìn)行讀寫(xiě)操作。讀寫(xiě)操作函數(shù)可以指定文件使用方式。在使用完一個(gè)文件后應(yīng)關(guān)閉它,以防誤操作。
60.C解析:說(shuō)明語(yǔ)句中變量a為整型,變量b為實(shí)型。選項(xiàng)A、B和D的格式控制中變量a的格式描述符為f,與定義的變量類(lèi)型不符,故選項(xiàng)A、B和D錯(cuò)誤。
61.C本題主要考查了結(jié)構(gòu)體變量引用成員數(shù)據(jù)的方法,主要有以下兩種:結(jié)構(gòu)體變量名.成員名或結(jié)構(gòu)體指針_>成員名。
62.B解析:在數(shù)據(jù)庫(kù)系統(tǒng)中,由于采用的數(shù)據(jù)模型不同,相應(yīng)的數(shù)據(jù)庫(kù)管理系統(tǒng)(DBMS)也不同。目前常用的數(shù)據(jù)模型有3種:層次模型、網(wǎng)狀模型和關(guān)系模型。在層次模型中,實(shí)體之間的聯(lián)系是用樹(shù)結(jié)構(gòu)來(lái)表示的,其中實(shí)體集(記錄型)是樹(shù)中的結(jié)點(diǎn),而樹(shù)中各結(jié)點(diǎn)之間的連線表示它們之間的關(guān)系。所以,本題的正確答案是B。
63.A解析:本題考核的知識(shí)點(diǎn)是函數(shù)聲明的應(yīng)用。函數(shù)聲明是對(duì)所用到的函數(shù)的特征進(jìn)行必要的聲明,編譯系統(tǒng)以函數(shù)聲明中給出的信息為依據(jù),對(duì)調(diào)用表達(dá)式進(jìn)行檢測(cè),以保證調(diào)用表達(dá)式與函數(shù)之間的參數(shù)正確傳遞。函數(shù)聲明的一般格式為:
類(lèi)型標(biāo)識(shí)符函數(shù)名(類(lèi)型標(biāo)識(shí)符形參…);
這些信息就是函數(shù)定義中的第一行的內(nèi)容。這里形參的名字是不重要的,重要的是類(lèi)型標(biāo)識(shí)符,函數(shù)聲明中也可以不寫(xiě)形參名只寫(xiě)該形參的聲明類(lèi)型,但不能只寫(xiě)形參名而不寫(xiě)該形參的類(lèi)型。本題中,選項(xiàng)A中doublemyadd(doublea,b),沒(méi)寫(xiě)出形參b的類(lèi)型,故選項(xiàng)A不正確。所以,4個(gè)選項(xiàng)中選項(xiàng)A符合題意。
64.A\n本題考查指針,pl=&k表示P指向k的地址,則*p=k,依次類(lèi)推,在對(duì)指針進(jìn)行賦值時(shí)沒(méi)有錯(cuò)誤。a=/*p+m賦值,在c語(yǔ)言中'/*'表示的注釋?zhuān)源鸢高x擇A。
\n
65.A本題考查的是輸入輸出函數(shù)。函數(shù)get.char的作用是從終端(或系統(tǒng)隱含指定的輸入設(shè)備)輸入一個(gè)字符,且只能接受一個(gè)字符(回車(chē)符也算是一個(gè)字符)。故本題中變量cl被賦予字符a,c2被賦予回車(chē)符。
66.C
\n選項(xiàng)A是先將a的值賦給變量b,再將變量b的值賦給變量c,不合題意;B選項(xiàng)中由于c的值不為0,在將c的值賦給變量a后,表達(dá)式a=c的值為1,不再對(duì)表達(dá)式b=c計(jì)算;對(duì)于c選項(xiàng),表達(dá)式a=c的值為1,再求表達(dá)式b=c的值為1,然后進(jìn)行邏輯與運(yùn)算;D選項(xiàng)將b的值賦給c后再賦給e,故選擇C選項(xiàng)。
\n
67.A首先打印b=a+b=1+0=1的值l,此時(shí)已給b賦值為1。然后打印a=2}b=2{1=2的值2。所以結(jié)果是1,2。
68.B
\n本題主要考查結(jié)構(gòu)指針:P=&data,訪問(wèn)結(jié)構(gòu)體的成員。它可以通過(guò)結(jié)構(gòu)變量訪問(wèn),即data,可以用等價(jià)的指針形式:(*p).a(chǎn)和P->a來(lái)訪問(wèn)結(jié)構(gòu)體變量中的成員。
\n
69.A首先將x指向的字符串的首地址賦給y,然后進(jìn)行掃描,知道遇到結(jié)束標(biāo)志0,y-x-1的意思就是求字符串的長(zhǎng)度,因?yàn)閥指向字符串的最后一個(gè)字符的下一位,而x指向字符的首地址。
70.C先輸出a、b表示退一格,當(dāng)執(zhí)行到:\b后,光標(biāo)往后退,接著輸出re'hi'y\(反斜杠后又加一個(gè)反斜杠的意思是要輸出一個(gè)反斜杠),此時(shí)又執(zhí)行:\b后,\就被ou覆蓋。
71.A首先打印b=a+b=1+0--1的值l,此時(shí)已給b賦值為l。然后打印a:2*b:2"1:2的值2。因此結(jié)果是1,2。
72.A數(shù)據(jù)流圖(DFD)是用來(lái)描繪系統(tǒng)的邏輯模型的,它以圖形的方式描繪數(shù)據(jù)在系統(tǒng)中流動(dòng)和處理的過(guò)程,反映系統(tǒng)必須完成的邏輯功能。
數(shù)據(jù)流圖的4種基本符號(hào)分別是數(shù)據(jù)的源點(diǎn)或終點(diǎn)、數(shù)據(jù)流、數(shù)據(jù)存儲(chǔ)和加工。
73.C數(shù)據(jù)庫(kù)的故障恢復(fù)是數(shù)據(jù)庫(kù)數(shù)據(jù)保護(hù)機(jī)制中的一種完整性控制。所有的系統(tǒng)都免不了會(huì)發(fā)生故障,其原因有可能是硬件失靈,有可能是軟件系統(tǒng)崩潰,也有可能是其他外界的原因。在系統(tǒng)發(fā)生故障后,要求DBMS要有一套發(fā)生故障后的數(shù)據(jù)恢復(fù)機(jī)構(gòu)來(lái)保證數(shù)據(jù)庫(kù)能夠恢復(fù)到一致的、正確的狀態(tài),這就是數(shù)據(jù)庫(kù)的故障恢復(fù)。
在本題給出的四個(gè)選項(xiàng)中,數(shù)據(jù)流圖用來(lái)描繪系統(tǒng)的邏輯模型,它以圖形的方式描繪數(shù)據(jù)在系統(tǒng)中流動(dòng)和處理的過(guò)程,反映系統(tǒng)必須完成的邏輯功能。
數(shù)據(jù)字典是關(guān)于數(shù)據(jù)信息的集合,也就是對(duì)數(shù)據(jù)流圖中包含的所有元素定義的集合,是對(duì)數(shù)據(jù)流圖進(jìn)行補(bǔ)充。
DBA即數(shù)據(jù)庫(kù)管理員,它的工作主要有數(shù)據(jù)庫(kù)安裝、數(shù)據(jù)庫(kù)配置和管理、權(quán)限設(shè)置和安全管理、監(jiān)控和性能調(diào)節(jié)、備份和恢復(fù)等。
PAD圖即問(wèn)題分析圖,是一種程序結(jié)構(gòu)可見(jiàn)性好、結(jié)構(gòu)唯一、易于編制、易于檢查和易于修改的詳細(xì)設(shè)計(jì)表現(xiàn)方法。
根據(jù)上面的分析,我們可以知道數(shù)據(jù)庫(kù)的故障恢復(fù)是由數(shù)據(jù)庫(kù)管理員來(lái)完成的。因此,本題的正確答案是C。
74.A實(shí)體完整性約束要求關(guān)系的主鍵中屬性值不能為空值,因此本題答案為A)。
75.C
76.A
77.C解析:觀察程序段可知,對(duì)帶參數(shù)的宏的展開(kāi)只是將語(yǔ)句中的宏名后面括號(hào)內(nèi)的實(shí)參字符串代替#define命令行中的形參。本題中c=f(a)/f(b)用#definef(x)x*x代替得c=f(6)/f(2),即c=6*6/2*2,結(jié)果為36。
78.C本題中由循環(huán)條件可知遇到‘\0’或x與y所指的字符的值不等中的一個(gè)條件時(shí)就結(jié)束,所以功能是統(tǒng)計(jì)x和Y所指字符串中最前面連續(xù)相同的字符個(gè)數(shù)。
79.B在函數(shù)中允許有多個(gè)IettLrll語(yǔ)句,但每次調(diào)用只能有一個(gè)return語(yǔ)句被執(zhí)行,因此只能返回一個(gè)函數(shù)值。定義成void類(lèi)型的函數(shù),不允許從該函數(shù)取得返回值,也不允許使用return語(yǔ)句,c選項(xiàng)描述錯(cuò)誤。沒(méi)有return語(yǔ)句的函數(shù)在執(zhí)行到函數(shù)的最后一條語(yǔ)句后會(huì)自動(dòng)返回到調(diào)用處,A、D選項(xiàng)描述錯(cuò)誤。因此B選項(xiàng)正確。
80.B
81.(1)錯(cuò)誤:if((k%13=0)||(k%17=0))
正確:if((k%13==0)||(k%17==0))
(2)錯(cuò)誤:缺少大括號(hào)
正確:在“k-=;”后加}
【解析】題目中要求能被13或17整除的自然數(shù),判斷整除條件是取余恒等于0,判斷相等的符號(hào)應(yīng)該用“==”,符號(hào)“=”是賦值符號(hào),因此“=”應(yīng)改為“==”;在C語(yǔ)言中,括號(hào)一定是成對(duì)出現(xiàn)的,因此,在語(yǔ)句“k——;”后要加上符號(hào)“}”。
82.\n\tintproc(STREC*a,STREC*b,intl,inth)\n\n\n\t{\n\n\n\tinti,j=0;\n\n\n\tfor(i=0;i<M;i++)\n\n\n\tif((a[i].s>=0&&a[i].s<1)||(a[i].s>h&&a\n\n\n\t[i].s<=l00))
//通過(guò)if語(yǔ)句,來(lái)判斷指定范圍\n\n\n\t之外的數(shù)\n\n\n\tb[j++]=a[i];//放到b數(shù)組中\(zhòng)n\n\n\treturnj;//最后把其個(gè)數(shù)返回到主函數(shù)中\(zhòng)n\n\n\t}\n\n\n\t【解析】題目要求把指定范圍之外的數(shù)放到b中,將每一個(gè)學(xué)生的成績(jī)與指定的成績(jī)相比較,將符合條件的學(xué)生成績(jī)放在數(shù)組b中,并將符合要求的學(xué)生個(gè)數(shù)返回給主函數(shù)。\n2021-2022年河南省焦作市全國(guó)計(jì)算機(jī)等級(jí)考試C語(yǔ)言程序設(shè)計(jì)學(xué)校:________班級(jí):________姓名:________考號(hào):________
一、單選題(20題)1.在數(shù)據(jù)管理技術(shù)的發(fā)展過(guò)程中,經(jīng)歷了人工管理階段、文件系統(tǒng)階段和數(shù)據(jù)庫(kù)系統(tǒng)階段。其中數(shù)據(jù)獨(dú)立性最高的階段是()。
A.數(shù)據(jù)庫(kù)系統(tǒng)B.文件系統(tǒng)C.人工管理D.數(shù)據(jù)項(xiàng)管理
2.軟件生命周期是指()。A.軟件產(chǎn)品從提出、實(shí)現(xiàn)、使用維護(hù)到停止使用退役的過(guò)程
B.軟件從需求分析、設(shè)計(jì)、實(shí)現(xiàn)到測(cè)試完成的過(guò)程
C.軟件的開(kāi)發(fā)過(guò)程
D.軟件的運(yùn)行維護(hù)過(guò)程
3.若有定義“doublea=22;inti=0,k=18;”,則不符合C語(yǔ)言規(guī)定的賦值語(yǔ)句是()。
A.i=(a+k)<=(i+k);B.i=a%11;C.a=a++,i++;D.i=!a;
4.有以下程序
#include<stdio.h>
voidfun(intP)
{intd=2;
P=d++;printf(“%d”,P);}
main()
{inta=1;
fun(A);prinff(“%.d\n”,A);}
程序運(yùn)行后的輸出結(jié)果是A.32B.12C.21D.22
5.有以下語(yǔ)句:intb;charc[10];,則正確的輸入語(yǔ)句是______。
A.scanf("%d%s",&b,&c);
B.scanf("%d%s",&b,c);
C.scanf("%d%s",b,c);
D.scanf("%d%s",b,&c);
6.下列描述中正確的是______。
A.軟件工程只是解決軟件項(xiàng)目的管理問(wèn)題
B.軟件工程主要解決軟件新產(chǎn)品的生產(chǎn)率問(wèn)題
C.軟件工程的主要思想是強(qiáng)調(diào)在軟件開(kāi)發(fā)過(guò)程中需要應(yīng)用工程化原則
D.軟件工程只是解決軟件開(kāi)發(fā)中的技術(shù)問(wèn)題
7.快速排序在_____情況下最易發(fā)揮其長(zhǎng)處。
A.被排序數(shù)據(jù)中含有多個(gè)相同排序碼
B.被排序數(shù)據(jù)已基本有序
C.被排序數(shù)據(jù)完全無(wú)序
D.被排序數(shù)據(jù)中最大值和最小值相差懸殊
8.下列關(guān)于邏輯運(yùn)算符兩側(cè)運(yùn)算對(duì)象的敘述中正確的是()。
A.只能是整數(shù)0或1B.只能是整數(shù)0或非0整數(shù)C.可以是結(jié)構(gòu)體類(lèi)型的數(shù)據(jù)D.可以是任意合法的表達(dá)式
9.若有定義“intx[10],*pt=x;”,則對(duì)x數(shù)組元素的引用正確的是()。
A.pt+3B.*&x[10]C.*(pt+10)D.*(x+3)
10.有以下程序:#include<stdio.h>#include<string.h>main(){chara[]=“TEXT”,*b=“++”,c[3]=“1”;printf(“%d,%d,”,strlen(a),sizeof(a));printf(“%d,%d,”,strlen(b),sizeof(b));printf(“%d,%d,\n”,strlen(c),sizeof(c));}程序運(yùn)行后的輸出結(jié)果是()。A.4,5,2,4,1,3,B.4,4,2,2,1,1,C.5,5,3,3,2,2,D.4,4,2,2,1,3
11.若有定義:Typedefint*T[10];T*a;則以下與上述定義中a類(lèi)型完全相同的是()。
A.int*a[10];
B.int**a[10];
C.int*(*a)[10];
D.int*a[][10];
12.下列標(biāo)識(shí)符不是關(guān)鍵字的是()。
A.breakB.charC.SwithchD.return
13.以下關(guān)于鏈?zhǔn)酱鎯?chǔ)結(jié)構(gòu)的敘述中,()是不正確的。
A.結(jié)點(diǎn)除自身信息外還包括指針域,因此存儲(chǔ)密度小于順序存儲(chǔ)結(jié)構(gòu)
B.邏輯上相鄰的結(jié)點(diǎn)物理上不必鄰接
C.可以通過(guò)計(jì)算直接確定第i個(gè)結(jié)點(diǎn)的存儲(chǔ)地址
D.插入、刪除運(yùn)算操作方便,不必移動(dòng)結(jié)點(diǎn)
14.在關(guān)系數(shù)據(jù)庫(kù)中,用來(lái)表示實(shí)體間聯(lián)系的是()。
A.網(wǎng)狀結(jié)構(gòu)B.樹(shù)狀結(jié)構(gòu)C.屬性D.二維表
15.下列敘述中正確的是()。
A.軟件測(cè)試應(yīng)該由程序開(kāi)發(fā)者來(lái)完成
B.程序經(jīng)調(diào)試后一般不需要測(cè)試
C.軟件維護(hù)只包括對(duì)程序代碼的維護(hù)
D.以上三種說(shuō)法都不對(duì)
16.
若輸入“abcdef”“abdef”,下述程序的輸出結(jié)果為()。
#include<stdio.h>
#include<string.h>
main
{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.-1B.0C."abcdef"D."abdef"
17.已知二叉樹(shù)后序遍歷序列是CDABE,中序遍歷序列是CADEB,它的前序遍歷序列是()
A.ABCDEB.ECABDC.EACDBD.CDEAB
18.有以下程序:#include<stdio.h>voidfun(doublex,double*y,double*z){*y=*y-1.0;*z=*z+x;}main(){doublea=2.5,b=9.0,*pa,*pb;pa=&a;pb=&b;fun(b-a,pa,pb);printf(“%f\n”,a);}程序運(yùn)行后的輸出結(jié)果是()。
A.8.000000B.9.000000C.1.500000D.10.500000
19.設(shè)有定義:“inta;floatb;”,執(zhí)行“scanf("%2d%f",&a,&b);”語(yǔ)句時(shí),若從鍵盤(pán)輸入876543.0<回車(chē)>,a和b的值分別是()。
A.876和543.000000
B.87和6.000000
C.87和543.000000
D.76和543.000000
20.
二、2.填空題(20題)21.以下程序運(yùn)行后的輸出結(jié)果是()。
main()
{inta=3,b=4,c=5,t=99;
if(b<a&&a<C)t=a;a=c;c=t;
if(a<c&&b<C)t=b;b=a;a=t;
printf("%d%d%d\n",a,b,A);
}
22.以下程序運(yùn)行后的輸出結(jié)果是【】。
main()
{charm;
m='B'+32;printf("%c\n",m);
}
23.若有語(yǔ)句
inti=-19,j=i%4;
printf("%d\n",j),
則輸出的結(jié)果是______。
24.若有定義inta[4][4]={1,2,3,4},{0},{4,6,8,10},{1,3,5,7}},則初始化后,a[1][1]得到的初值是______。
25.算法的復(fù)雜度主要包括空間復(fù)雜度和______復(fù)雜度。
26.有以下語(yǔ)句段
intnl=10,n2=20;
printf("______",n1,n2);
要求按以下格式輸出n1和n2的值,每個(gè)輸出行從第一列開(kāi)始,請(qǐng)?zhí)羁铡?/p>
n1=10
n2=20
27.最簡(jiǎn)單的交換排序方法是______。
28.下列程序的輸出結(jié)果是______。
#defineP(A)printf("%d,",(int)(A))
#definePRINT(A)P(A);printf("theend")
main()
{inti,a=0;
for(i=1;i<5.i++)
PRINT(a+i);
printf("\n");
}
29.下列程序的輸出結(jié)果是______。
#include<stdio.h>
main()
{intx=3,y=2,z=1;
if(x<y)
if(y<0)z=0;
elsez+=1;
printf("%d\n",z);
}
30.下列程序的輸出結(jié)果是______。
#include<stdio.h>
main()
{inta=2,b=-1,C=2;
if(a<B)
if(b<O)c=0;
elsec++;
printf("%d\n",C);
}
31.軟件的【】設(shè)計(jì)又稱(chēng)為總體結(jié)構(gòu)設(shè)計(jì),其主要任務(wù)是建立軟件系統(tǒng)的總體結(jié)構(gòu)。
32.在使用putchar和getchar函數(shù)處理字符時(shí),必須在程序的開(kāi)頭出現(xiàn)包含頭文件的命令行是【】。
33.結(jié)構(gòu)化程序設(shè)計(jì)方法的主要原則可以概括為自頂向下、逐步求精、______和限制使用goto語(yǔ)句。
34.下述函數(shù)用于統(tǒng)計(jì)一行字符中的單詞個(gè)數(shù),單詞之間用空格分隔。
word_num(str)
for(i=0;str[i]!=【】;i++)
if(【】='')word=0;
【】;
}
return(num);
}
35.關(guān)系模型的完整性規(guī)則是對(duì)關(guān)系的某種約束條件,包括實(shí)體完整性、______和自定義完整性。
36.若有如下程序:
main()
{inta[][2]={1,2,6,9,11},(*t)[2];
t=a;
printf("%d,%d\n",*(t[1]+1),(*t)[1]);
}
則程序運(yùn)行后輸出的結(jié)果是【】。
37.下列程序段的輸出結(jié)果是【】。
main()
{charb[]="Hello,you";
b[5]=0;
printf("%s\n",B);
}
38.閱讀下面程序,則執(zhí)行后的輸出結(jié)果是【】。
#include"stdio.h"
main()
{intx,y,z;
x=1;y=2;z=3;
if(x>y)if(x>z)printf("%d",x);
elseprintf("%d",y);
printf("%d\n",z);}
39.一個(gè)項(xiàng)目具有一個(gè)項(xiàng)目主管,一個(gè)項(xiàng)目主管可管理多個(gè)項(xiàng)目,則實(shí)體“項(xiàng)目主管”與實(shí)體“項(xiàng)目”的聯(lián)系屬于【】。
40.設(shè)有如下程序main(){intn1,n2;scanf(“%d”,&n2);while(n2!=0){n1=n2%10;n2=n2/10;printf(“%d”,n1);}}程序運(yùn)行后,如果從鍵盤(pán)上輸入1298,則輸出結(jié)果為
三、1.選擇題(20題)41.下列程序的輸出結(jié)果是()。#include<stdio.h>main(){charch[2][5]={"1234","5678"},*p[2];inti,j,s=0;for(i=0;i<2;i++)p[i]=ch[i];for(i=0;i<2;i++)for(j=0;p[i][j]>'\0';j+=2){s=p[i][j]-'0';printf("%d",s);}}
A.6357B.6135C.1357D.691357
42.下列有關(guān)數(shù)據(jù)庫(kù)的描述,正確的是______。
A.數(shù)據(jù)庫(kù)是一個(gè)DBF文件B.數(shù)據(jù)庫(kù)是一個(gè)關(guān)系C.數(shù)據(jù)庫(kù)是一個(gè)結(jié)構(gòu)化的數(shù)據(jù)集合D.數(shù)據(jù)庫(kù)是一組文件
43.設(shè)有數(shù)組定義:chararray[]="China";則數(shù)組array所占的空間為()個(gè)字節(jié)。
A.4B.5C.6D.7
44.函數(shù)ftell(fp)的作用是()。
A.得到fp所指向文件的當(dāng)前讀寫(xiě)位置B.初始化流式文件的位置指針C.移動(dòng)流式文件的位置指針D.以上答案均正確
45.設(shè)fp為指向某二進(jìn)制文件的指針,且已讀到此文件末尾,則函數(shù)feof(fp)的返回值為_(kāi)_____。A.EOFB.非0值C.0D.NULL
46.有以下程序main(){intm,n;printf("Enterm,n:");scanf("%d%d",&m,&n);while(m!=n){while(m>n)m-=n;while(n>m)n-=m;}printf("m=%d\n",m);}如果從鍵盤(pán)上輸入6514<回車(chē)>,則輸出結(jié)果為()
A.m=3B.m=2C.m=1D.m=0
47.以下不合法的字符常量是()。
A.'\018'B.'\"'C.'\\'D.'\xcc'
48.以下程序中調(diào)用scanf函數(shù)給變量a輸入數(shù)值的方法是錯(cuò)誤的,其錯(cuò)誤原因是main(){int*p,*q,a,b;p=&a;printf("inputa:");scanf("%d",*p);}
A.*p表示的是指針變量p的地址
B.*p表示的是變量a的值,而不是變量a的地址
C.*p表示的是指針變量p的值
D.*p只能用來(lái)說(shuō)明p是一個(gè)指針變量
49.設(shè)有以下程序段intx=0,s=0;while(!x!=0)s+=++x;printf("%d",s);則
A.運(yùn)行程序段后輸出0B.運(yùn)行程序段后輸出1C.程序段中的控制表達(dá)式是非法的D.程序段執(zhí)行無(wú)限次
50.下列關(guān)于隊(duì)列的敘述中正確的是______。A.在隊(duì)列中只能插入數(shù)據(jù)B.在隊(duì)列中只能刪除數(shù)據(jù)C.隊(duì)列是先進(jìn)先出的線性表D.隊(duì)列是先進(jìn)后出的線性表
51.下列敘述中,不屬于軟件需求規(guī)格說(shuō)明書(shū)的作用的是()
A.便于用戶,開(kāi)發(fā)人員進(jìn)行理解和交流
B.反映出用戶問(wèn)題的結(jié)構(gòu),可以作為軟件開(kāi)發(fā)工作的基礎(chǔ)和依據(jù)
C.作為確認(rèn)測(cè)試和驗(yàn)收的依據(jù)
D.便于開(kāi)發(fā)人員進(jìn)行需求分析
52.若有以下的定義和語(yǔ)句:main(){inta[4][3]*p[4],j;for(j=0;j<4;j++)p[j]=a[j];}則能表示數(shù)組元素的表達(dá)式是______。
A.*(p[1])B.a[4][3]C.a[1]D.*(p+4)[1]
53.以下敘述不正確的是
A.一個(gè)C源程序可由一個(gè)或多個(gè)函數(shù)組成
B.一個(gè)C源程序必須包含一個(gè)main函數(shù)
C.C程序的基本組成單位是函數(shù)
D.在C程序中,注釋說(shuō)明只能位于一條語(yǔ)句的后面
54.在嵌套使用if語(yǔ)句時(shí),C語(yǔ)言規(guī)定else總是A.和之前與其具有相同縮進(jìn)位置的if配對(duì)
B.和之前與其最近的if配對(duì)
C.和之前與其最近的且不帶else的if配對(duì)
D.和之前的第一個(gè)if配對(duì)
55.有以下程序:main(){intp[8]={11,12,13,14,15,16,17,18},i=0,j=0;while(i++<7)if(p[i]%2)j+=p[i];printf("%d\n",j);}程序運(yùn)行后的輸出結(jié)果是______。
A.42B.45C.56D.60
56.有以下程序:#include<stdio.h>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",hum[i][j]);printf("\n");}}若要按以下形式輸出數(shù)組右上半三角;1234678111216則在程序下劃線處應(yīng)填入的是()。
A.i-1B.iC.i+1D.4-i
57.下列語(yǔ)句中,正確的是______。
A.staticcharstr[]="China";
B.staticcharstr[];str="China";
C.staticcharstr1[5],str2[]={"China"};strl=str2;
D.staticcharstr1[],str2[];str2={"China"};strcpy(str1,str2);
58.以下定義語(yǔ)句中正確的是
A.inta=b=0;
B.charA=65+1,b='b';
C.floata=1,*b=&a,*c=&b;
D.doublea=0.0;b=1.1;
59.以下敘述正確的是()。
A.C語(yǔ)言中的文件是流式文件,因此只能順序存取數(shù)據(jù)
B.打開(kāi)一個(gè)已存在的文件并進(jìn)行了寫(xiě)操作后,原有文件中的全部數(shù)據(jù)必定被覆蓋
C.在一個(gè)程序中當(dāng)對(duì)文件進(jìn)行了寫(xiě)操作后,必須先關(guān)閉該文件然后再打開(kāi),才能讀到第一個(gè)數(shù)據(jù)
D.當(dāng)對(duì)文件的讀(寫(xiě))操作完成之后,必須將它關(guān)閉,否則可能導(dǎo)致數(shù)據(jù)丟失
60.若有說(shuō)明語(yǔ)句"inta;floatb;”,以下輸入語(yǔ)句正確的是()
A.scanf("%f%f",&a,&b);
B.scanf("%f%d",&a;&b);
C.scanf("%d,%f",&a,&b);
D.scanf("%6.2f%6.2f",&a,&b);
四、選擇題
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 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ì)用戶上傳內(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 二零二五年度承攬合同增值稅稅率適用范圍界定協(xié)議
- 2025年度特色苗木種植與銷(xiāo)售一體化合同規(guī)范
- 二零二五年度智能幕墻設(shè)計(jì)與施工勞務(wù)承包合同
- 二零二五年度園林綠化工程苗木售后服務(wù)合同
- 2025年度非婚生子撫養(yǎng)費(fèi)支付及探望權(quán)調(diào)整協(xié)議
- 二零二五年度農(nóng)產(chǎn)品收購(gòu)合同價(jià)款調(diào)整及市場(chǎng)波動(dòng)應(yīng)對(duì)方案
- 廣東省2025年度簡(jiǎn)易勞動(dòng)合同簽訂與解除指南合同
- 2025年度跨境貿(mào)易商業(yè)銀行出口信貸合同
- 二零二五年度車(chē)輛抵押貸款擔(dān)保合同續(xù)簽協(xié)議
- 二零二五年度股東權(quán)益保護(hù)股權(quán)協(xié)議書(shū)范本
- 3D打印與傳統(tǒng)工藝美術(shù)的融合創(chuàng)新
- 運(yùn)動(dòng)損傷預(yù)防與處理的案例分析
- 第四次工業(yè)革命課件
- nfc果汁加工工藝
- 《中國(guó)十大元帥》課件
- 舌癌預(yù)防好口腔疾病遠(yuǎn)離舌癌威脅
- 《微生物限度檢查法》課件
- 云南民族民間工藝的分類(lèi)及其初步研究
- 駕駛員的責(zé)任和義務(wù)
- 預(yù)防艾梅乙母嬰傳播課件
- 寶寶雙排牙介紹演示培訓(xùn)課件
評(píng)論
0/150
提交評(píng)論