版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
2023年甘肅省慶陽市全國(guó)計(jì)算機(jī)等級(jí)考試
C語言程序設(shè)計(jì)預(yù)測(cè)試題(含答案)
學(xué)校:班級(jí):姓名:考號(hào):
一、2.填空題(10題)
1.以下程序的功能是根據(jù)輸入的“y”("Y”)與“n”("N”),在屏幕上分別顯示
出“ThisisYES.”與“ThisisNO空白處需要填入的內(nèi)容是
#include<stdio.h>
voidYesNo(charch)
{switch(ch)
{case'y':
case'Y':printf("\nThisisYESAn");
case'n':
case'N':Printf("\nThisisNO.\n");}}
main()
{charch;
printf("\nEnte
2.下面程序的運(yùn)行結(jié)果是【】。
#include<stdio.h>
#defineN10
#defines(x)x*x
#definef(x)(x*x)
main()
{intil,i2;
il=1000/s(N);i2=1000/f(N);
printf("%d%d\n",il,i2);
3.【】(黑箱或白箱)測(cè)試方法完全不考慮程序的內(nèi)部結(jié)構(gòu)和內(nèi)部特征。
4.在數(shù)據(jù)庫系統(tǒng)中,實(shí)現(xiàn)各種數(shù)據(jù)管理功能的核心軟件稱為【】。
5.fseek函數(shù)的正確調(diào)用形式是【】。
6.下列程序的輸出結(jié)果是
#include<stdio.h>
intfun(intx)
{intp;
if(x==0IIx==l)
return3;
else
p=x-fun(x-2);
returnp;
)
voidmain()
{printf("\n%d",fun(ll));
)
7.當(dāng)運(yùn)行以下程序時(shí),輸入abed,程序的輸出結(jié)果是【】。
insert(charstr[])
{inti;
i=stolen(str);
while(i>0)
{str[2*i]=str[i];str[2*i-1]='*i—;}
printf("%s\n",sir);
)
main()
{charstr[40];
seanf("%s",str);insert(str);
)
8.以下程序運(yùn)行時(shí)若從鍵盤輸入:102030〈回車>。輸出結(jié)果是【】。
#include<stdio.h>
main()
{
inti=O,j=O,k=O;
scanf("%d%*d%d",&i,&j,&k);
printf("%d%d%d\n",i,j,k);
)
9.當(dāng)數(shù)據(jù)的物理結(jié)構(gòu)(存儲(chǔ)結(jié)構(gòu))改變時(shí),不影響數(shù)據(jù)庫的邏輯結(jié)構(gòu),從
而不致引起應(yīng)用程序的變化,這是指數(shù)據(jù)的【】。
10.算法的工作量大小和實(shí)現(xiàn)算法所需的存儲(chǔ)單元多少分別稱為算法的
【】。
二、單選題(10題)
11.若有以下程序
*ineludr<aldioh>
mam()
tnta?I.b?2.c?3.df?0|
if(afst):ehrr?I;
if(baw2)r?*2;
if(c!?3)ir?
if(d?■4)r?;
printf(.r);
則程序的輸出結(jié)果是
A.3B.7C.6D.10
12.
(13)以下程序的運(yùn)行結(jié)果是().
#include<stdio.h>
main()
{inta=3,b=4,c=8,d=4,m=l,n=3;
print""%d\n",(m=a>b)&&(n=c>d));
}
A)0B)1C)2D)3
13.已知一個(gè)大小為n的整型數(shù)組,現(xiàn)求該數(shù)組的全部連續(xù)子數(shù)組的元
素之和的最大值,最優(yōu)算法的時(shí)間復(fù)雜度是。如:a[4]={2「l,3,-4},它的
全部連續(xù)子數(shù)組為{2,-1,3,-4,[2,-1],[-1,3],[3,-4],[2,-1,3],[-1,3,-4],[2,-1,3,-
4]},它們的元素之和為{2,-1,3,41,2,-1,4,20},其中的最大值為4。
A.O(logN)B.O(N)C.O(N*logN)D.O(NA2)
14.若有定義語句:“inta=3,b=2,c=l;以下選項(xiàng)中錯(cuò)誤的賦值表達(dá)
式是()O
A.a=(b=4)=3;B.a=b=c+1:C.a=(b=4)+C;D.a=l+(b=c—4);
15.
設(shè)有定義:chars[10];inti=0;,以下不能將一行(不超過100個(gè)字符)帶有空格的字符串正
確讀入的語句或語句組是().
A)gets(s):
B)scanlT%$”,s):
Owhile((s[t+JJ=gctciiar())!",n");sfiJ-.O";
D)do]scat)fts(i]);|whilc(s[i-?fP''JI's[i]-r0':
16.下列有關(guān)圖的遍歷說法中,不正確的是()
A.圖的遍歷必須用遞歸實(shí)現(xiàn)
B.基本遍歷算法兩種:深度遍歷和廣度遍歷
C.有向圖和無向圖都可以進(jìn)行遍歷操作
D.圖的遍歷算法可以執(zhí)行在有回路的圖上
17.算法的效率的分析主要包括兩個(gè)方面0。
A.時(shí)間復(fù)雜度和空間復(fù)雜度B.正確性和簡(jiǎn)單性C.可讀性和文檔性D.
數(shù)據(jù)復(fù)雜性和程序復(fù)雜性
18.有下列程序:
main
{inty=10;
do{y—;}while(—y);
printf("%d\n",—y);
)
當(dāng)執(zhí)行程序時(shí),輸出的結(jié)果是()。
A.-lB.lC.4D.0
19.若在線性表中采用折半查找法查找元素,該線性表應(yīng)該()
A.元素按值有序B.構(gòu)采用順序存儲(chǔ)結(jié)C.元素按值有序且采用順序存
儲(chǔ)結(jié)構(gòu)D.元素按值有序且采用鏈?zhǔn)酱鎯?chǔ)結(jié)構(gòu)
20.數(shù)據(jù)庫設(shè)計(jì)包括兩個(gè)方面的設(shè)計(jì)內(nèi)容,它們是()
A.概念設(shè)計(jì)和邏輯設(shè)計(jì)B.模式設(shè)計(jì)和內(nèi)模式設(shè)計(jì)C.內(nèi)模式設(shè)計(jì)和物
理設(shè)計(jì)D.結(jié)構(gòu)特性設(shè)計(jì)和行為特性設(shè)計(jì)
三、程序設(shè)計(jì)題(10題)
21.
請(qǐng)編寫一個(gè)函數(shù)proc(),它的功能是:比較2個(gè)字符串的長(zhǎng)度(不得
調(diào)用C語言中求字符串長(zhǎng)度的函數(shù)),函數(shù)返回較長(zhǎng)的字符串。若2個(gè)
字符串長(zhǎng)度相等,則返回第1個(gè)字符串。例如,若輸入jiangxi<Enter〉;
beijing<;Enter>;則函數(shù)返回jiangxi。注意:部分源程序給出如下。
請(qǐng)勿改動(dòng)main()函數(shù)和其他函數(shù)中的任何內(nèi)容,僅在函數(shù)proc()的
花括號(hào)中填入所編寫的若干語句。試題程序:
0mclude
rhar?proHclur?char?t)
voidmaia<)
(
dura^20j.b[10j??p.?
pnntk*lnpuihhsinng:*)*
■…⑺i
2th?,nnt,*)i
i
pnntfC*M?w?proc<a?b))(
22.N名學(xué)生的成績(jī)已在主函數(shù)中放人一個(gè)帶頭節(jié)點(diǎn)的鏈表結(jié)構(gòu)中,h指
向鏈表的頭節(jié)點(diǎn)。請(qǐng)編寫函數(shù)fun,其功能是:求出平均分,并由函數(shù)
值返回。
例如,若學(xué)生的成績(jī)是:8576698591726487,則平均分應(yīng)當(dāng)是:
78.625°注意:部分源程序在文件PROG1.C中。
請(qǐng)勿改動(dòng)主函數(shù)main和其他函數(shù)中的任何內(nèi)容,僅在函數(shù)fun的花括
號(hào)中填入你編寫的若干語句。
fincludc<stdio.h>
^include<ttdlib.h>
#ddineN8
■tnictdisl
|doubles;
?tmctalist?next;
I>
typcdcfftnicttlitiSTREC:
doublefiin(STREC?h)
STREC?cre?t(double??)
|STREC?b,*p,?q;inti=0;
h.p.(STREC?)m?Uoc(sixeof(STREC));p->?=0;
while(i<N)
|q=(STREC?)malloc(■??)((STREC));
q>>■s?[i]?i.?;p->next=q;p=q;
I
p->next=0;
returnh;
I
outlist(STREC?b)
ISTREC?p;
pah->next;printf(*head”);
do.
|printf(*->%4.If",p->?);p=p->next;|
while(p!?0);
printf(w\n\n*);
I
main()
|doubleUN]=185,76,69,85,91,72.64.871..ve;
voidNONO();
STREC?h|
hacre?l(?)ioutlist(h);
ave=fiin(h):
printf("ave=%6.3An".ave);
NONO();
I
voidNONO()
1/?本南敷用于打開文件,輸入數(shù)據(jù),調(diào)用函數(shù),輸出數(shù)據(jù),關(guān)閉文件。??
FILE?in,?out;
intitj;doubles[N]9ave;
STREC,h;
inafopen("in.dal*,*r");
out?fopen(*ouL<hiR/w");
for(i=0;i<10;i???-)
I
for(j?0;j<N;
h=cre?t(s);
“e=fun(h):
fprintf(outv-%6.31An"tave);
I
fcloee(in);
fcloee(out);
23.程序定義了MxM的二維數(shù)組,并在主函數(shù)中自動(dòng)賦值。請(qǐng)編寫函
數(shù)proc(inta口[M],intn),該函數(shù)的功能是使數(shù)組左下半三角元素中的
值加上n。例如,a數(shù)組中的值為:
I234S
678910
??II121314IS
K17IS1920
:lTZ23UZ5
后「的倒”2?11逅網(wǎng)在符序扃?教附中的值力,
3234s
S?B910
??1314IS1415
IS19202120
2324252627
注意:部分源程序給出如下。
請(qǐng)勿改動(dòng)main。函數(shù)和其他函數(shù)中的任何內(nèi)容,僅在函數(shù)proc()的花括
號(hào)中填入所編寫的若干語句。
試題程序:
KmdudeVdrae.k>
,tiKiudcVitidao.h>
3includeVcooio.h>
■inrludrV?tdliL.h>
9S
aidprocCtlMtflltl>
voidnum()
init>-2.Uji
int?rr[S][5]?U,243.4.S.?.7a3.IOJ|J2.13.
14?lS4?.n.lSdl.2041.n.t3.24.nh
?yMcfn<"CLS")?
pnmfC????Tbrarray????
pnfnf(*w-將4d\fT.0?i
proc<arr?n)g
nnnff(*????THFRR*vll|.T????\n*ki
loKi-*OiivM,I++)
pnnt((?M4d"??rr£i][j])i
prvntf(<\na>s
24.使用VC++2010打開考生文件夾下progl中的解決方案。此解決方
案的項(xiàng)目中包含一個(gè)源程序文件progl.c0在此程序中,請(qǐng)編寫函數(shù)fun(),
該函數(shù)的功能是將s所指字符串中ASCII值為偶數(shù)的字符刪除,字符串
中剩余字符形成一個(gè)新字符串并將其存放在t所指的數(shù)組中。
例如,若s所指字符串中的內(nèi)容為“ABCDEFG123456",其中字符B
的ASCII值為偶數(shù),字符2的ASCII值為偶數(shù),都應(yīng)當(dāng)刪除,其他依
此類推。最后t所指的字符串中的內(nèi)容應(yīng)是“ACEG135”。
注意:部分源程序給出如下。
請(qǐng)勿改動(dòng)主函數(shù)main。和其他函數(shù)中的任何內(nèi)容,僅在函數(shù)fun()的花
括號(hào)中填入你編寫的若干語句。
試題程序:
#include<stdlib.h>
#include<stdio.h>
#include<string.h>
#include<conio.h>
voidfun(char*s,chart[])
)
voidmain()
chars[100],t[100];
system(“CLS”);
printf("\nPleaseenterstrings:");
scanf("%s”,s);
fun(s,t);
printf(44\nTheresultis:%s\n,,,t);
)
25.規(guī)定輸入的字符串中只包含字母和*號(hào)。請(qǐng)編寫函數(shù)fun,其功能是:
除了字符串前導(dǎo)的。號(hào)之外,將串中其他*號(hào)全部刪除。在編寫函數(shù)時(shí)不
得使用C語言提供的字符串函數(shù).
例如.字符串中的內(nèi)容為:”???.............除后,字符串中的內(nèi)容應(yīng)當(dāng)
是:“???.ABCDEFC".
注意:部分毒程序在文件PROCI.C中。
請(qǐng)勿改動(dòng)主函敗main和其他函數(shù)中的任何內(nèi)容,僅在函數(shù)fun的花括號(hào)中填入你編寫的若干語句。
tindude<stdio.h>
voidfun(cixr?a)
main()
|chars[81];voidNONO();
printf(*Enterastring:\n");grte(s);
printf("Thestringafterdeleted:\n");puts(t);
NONO();
I
voidNONO()
|/>本函數(shù)月;于打開文件,軸入數(shù)據(jù).調(diào)用函數(shù),輸出數(shù)據(jù),關(guān)閉文件。?/
FILE?in,?out;
inti;chars[81];
m=fbpen("in.dat"f"r")5
out=fbpen("out.dat".*w*);
far(i£0;i<10;i+?)
I
bc?iif(in.N%8N,e);
^pnntf(out,M%s\n",?);
I
aw(in):
26.使用VC++2010打開考生文件夾下progl中的解決方案。此解決方
案的項(xiàng)目中包含一個(gè)源程序文件progl.c。在此程序中,請(qǐng)編寫一個(gè)函
數(shù)fun(),該函數(shù)的功能是將大于整數(shù)m且緊靠m的k個(gè)素?cái)?shù)存入所
指的數(shù)組中。例如,若輸入17、5,則應(yīng)輸出19、23、29、31、37。注
意:部分源程序在文件progl.c中。請(qǐng)勿改動(dòng)主函數(shù)main。和其他函數(shù)中
的任何內(nèi)容,僅在函數(shù)fun()的花括號(hào)中填入你編寫的若干語句。試題
程序:
?include<conio.h>
?include<stdio?h>
tinclude<stdlib.h>
voidfun(intm,intk,intxx[])
voidmain()
(
FILE*wf;
intm,n,zz[1000];
system(MCLSW);
printf(H\nPleaseentertwoin-
tegers:M);
scanf(w%d%d*\&n);
fun(m,n,zz);
for(m=0;m<n;m)
printf(n%d”,zz[m]);
printf(w\n");
/******率**********/
wf-fopen("out?dat?’,"w");
fun(17,5,zz);
21for(m=0;m<5;m+-??)
w
22fprintf(wff%d”,zz[m]);
3
2close(wf);
24f
25/*****************/
26
27.規(guī)定輸入的字符串中只包含字母和*號(hào)。編寫函數(shù)fun,其功能是:刪
除字符串中所有的*號(hào)。編寫函
數(shù)時(shí),不得使用C語言提供的字符串函數(shù)。
例如,字符串中的內(nèi)容為:****A*BC*DEF*G*******刪除*后字符串
中的內(nèi)容應(yīng)當(dāng)
是:ABCDEFG0
注意:部分源程序在文件PROG1.C中。
請(qǐng)勿改動(dòng)主函數(shù)main和其他函數(shù)中的任何內(nèi)容,僅在函數(shù)fun的花括
號(hào)中填入你編寫的若干語句。
#includc<irtdio.h>
voidfun(chai?.)
main()
Ichwr81];
void、0N0()?
printff*EnteraHiring:\nH)?
fun(?)$
pnntf("Thestringafterdelated,\n*);puto(*);
NONO();
2dNONO(>
"*本函數(shù)用于打開文件,箱人數(shù)據(jù),調(diào)用漏數(shù).輸出數(shù)祗.關(guān)閉文件“?/
FIIE-in.?out;
inti:char”81];
in=fopm("in.dal*,*r*);
out=(opcn(^out.dat**.*wH);
for(i-0;i<10;i**)|
fscanf(in,?);
fun(a);
fpnntf(out..a);
in);
fclosf(out);
28.
假定輸入的字符串中只包含字母和*號(hào)。請(qǐng)編寫函數(shù)proc(),它的功能
是:使字符串中前部的*號(hào)不得多余m個(gè);若多余m個(gè),則刪除多余的
*號(hào);若少于或等于m個(gè),則什么也不做,字符串中間和尾部的*號(hào)不刪
除。例如,字符串中的內(nèi)容為****A*BC*DEF*G****,若m的值為2,
刪除后,字符串中的內(nèi)容則應(yīng)當(dāng)是**A*BC*DEF*G****;若m的值為
4,則字符串中的內(nèi)容仍為****A*BC*DEF*G****°n的值在主函數(shù)中輸
入。在編寫函數(shù)時(shí),不得使用c語言提供的字符串函數(shù)。注意:部分源
程序給出如下。請(qǐng)勿改動(dòng)main()函數(shù)和其他函數(shù)中的任何內(nèi)容,僅
在函數(shù)proc()的花括號(hào)中填入所編寫的若干語句。試題程序:
8incIwW
8mclutkVctNuo.h>
vtiidn)
midRMin(>
(duirMrtSlmi
pcintfC*Enier?MringAn"Hsctsf?ir)s
pcifirK*Entern?i*)?
procC
pnncfCeTb?firingAfterdrlrted-\ti*)i
mit?(?tr)t
29.請(qǐng)編寫函數(shù)proc,該函數(shù)的功能是:將M行N列的二維數(shù)組中的
數(shù)據(jù),按行的順序依次放到一維數(shù)組中,一維數(shù)組中數(shù)據(jù)的個(gè)數(shù)存放
在形參n所指的存儲(chǔ)單元中。
例如,若二維數(shù)組中的數(shù)據(jù)為
13233343
14243444
15253545
則一維數(shù)組中的內(nèi)容應(yīng)該是132333431424344415253545。
注意:部分源程序給出如下。
請(qǐng)勿改動(dòng)main函數(shù)和其他函數(shù)中的任何內(nèi)容,僅在函數(shù)proc的花括
號(hào)中填入所編寫的若干語句。
試題程序:
#include<stdio.h>
voidproc(int(*s)[103,int*b,int*n,intrain.intnn)
(
)
voidmain
{
intarr[10][10]={{33,33,33,33),{44,44,44,44},
{55,55,55,55}),i,j;
inta[100]={o)>n=o;
printf("Thematrix:\n");
for(i=0;i<3;i++)
(
for(j=O;j<4;j++)
printf("%3d",arr[i][j]):
printf("\n");
)
proc(arr,a,&n,3,4):
printf("TheAarray:\n");
for(i=0;i<n;i++)
printf("%3d",a[i]):
printf("\n\n");
)
30.使用VC++2010打開觸文件夾下progl中的解決方案。此解決方案的
項(xiàng)目中包含一個(gè)源程序文件progl.c。在此程序中,請(qǐng)編寫函數(shù)fun(),
其功能是移動(dòng)字符串中的內(nèi)容,移動(dòng)的規(guī)則是把第1?m個(gè)字符,移動(dòng)到
字符串的最后,把第m+1到最后的字符移動(dòng)到于符串的前面。例如,字
符串中原有的內(nèi)容為“ABCDEFGHIJK",m的值為3,移動(dòng)后,字符串中
的內(nèi)容應(yīng)該是“DEFGHUKABC”。注意涪B分源程序在文件progl.c中。
請(qǐng)勿改動(dòng)main。函數(shù)和其他函數(shù)中的任何內(nèi)容,僅在函數(shù)fun()的花括號(hào)
中填入你編寫的若干語句。試題程序:
u
<
d
o
h
>
?
i
n
c
l
d
e
s
t
i
.
<
s
r
n
.
?
i
n
c
l
u
d
e
t
i
g
h
>
I
d
e
f
i
n
e
N
8
0
o
u
c
?
n
)
v
i
d
f
n
(
h
a
r
w
i
t
m
r
m
i
(
)
v
o
i
d
a
n
(
E
?
;
F
I
L
w
f
a
N
=
H
I
c
h
a
r
[
]
"
A
B
C
D
E
F
G
J
K
"
,
b
"
H
I
[
N
]
=
A
B
C
D
E
F
G
J
K
"
;
i
n
t
m
;
M
w
T
g
l
s
n
\
n
)
p
r
i
n
t
f
(
h
e
o
r
i
i
n
a
t
r
i
g
;
:
;
p
u
t
s
(
a
)
溫馨提示
- 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幕墻分包合同樣本
- 2025年不見面審批項(xiàng)目發(fā)展計(jì)劃
- 2024年跨區(qū)域電力購銷協(xié)議
- 2024年創(chuàng)新產(chǎn)品銷售代表薪資績(jī)效合同3篇
- 2025年度建筑工地安全生產(chǎn)設(shè)施設(shè)備租賃及維護(hù)服務(wù)合同2篇
- 2024年電氣設(shè)備安裝工程合同范例3篇
- 2025年度校園家具采購合同與質(zhì)量保障條款3篇
- 二零二五年安全管理系統(tǒng)軟件采購合同3篇
- 2025版科技園區(qū)保障返租回報(bào)資金擔(dān)保協(xié)議3篇
- 2024年細(xì)胞培養(yǎng)制備服務(wù)專項(xiàng)合作合同
- GB/T 3045-2017普通磨料碳化硅化學(xué)分析方法
- 新疆維吾爾自治區(qū)公共建筑節(jié)能設(shè)計(jì)標(biāo)準(zhǔn)實(shí)施細(xì)則2023
- 2022年西藏自治區(qū)中考英語真題卷(含答案與解析)
- 醫(yī)院輸血質(zhì)量管理考核標(biāo)準(zhǔn)
- 七年級(jí)語文上冊(cè):15、《古代詩歌四首》教案
- 氣道評(píng)估與處理課件
- 腦血管病的介入診療課件
- RCS-9626CN電動(dòng)機(jī)保護(hù)測(cè)控裝置
- 苗木供貨服務(wù)計(jì)劃方案
- 回轉(zhuǎn)支承實(shí)驗(yàn)臺(tái)測(cè)試系統(tǒng)設(shè)計(jì)畢業(yè)設(shè)計(jì)論文
- 全員安全生產(chǎn)責(zé)任考核表
評(píng)論
0/150
提交評(píng)論