版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
班號(hào)
C語(yǔ)言試題姓名
題號(hào)―-二三五七八九十總分附加題
分?jǐn)?shù)
一、選擇題:(20分,每題2分)
1.以下不正確的C語(yǔ)言標(biāo)識(shí)符是()o
A.ABCB.abcC.a_bcD.ab.c
2.C程序是由構(gòu)葭的。
A.主程序與子程序
B.主函數(shù)與若干子函數(shù)
C.一個(gè)主函數(shù)與一個(gè)其它函數(shù)
D.主函數(shù)與子函數(shù)
3.以下說(shuō)法中正確的是:o
A.在C語(yǔ)言中,實(shí)參與其對(duì)應(yīng)的形參各占獨(dú)立的存儲(chǔ)單元;
B.在C語(yǔ)言中,實(shí)參與其對(duì)應(yīng)的形參共占同一個(gè)存儲(chǔ)單元;
C.在C語(yǔ)言中,只有當(dāng)實(shí)參與其對(duì)應(yīng)的形參同名時(shí),才共占
同一個(gè)存儲(chǔ)單元;
D.在C語(yǔ)言中,形參是虛擬的,不占存儲(chǔ)單元。
4.設(shè)n=3;則n++的結(jié)果是()。
A.2B.3C,4D.5
5.設(shè)整型變量n=10,i=4,則賦值運(yùn)算n%=i+l執(zhí)行后,n的值是()。
A.0B.1C.2D.3
6.凡是函數(shù)中未指定存儲(chǔ)類別的局部變量其隱含的存儲(chǔ)類別是
()。
A.自動(dòng)(auto)B.靜態(tài)(static)C.外部(extern)D.寄存
器(register)
7.在while(x)語(yǔ)句中的x與下面條件表達(dá)式等價(jià)的是:0
A.x==0B.x==lC.x!=lD.x!=0
8.若有以下說(shuō)明和語(yǔ)句:
structworker
intno;
班級(jí):學(xué)號(hào):姓名:
char*name;
}work,*p=&work;
則以下引用方法不正確的是()o
A.work.noB.(*p).noC.p->noD.work->no
9.以下對(duì)二維數(shù)組進(jìn)行正確初始化的是()。
A.inta[2][3]={{l,2},{3,4},{5,6}};
B.inta[][3]={l,2,3,4,5,6);
C.inta[2][]={l,2,3,4,5,6);
D.inta[2][]={{l,2},{3,4}};
10.二維數(shù)組a有m歹U,則在之前的元素個(gè)數(shù)為:。
Ax
z—j*m+i
B\
7Ji*m+j
cx
z)i*m+j-l
D\
7?
二、給出下列程序的運(yùn)行結(jié)果:(20分,前四題每題3分,
后兩題每題4分)
1.#include<stdio.h>
main()
(
inti=16,j,x=6;
j=i+++l;
x*=i弓;
printfC%d,%d\n”,j,x);
運(yùn)行結(jié)果是:
2.#include<stdio.h>
#include<math.h>
main()
(
inta=l,b=4,c=2;
floatx=10.5,y=4.0,z;
z=(a+b)/c+sqrt((double)y)*1.2/c+x;
printfC6%f\n,\z);
2
班級(jí):學(xué)號(hào):姓名:
運(yùn)行結(jié)果是:
3.#include<stdio.h>
main()
{
inta,b,c,d;
a=c=O;
b=l;
d=20;
if(a)d=d-10;
elseif(!b)
if(!c)d=25;
elsed=15;
printf("d=%d\n”,d);
)
運(yùn)行結(jié)果:
4.main()
(
inti=10;
switch(i){
case9:i+=l;
case10:i+=l;
case11:i+=l;
default:i+=l;
)
printfi^%d,\i);
}
運(yùn)行結(jié)果:
5.#include<stdio.h>
main()
(
inta[]={l,2,3,4},i,j,s=0;
j=l;
for(i=3;i>=0;i-)
s=s+a[i]*j;
3
班級(jí):學(xué)號(hào):姓名:
j=j*io;
)
printf(,ls=%d\n,l,s);
)
運(yùn)行結(jié)果:
6.func(intx)
{x=20;}
main()
(
intx=10;
func(x);
printf("%d”,x);
}
運(yùn)行結(jié)果:
三、閱讀程序,在標(biāo)有下劃線的空白處填入適當(dāng)?shù)谋磉_(dá)
式或語(yǔ)句,使程序完整并符合題目要求。(20分,每空2
分)
1.已知能被4整除而不能被100整除的或者能被400整除的年份
是潤(rùn)年,則判斷某一年是否是潤(rùn)年的程序如下:
main()
(
intyear,leap;
scanK"%d”,&year);
if()
leap=l;
elseleap=0;
iff)printfT是潤(rùn)年”);
elseprintf("不是潤(rùn)年");
)
2.將100至200間不能被3整除的數(shù)輸出:
main()
(
intn;
4
班級(jí):學(xué)號(hào):姓名:
for(n=100;n<=200;n++)
(
if(n%3=0):
printfC%d”,n);
3.判斷m是否是素?cái)?shù)
#include<math.h>
main()
(
intm,i,k;
scanff%dM,&m);k=sqrt(m);
for(i=2;i<=k;i++)
if(m%i==O);
if(i>=k+l)printf(u%disaprimenumber\n,,,m);
elseprintf("%disnotaprimenumber\n,,,m);
)
4.給定一3*4的矩陣,求出其中值最大的元素的值,及所在的行
列號(hào)。
main()
(
inti,j,row=0,colum=0,max;
staticinta[3][4]={{l,2,3,4}{9,8,7,6}{10,40,-4,4}};
for(i=0;i<=2;i+4-)
for(j=0;j<=3;j++)
if(a[i][j]>max)
{
max=a[i][j];
print出“max=%d,row=%d,colum=%d\rT,max,row,colum);
5.下面函數(shù)的功能是將兩個(gè)字符串s和t連接起來(lái)。
char*conj(char*s,char*t)
5
班級(jí):學(xué)號(hào):姓名:
char*p=s;
while(*s):
while(*t)
(
*s=;
s++;
t++;
}
*s='\0';
四、編程(40分)
1.計(jì)算1-1/2+1/3-1/4+...+1/99-1/100+…,直到最后一項(xiàng)的絕對(duì)值小
于10"為止。(13分)
2.輸入一行字符,分別統(tǒng)計(jì)求出其中英文字母、空格、數(shù)字和其
他字符的個(gè)數(shù)并輸出結(jié)果。(13分)
3.任意從鍵盤輸入10個(gè)整數(shù),按從小到大的順序排序,并輸出
結(jié)果。(14分)
班號(hào)
C語(yǔ)言考試題姓名
題號(hào)一二三四ii.六七八九I-總分附加題
分?jǐn)?shù)
說(shuō)明:請(qǐng)將答案寫在答題紙的相應(yīng)題號(hào)后面?。。。?
一、填空題:(24分每空1.5分)
1.已知:int*p,a;則語(yǔ)句p=&a;中的運(yùn)算符&的含義
6
班級(jí):學(xué)號(hào):姓名:
是(1)。
2.凡在函數(shù)體內(nèi)沒(méi)有明顯存儲(chǔ)類別說(shuō)明的變量是
(2)o
3.已知:struct
{intk;
charc;
floata;}test;則sizeof(test)的值是
(3)o
4.程序填空:
(1)下面的程序是main函數(shù)利用函數(shù)abed來(lái)交換
main中的兩個(gè)變量的值。
#include<stdio.h>
main()
{floatx=10,y=20;
abcd(4);
printf("%f,%E',x,y);
)
abcd(x,y)
(5):
{floattemp;
tenw=(6):
7
班級(jí):學(xué)號(hào):姓名:
(7);
(8):
)
(2)下面的程序是使用冒泡法對(duì)輸入的10個(gè)數(shù)據(jù)
從小到大排序。排好序的10個(gè)數(shù)分兩行輸出。
#include<stdio.h>
main()
U9);
intj,k;
printf(4tinput10numbersplease\n");
for(j=0;(10);i++)
scanfC'%f\&a[j]);
printf("\n");
for(j=0;(11);i++)
for(k=0;£12};k++)
if(13)
{x=a[k];
(14);
a[k+l]=x;
8
班級(jí):學(xué)號(hào):姓名:
printf("Thesorted10numbers:\n^^);
for(i=0;(15);i++)
{if(16)
printf("\n”);
)
printf("\rT);
二、單項(xiàng)選擇題:(20分每題2分)
1.C語(yǔ)言中基本數(shù)據(jù)類型包括()。
A,整型、實(shí)型、邏輯型
B.整型、實(shí)型、字符型
C.整型、字符型、邏輯型
D.整型、實(shí)型、邏輯型、實(shí)型
2.已知inti,a;執(zhí)行語(yǔ)句“i=(a=2*3,a*5),a+6;“后,
變量a的值是()。
A.6B.12C.30D.36
3.C語(yǔ)言中規(guī)定函數(shù)的返回值的類型是由()。
A.return語(yǔ)句中的表達(dá)式類型所決定
B.調(diào)用該函數(shù)時(shí)的主調(diào)用函數(shù)類型所決定
C.調(diào)用該函數(shù)時(shí)系統(tǒng)臨時(shí)決定
D.在定義該函數(shù)時(shí)所指定的函數(shù)類型所決定
4.不能進(jìn)行++和一運(yùn)算的數(shù)據(jù)類型是()。
A.指針B.doubleC.intD.long
9
班級(jí):學(xué)號(hào):姓名:
5.為了判斷兩個(gè)字符串si和s2是否相等,應(yīng)當(dāng)使用
()。
A.if(sl==s2)B.if(sl=s2)
C.if(strcpy(sl,s2))Dif
(strcmp(sl,s2))
6.若有以下說(shuō)明和語(yǔ)句:
structstu
{intno;
char*name;
}student,*p=&student;
則以下引用方法不正確的是()o
A.student.noB.(*p).no
C.p->noD.student->no
7.以下不是死循環(huán)的語(yǔ)句為()o
E.for(;;x+=k);
F.while(1){x++};
G.for(k=10;;k--)sum+=k;
H.for(;(c=getchar())!=,\n,;)printf(t4%c,,,c);
8.以下錯(cuò)誤的描述是()o
A.不同的函數(shù)中可以使用相同的變量名
B.形式參數(shù)是局部變量
C.一個(gè)函數(shù)內(nèi)部定義的變量只能在本函數(shù)范圍內(nèi)有
效D.在一個(gè)函數(shù)內(nèi)部的復(fù)合語(yǔ)句中定義的變量
可以在本函數(shù)范圍內(nèi)有效
9.若用數(shù)組名作為函數(shù)調(diào)用時(shí)實(shí)參,則實(shí)際上傳遞給形
參的是()。
A.數(shù)組首地址B.數(shù)組的第一個(gè)元素值
10
班級(jí):學(xué)號(hào):姓名:
C.數(shù)組中全部元素的值D.數(shù)組元素的個(gè)數(shù)
10.已知inta,*p=&a;則為了得到變量a的值,下列錯(cuò)
誤的表達(dá)式是()o
A.*&pB.*pC.p[0]D.*&a
三、判斷下列問(wèn)題描述及語(yǔ)句正確與否,正確的打“J”。
(16分每題2分)
1.C的關(guān)鍵字都是小寫的。
2.一個(gè)復(fù)合語(yǔ)句是作為一個(gè)語(yǔ)句處理的且在邏輯上相互關(guān)聯(lián)的
一組語(yǔ)句。
3.#definePI=3.14159
4.局部變量在進(jìn)入代碼塊時(shí)生成,退出代碼塊時(shí)消失。
5.inta=123456;
6.函數(shù)可以嵌套定義,也可嵌套調(diào)用。
7.switch與if不同,switch只能測(cè)試是否相等,而if中還能測(cè)
試關(guān)系和邏輯表達(dá)式。
8.break和continue語(yǔ)句都可用于選擇結(jié)構(gòu)和循環(huán)結(jié)構(gòu)中。
四、讀程序,寫出運(yùn)行結(jié)果:(20分每題5分)
1.main()
{inta=5,b=4,x,y;
x=a++*a++*a++;
printf(ua=%d,x=%d\n,,,a,x);
y=--b*--b*--b;
printf("b=%d,y=%d\n”,b,y);
2.#include<stdio.h>
u
班級(jí):學(xué)號(hào):姓名:
main()
{structs1
{charc[4],*s;}sl={"abc'',"def}
structs2
{char*cp;
structsi
ss1;}s2={“ghi”,{“jkl”,“mno”}};
printf("%c%c\n”,s1.c[O],*sl.s);
printf("%s%s\n”,s1.c,s1.s);
printf(t4%s%s\n,,,s2.cp,s2.ss1.s);
printf("%s%s\n”,++s2.cp,++s2.ss1.s);
)
3.#include<stdio.h>
func(intb[])
{intj;
for(j=0;j<4;j++)
b[j]=j;
)
main()
12
班級(jí):學(xué)號(hào):姓名:
{inta[4],k;
func(a);
for(k=0;k<4;k++)
printf("%d\n”,a[k]);
)
6.voidfun()
{staticinta=5;
a++;
printf("a=%d\n”,a);
)
main()
(
intm;
for(m=0;m<=l;m++)
fun();
)
五、編程(20分)
1.有一個(gè)3x4的矩陣,找出最大值及該值所在位置。(10分)
2.寫一個(gè)函數(shù),計(jì)算x的n次方。(10分)
13
班級(jí):學(xué)號(hào):姓名:
班號(hào)
C語(yǔ)言程序設(shè)計(jì)姓名
試題
班級(jí):學(xué)號(hào):姓名:
題號(hào)—>二三四五六七八九十總分
分?jǐn)?shù)
注意:請(qǐng)將答案寫在答題紙上,否則無(wú)效!??!
一、判斷題:(12分每題2分)
1、C語(yǔ)言規(guī)定:在一個(gè)源程序中,main函數(shù)的位置必須在最開(kāi)始。
2、假設(shè)所有變量均為整型,則表達(dá)式(a=2,b=5,b++,a+b)的值是8。
3、凡是函數(shù)中未指定存儲(chǔ)類別的局部變量,其隱含的存儲(chǔ)類別為靜態(tài)存儲(chǔ)。
4、C語(yǔ)言中規(guī)定函數(shù)的返回值的類型是由return語(yǔ)句中的表達(dá)式類型所決
定。
5、在C語(yǔ)言中對(duì)文件操作必須先關(guān)閉當(dāng)前文件,然后再打開(kāi)?個(gè)新文件。
6、C語(yǔ)言程序的基本單位是語(yǔ)句。
二、選擇題:(20分每題2分)
1、假設(shè)已定義chara[10]和char*p=a,下面的賦值語(yǔ)句中,正確的是:
A)a[10]='TurboC";B)a="TurboC”;
C)*p="TurboC";D)p="TurboC”;
2、下面關(guān)于運(yùn)算符優(yōu)先順序的描述中正確的是:
A)關(guān)系運(yùn)算符<算術(shù)運(yùn)算符<賦值運(yùn)算符<邏輯與運(yùn)算符
B)邏輯運(yùn)算符<關(guān)系運(yùn)算符<算術(shù)運(yùn)算符<賦值運(yùn)算符
C)賦值運(yùn)算符〈邏輯與運(yùn)算符V關(guān)系運(yùn)算符〈算術(shù)運(yùn)算符
D)算術(shù)運(yùn)算符<關(guān)系運(yùn)算符<賦值運(yùn)算符〈邏輯與運(yùn)算符
3、以下正確的描述是。
A)continue語(yǔ)句的作用是結(jié)束整個(gè)循環(huán)的執(zhí)行
B)只能在循環(huán)體內(nèi)和switch語(yǔ)句體內(nèi)使用break語(yǔ)句
C)在循環(huán)體內(nèi)使用break語(yǔ)句或continue語(yǔ)句的作用相同
D)從多層循環(huán)嵌套中退出時(shí),只能使用goto語(yǔ)句
4、用8位無(wú)符號(hào)二進(jìn)制數(shù)能表示的最大十進(jìn)制數(shù)為
A)127B)128C)255D)256
5、下列敘述中正確的是:
A)C語(yǔ)言中既有邏輯類型也有集合類型
15
班級(jí):學(xué)號(hào):姓名:
B)C語(yǔ)言中沒(méi)有邏輯類型但有集合類型
C)C語(yǔ)言中有邏輯類型但沒(méi)有集合類型
D)C語(yǔ)言中既沒(méi)有邏輯類型也沒(méi)有集合類型
(第1頁(yè)共8頁(yè))
6、以下對(duì)C語(yǔ)言函數(shù)的有關(guān)描述中,正確的是:
A)調(diào)用函數(shù)時(shí),只能把實(shí)參的值傳送給形參,形參的值不能
傳送給實(shí)參
B)函數(shù)既可以嵌套定義又可以遞歸調(diào)用
C)函數(shù)必須有返回值,否則不能使用函數(shù)
D)程序中有調(diào)用關(guān)系的所有函數(shù)必須放在同一個(gè)源程序文件
7、在C語(yǔ)言中,不正確的int類型的常數(shù)是:
A)32768B)0C)037D)Oxaf
8、以卜敘述中不正確的是:
A)在不同的函數(shù)中可以使用相同名字的變量
B)函數(shù)中的形式參數(shù)是局部變量
C)在一個(gè)函數(shù)內(nèi)定義的變量只在本函數(shù)范圍內(nèi)有效
D)在一個(gè)函數(shù)內(nèi)的復(fù)合語(yǔ)句中定義的變量在本函數(shù)范圍內(nèi)有效
9、以下說(shuō)法中正確的是:
A)ttdefine和printf都是C語(yǔ)句
B)#define是C語(yǔ)句,而printf不是
C)printf是C語(yǔ)句,但#define不是
D)ttdefine和printf都不是C語(yǔ)句
10、若有以下定義和語(yǔ)句:doubler=99,*p=&r;*p=r;則以下
正確的敘述是:
A)以下兩處的*p含義相同,都說(shuō)明給指針變量p賦值
B)在“doubler=99,*p=&r;”中,把r的地址賦值給了p所
指的存儲(chǔ)單元
0語(yǔ)句"*p=r;”把變量r的地址值賦給指針變量p
D)語(yǔ)句"*p=r;”取變量r的值放回r中
三、填空題:(24分每空2分)
1、下面程序的功能是:輸入一行字符,統(tǒng)計(jì)其中有多少個(gè)單詞,單詞之間
用空格分開(kāi)。請(qǐng)?zhí)羁胀瓿伞?/p>
16
班級(jí):學(xué)號(hào):姓名:
#include<stdio.h>
main()
{charstr[81];
intI,(【1】);
charc;
gats(str);
fbr(I=O;(【21)!=,\0,;I++)
if^c==,,)word=0;
elseif(【3】)
{word=l;
(【4】)}
printf(44Thereare%dwordinline.\n",num);
)
2、下面程序的功能是:用選擇排序法對(duì)數(shù)組中10個(gè)數(shù)據(jù)按由小到大排序。請(qǐng)?zhí)羁胀?/p>
成。
voidsort(inta[],intn)
{(15L)
fbr(I=O;I<n-l;I++)
{(【61)forO=I+l;j<n;j++)
if(a[j]<a[k])k=j;
if((17])){t=a[k];a[k]=a[I];a[I]=t;}
main()
{intb[10],I;
printff'enterthearrayVn^);
for(I=0;I<10;I++)
scanf("%d”.&b[I]);
([8L)
printff'thesortedarray:\n?,);
fbr(I=0;I<10;I++)
printfC4%d<4,b[I]);
printfT'n");
}
3、判斷m是否是素?cái)?shù)
#include<math.h>
main()
17
班級(jí):學(xué)號(hào):姓名:
intm,i,k;
scanf("%d",&m);(【91)
for(i=2;i<=k;i++)
if(m%i=O)([10]);
if(i>=k+l)printf("%disaprimenumber\n,,,m);
elseprintR"%disnotaprimenumber\n,9,m);
}
4、假設(shè)當(dāng)年產(chǎn)值為100,工業(yè)產(chǎn)值的增長(zhǎng)率分別為6%、8%、10%、12%時(shí),
求工業(yè)產(chǎn)值分別經(jīng)過(guò)多少年可實(shí)現(xiàn)翻番。請(qǐng)?zhí)羁胀瓿伞?/p>
main()
{inty[4],i;
floats[4]={100,100,100,100},c[4]={.06,.08,.10,.12};
clrscr();
fbr(i=0;i<4;i-H-)
{y[i]=0;
while(【11】)
{s[i]=s[i]*(l+c[i]);
(【12】))
printf(,,\ny=%d\ts=%.2f\tc=%.2f,,y[i],s[i],c[i]);
四、讀程序,寫出程序運(yùn)行結(jié)果。(24分每題4分)
1、main()
{intx=10,y=10,I;
for(I=0;I>8;y=++I)
printf(''%d%d〃,x—,y);
)
2、main()
{intm=37,n=13;
while(m!=n)
{while(m>n)
m=m?n;
while(n>m)
n-=m;
班級(jí):學(xué)號(hào):姓名:
printfC'm=%d\n”,m);
)
3、main()
{intx=9;
fbr(;x>O;x—)
{if(x%3==0){printfC%d”,--x);
continue;}
}
}
4^main()
{inta=7,b=2;
floatx=2.5,y=4.7,z;
z=x+a%3*(int)(x+y)%2/4;
printf(ct%f\n,,,z);
z=(a+b)/2+(int)x%(int)y;
printf("%f\z);
}
5、main()
{intx[]={0,l,2,3,4,5,6,7,8,9);
ints,I,*p;
s=0;
p=&x[0];
fbr(I=l;klO;I+=2)
s+=*(p+I);
printf(usum=%d,\s);
)
6>main()
{intk=4,m=l,p;
p=func(k,m);
printfC%d”,p);
p=fiinc(k,m);
printfitn%dn,p);
)
func(inta,intb)
{staticintm=0,i=2;
i+=m+l;
m=i+a+b;
retum(m);
19
班級(jí):學(xué)號(hào):姓名:
五、編程題:(20分每題10分)
1、利用指針完成。輸入兩個(gè)整數(shù),按先大后小的順序輸出。
2、編程完成兩個(gè)字符串的連接。(不使用strcat()函數(shù))。
一、判斷題:(12分)
1、2、3、4、5、6、
二、選擇題:(共20分,每題2分)
1、2、3、4、
5、6、7、8、
9、10、
三、填空題:(共24分,每空2分)
1、2、3、4、
5、6、7、8、
9、10、11、12、
四、讀程序,寫出程序的運(yùn)行結(jié)果(共24分,每題4分)
1、2、3、
4、5、6、
五、編程:(20分)
20
班級(jí):學(xué)號(hào):姓名:
1、
2、
21
班級(jí):學(xué)號(hào):姓名:
22
班級(jí):學(xué)號(hào):姓名:
、填空題(6分,每題2分)
1.C語(yǔ)言中基本數(shù)據(jù)類型包
括O
2.已知能被4整除而不能被100整除的或者能被400整除的年
份是閏年,則判斷某一年year是否是閏年的表達(dá)式為:
3.設(shè)有下列登記表,采用最佳方式對(duì)它進(jìn)行類型定義。
姓名性別出生年月家庭收入狀況家庭收入
年月日低收入中等收入高收入狀況標(biāo)記
姓名用name表示,性別用sex表示,出生年月用birthDay表示,年用
year表示,月用month表示,日用date表示,家庭收入狀況用salary
表示,低收入用low表示,中等收入用middle表示,高收入用high表示,
家庭收入狀況標(biāo)記用mark表示。
23
班級(jí):學(xué)號(hào):姓名:
二、判斷下列問(wèn)題描述正確與否,正確的打“9’,錯(cuò)誤
的打“X”。(3分,每題1分)
1.#defineP1=3.14159;不是C語(yǔ)句。()
2.在C語(yǔ)言中,可以用typedef定義一種新的類型。()
3.共用體所占的內(nèi)存空間大小取決于占空間最多的那個(gè)成員變
量。()
三、選擇題:(10分,每題1分)
1.以下不正確的C語(yǔ)言標(biāo)識(shí)符是()。
A.ABIB.a2_bC._ab3D.4ab
2.若有定義int(*p)[4],則標(biāo)識(shí)符p是一個(gè)o
A、指向整型變量的指針變量
B、指向函數(shù)的指針變量
C、指向有四個(gè)整型元素的一維數(shù)組的指針變量
D、指針數(shù)組名,有四個(gè)元素,每個(gè)元素均為一個(gè)指向整型變
量的指針
3.若用數(shù)組名作為函數(shù)調(diào)用時(shí)實(shí)參,則實(shí)際上傳遞給形
參的是()□
A.數(shù)組首地址B.數(shù)組的第一個(gè)元素值
C.數(shù)組中全部元素的值D.數(shù)組元素的個(gè)數(shù)
4.C語(yǔ)言中規(guī)定函數(shù)的返回值的類型是由()。
E.return語(yǔ)句中的表達(dá)式類型所決定
F.在定義該函數(shù)時(shí)所指定的函數(shù)類型所決定
G.調(diào)用該函數(shù)時(shí)系統(tǒng)臨時(shí)決定
H.調(diào)用該函數(shù)時(shí)的主調(diào)用函數(shù)類型所決定
5.以下錯(cuò)誤的描述是()。
A.不同的函數(shù)中可以使用相同的變量名
B.形式參數(shù)是局部變量
24
班級(jí):學(xué)號(hào):姓名:
C.一個(gè)函數(shù)內(nèi)部定義的變量只能在本函數(shù)范圍內(nèi)有
效
D.在一個(gè)函數(shù)內(nèi)部的復(fù)合語(yǔ)句中定義的變量可以在
本函數(shù)范圍內(nèi)有效
6.為了判斷兩個(gè)字符串si和s2是否相等,應(yīng)當(dāng)使用
()oA.if(si==s2)B.if(si=
s2)
C.if(strcpy(slzs2))
D.if(strcmp(si,s2)==0)
7.在while(x)語(yǔ)句中的x與下面條件表達(dá)式等價(jià)的
是:0
A.x!=0B.x==lC.x!=1D,x==0
8.若有以下說(shuō)明和語(yǔ)句:
structstu
(
intno;
char*name;
}studentf*p=&student;
則以下引用方法不正確的是()o
A.student.noB.(*p).no
C.p->noD.student->no
9.以下對(duì)二維數(shù)組進(jìn)行正確初始化的是()。
I.inta[2][3]={{1,2},{3,4},{5,6}};
J.inta[2][3]={{1,2},{},{4,5}};
K.inta[][3]={1,2,3,4,5,6);
L.inta[2][]={{1,2},{3,4}};
10.二維數(shù)組a有m行n歹U,則在a[i][j]之前的元素個(gè)數(shù)為
()o
A.j*n+iB.i*n+jC.i*n+j-1D.i*n+j+1
四、寫出下列程序的運(yùn)行結(jié)果。(4分,每題1分)
25
班級(jí):學(xué)號(hào):姓名:
1?#include<stdio.h>
voidfun(intx)
(
x=20;
)
main()
(
intx=10;
fun(x);
printf(nx=%d\n”,x);
}
運(yùn)行結(jié)果是:
2.#include<stdio.h>
voidfun(intb[4])
(
intj;
for(j=0;j<4;j++)
b[j]=j;
}
main()
(
inta[4]={1,2,3,4},k;
fun(a);
for(k=0;k<4;k++)
printf(H%d\nn,a[k])
}
運(yùn)行結(jié)果是:
3.#include<stdio.h>
main()
inti=10;
26
班級(jí):學(xué)號(hào):姓名:
switch(i)
case9:i+=10;
case10:i+=10;
case11:i+=10;
break;
default:i+=10;
)
printf("i=%d\n",i);
)
運(yùn)行結(jié)果是:
4.#include<stdio.h>
voidfun()
(
staticinta=5;
a++;
printf("a=%d\n”,a);
)
main()
(
intm;
for(m=0;m<=1;m++)
fun();
)
運(yùn)行結(jié)果是:
五、閱讀程序,在標(biāo)有下劃線的空白處填入適當(dāng)?shù)谋磉_(dá)
式或語(yǔ)句,使程序完整并符合題目要求。(3分,每空1
分)
從鍵盤輸入10個(gè)整型數(shù)據(jù),放入數(shù)組a中,求其最大值及其
所在元素的下標(biāo)位置,并輸出。
main()
(
inta[10],n,pos,max;
27
班級(jí):學(xué)號(hào):姓名:
for(n=0;n<10;n++)
scanf(,&a[n]);
max=;
pos=;
for(n=0;n<10;n++)
(
if(a[n]>max)
(
max=a[n];
pos=;
)
)
printf(Mmax=%d,pos=%d\nn,max,pos);
)
六、下面程序是有錯(cuò)誤的程序,請(qǐng)找出其中的錯(cuò)誤,并
將正確的語(yǔ)句寫在相應(yīng)錯(cuò)誤語(yǔ)句的右方空白處。(5分)
#include<stdio.h>
?include<math.h>
intisprime(intm)
main()
(
intnzflag;
printf(nInputn:n);
scanf(”%d”,n);
flag=isprime(n);
if(flag)
printf(Yes!\nn)
else
printf(”No!\n");
)
/*函數(shù)功能:判斷m是否為素?cái)?shù)
函數(shù)參數(shù):整型變量m
返回值:返回1時(shí),表示m是素?cái)?shù);返回。時(shí),表示m不是
28
班級(jí):學(xué)號(hào):姓名:
素?cái)?shù)
*/
intisprime(int*m)
(
inti;
for(i=2;i<=sqrt(m);i++)
{
if(m%i=0)return0;
)
return1;
}
七、在下面任意選擇2道題編程(14分,每題7分)
1.從鍵盤任意輸入某班30個(gè)學(xué)生的成績(jī),將成績(jī)按照由高到
低順序打印。
2.自己定義一個(gè)函數(shù),以實(shí)現(xiàn)和函數(shù)strlen相同的功能,
即任意輸入一個(gè)字符串,調(diào)用該函數(shù)可以計(jì)算輸入字符串
的實(shí)際長(zhǎng)度,然后打印
3.編程計(jì)算1!+2!+3!+4!+….+10!的值
29
班級(jí):學(xué)號(hào):姓名:
30
班級(jí):學(xué)號(hào):姓名:
班號(hào)
C語(yǔ)言考試題姓名
題號(hào)―-二三四五六七八九十總分附加題
分?jǐn)?shù)
說(shuō)明:考試成績(jī)分為兩部分:實(shí)驗(yàn)占10%,卷面筆試占
90%,滿分為100分。本試卷為卷面筆試部分,卷面滿
分為90分。
一、填空題(10分,第1小題4分,其余每空1分)
1.設(shè)有下列登記表,請(qǐng)采用最佳方式定義一利數(shù)據(jù)類型來(lái)表示這
些數(shù)據(jù)的集合。
婚姻狀況marital
姓名性別職業(yè)
未婚離婚日期婚姻狀況
namesexprofession已婚marrieddivorcedDay
年齡標(biāo)記
marry
single配偶子女
年月B
Age姓名人數(shù)Flag
yearmonthdate
其中,配偶姓名用spouseName表示,子女人數(shù)用children表
示。
31
班級(jí):學(xué)號(hào):姓名:
2.C語(yǔ)言中構(gòu)造數(shù)據(jù)類型包
括、、o
3.C語(yǔ)言中用表示邏輯值“假”,用表示邏
輯值“真”。
4.char*p[10];這條語(yǔ)句的含義是:
O
二、判斷下列問(wèn)題描述正確與否,正確的打“4”,錯(cuò)誤
的打“義”。(4分,每題1分)
1.如果在程序中定義靜態(tài)變量和全局變量時(shí),未明確指明其初
始值,那么它們可以在程序編譯階段自動(dòng)被初始化為0值。
()
2.在C語(yǔ)言中,可以用typedef定義-種新的數(shù)據(jù)類型。()
3.在C語(yǔ)言中,實(shí)參與其對(duì)應(yīng)的形參各占獨(dú)立的存儲(chǔ)單元。
()
4.在C語(yǔ)言中,函數(shù)的定義可以嵌套。()
三、選擇題:(10分,每題2分)
1.若用數(shù)組名作為函數(shù)調(diào)用時(shí)的實(shí)參,則實(shí)際上傳遞給
形參的是()o
32
班級(jí):學(xué)號(hào):姓名:
A.數(shù)組的首地址B.數(shù)組的第一個(gè)元素值
C.數(shù)組中全部元素的值D.數(shù)組元素的個(gè)數(shù)
2.判斷兩個(gè)字符串si和s2相等,應(yīng)當(dāng)使用()-
A.if(s1==s2)B.if(s1=s2)
C.if(!strcmp(si,s2))D.if
(strcmp(si,s2))
3.在while(x)語(yǔ)句中的x與下面條件表達(dá)式等價(jià)的
是:o
A.x!=0B.x==lC.x!=1D.x==0
4.二維數(shù)組a有m行n歹!J,則在a[i][j]之前的元素個(gè)數(shù)為
()-
A.j*n+iB.i*n+jC.i*n+j-1D.i*n+j+1
5.設(shè)有聲明語(yǔ)句:inta=l,b=0;則執(zhí)行以下語(yǔ)句后輸出
為:。
switch(a)
(
case1:
switch(b)
{
case0:printf(?'**o**");
break;
case1:printf(??**i**?');
break;
}
case2:printf(??**2**n);
break;
}
A)**0**B)**o****2**
C)**o****l****2**D)有語(yǔ)法錯(cuò)誤
四、寫出下列程序的運(yùn)行結(jié)果。(6分,每題2分)
1?#include<stdio.h>
voidFun(int*y)
(
printf(n*y=%d\n",*y);
*y=20;
printf(n*y=%d\n",*y);
33
班級(jí):學(xué)號(hào):姓名:
}
main()
(
intx=10;
printf("x=%d\n",x);
Fun(&x);
printf("x=%d\n",x);
)
運(yùn)行結(jié)果是:
2.#include<stdio.h>
intFun(intx)
(
staticinty=0;
y+=x;
returny;
)
main()
(
intx=10,y=0,k;
for(k=0;k<2;k++)
{
y=Fun(x);
printf(My=%d\n”,y);
)
)
運(yùn)行結(jié)果是:
3.#include<stdio.h>
34
班級(jí):學(xué)號(hào):姓名:
main()
(
chara[]="programming",b[]="language";
char*pl,*p2;
inti;
pl=a;
p2=b;
for(i=0;i<7;i++)
{
if(*(pl+i)==*(p2+i))
printf("%c",*(pl+i));
)
printf("\n");
)
運(yùn)行結(jié)果是:
五、閱讀程序,在標(biāo)有下劃線的空白處填入適當(dāng)?shù)谋磉_(dá)
式或語(yǔ)句,使程序完整并符合題目要求。(10分,每空2
分)
1.下面這個(gè)程序用于讀入5個(gè)整數(shù),當(dāng)程序讀入的數(shù)據(jù)為正整數(shù)
時(shí),則顯示該數(shù),否則,不顯示。讀入5個(gè)數(shù)據(jù)后,程序結(jié)束運(yùn)
行。
#include<stdio.h>
main()
(
inti,n;
for(i=l;i<=5;i++)
(
printf(nPleaseentern:n);
scanf("%d",&n);
if(n<=0);
printf(nn=%d\nn,n);
}
printf("Pr
溫馨提示
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 小區(qū)門口變電站施工方案
- 上海高速公路欄桿施工方案
- 轉(zhuǎn)爐電氣改造方案
- 鋁合金網(wǎng)架施工方案
- 金牛區(qū)清淤河道施工方案
- 運(yùn)動(dòng)場(chǎng)圍網(wǎng)施工方案
- 銅梁石紋格柵吊頂施工方案
- 烈士陵園墓碑墓地施工方案
- 2025年中國(guó)電競(jìng)市場(chǎng)競(jìng)爭(zhēng)策略及行業(yè)投資潛力預(yù)測(cè)報(bào)告
- 2025年冷拉絲項(xiàng)目可行性研究報(bào)告
- 第1課+中華文明的起源與早期國(guó)家+課件+-2023-2024學(xué)年高中歷史統(tǒng)編版2019必修中外歷史綱要上冊(cè)+
- 大廈物業(yè)管理保潔服務(wù)標(biāo)準(zhǔn)5篇
- 神經(jīng)內(nèi)科國(guó)家臨床重點(diǎn)??平ㄔO(shè)項(xiàng)目評(píng)分標(biāo)準(zhǔn)(試行)
- 業(yè)主委員會(huì)成員推薦表
- 城市設(shè)計(jì)與城市更新培訓(xùn)
- 2023年貴州省銅仁市中考數(shù)學(xué)真題試題含解析
- 世界衛(wèi)生組織生存質(zhì)量測(cè)量表(WHOQOL-BREF)
- 《葉圣陶先生二三事》第1第2課時(shí)示范公開(kāi)課教學(xué)PPT課件【統(tǒng)編人教版七年級(jí)語(yǔ)文下冊(cè)】
- 某送電線路安全健康環(huán)境與文明施工監(jiān)理細(xì)則
- GB/T 28885-2012燃?xì)夥?wù)導(dǎo)則
- PEP-3心理教育量表-評(píng)估報(bào)告
評(píng)論
0/150
提交評(píng)論