國(guó)家計(jì)算機(jī)c語言二級(jí)考試試題
在國(guó)家計(jì)算機(jī)c語言二級(jí)考試種有哪些試題類型呢?下面是學(xué)習(xí)啦小編給大家整理的計(jì)算機(jī)c語言二級(jí)考試試題及答案,供大家參閱!
國(guó)家計(jì)算機(jī)c語言二級(jí)考試試題
一、選擇題
1.有以下程序:
#include
main( )
{int a=1,b=2;
for(;a<8;a++){b+=a;a+=2;)
printf("%d,%d\n",a,b);
)
程序運(yùn)行后的輸出結(jié)果是( )。
A.9,18
B.8,11
C.7,11
D.10,14
2.有以下程序,其中k的初值為八進(jìn)制數(shù):
#include
main( )
{int k=011;
printf{"%d\n",k++};
}
程序運(yùn)行后的輸出結(jié)果是( )。
A.12
B.11
C.10
D.9
3.下列語句組中,正確的是( )。
A.char*s;s="Olympic";
B.char sE73;s="Olympic";
C.char*S;s={¨Olympic"};
D.char sET3;s={"Olympic"};
4.以下關(guān)于return語句的敘述中正確的是( )。
A.一個(gè)自定義函數(shù)中必須有一條return語句
B.一個(gè)白定義函數(shù)中可以根據(jù)不同情況設(shè)置多條return語句
C.定義成void類型的函數(shù)中可以有帶返回值的return語句
D.沒有return語句的自定義函數(shù)在執(zhí)行結(jié)束時(shí)不能返回到調(diào)用處
5.下列選項(xiàng)中,能正確定義數(shù)組的語句是( )。
A.int num[0..2008];
B.int num [];
C.int N=2008;int num[N];
D.#define N 2008; int num[N];
6.有以下程序:
#include
void fun(char*C,int d)
{*c=*c+1,d=d+1;
printf(%"c%,c",*c,d);
}
main( )
{char b=’a’a=’A’;
fun(&b,a);printf(%"c,%c\n",b,a);
)
程序運(yùn)行后的輸出結(jié)果是( )。
A.b,B,b,A
B.b,B,B,A
C.a,B,B,a
D.a,B,a,B
7.若有定義"int(*pt)[3];",則下列說法正確的是( )。
A.定義了基類型為int的三個(gè)指針變量
B.定義了基類型為int的具有三個(gè)元素的指針數(shù)組pt
C.定義了一個(gè)名為*pt、具有三個(gè)元素的整型數(shù)組
D.定義了一個(gè)名為pt的指針變量,它可以指向每行有三個(gè)整數(shù)元素的二維數(shù)組
8.設(shè)有定義"double a[10],*s=a;",以下能夠代表數(shù)組元素a[3]的是( )。
A.(*s)[3]
B.*(s+3)
C.*s[3]
D.*s+3
9.有以下程序:
#include
main( )
{int a[5]={1,2,3,4,5),b[5]={0,2,1,3,o},i,s=0;
for(i=o;i<5;i++)s=s+a[b[i]];
printf(”%d\n”,s);
)
程序運(yùn)行后的輸出結(jié)果是( )。
A.6
B.10
C.11
D.15
10.有以下程序:
#include
main( )
{int b[3][3]=(0,1,2,0,1,2,0,1,2},i,j,t=l;
for(i=0;i<3;i++)
for(j=1;j<=i;j++)t+=b[i][b[j][i]];
printf("%d\n",t);
)
程序運(yùn)行后的輸出結(jié)果是( )。
A.1
B.3
C.4
D.0
二、基本操作題
請(qǐng)補(bǔ)充main( )函數(shù),該函數(shù)的功能是:如果數(shù)組arr的前一個(gè)元素比后一個(gè)元素小,則把它保存在數(shù)組bb中并輸出。
例如,若數(shù)組中的元素為:“40,68,62,33,35,52,48,95,66,73”,則輸出:“40,33,35,48,66”。
注意:部分源程序給出如下。
請(qǐng)勿改動(dòng)函數(shù)( )main和其他函數(shù)中的任何內(nèi)容,僅在main( )函數(shù)的橫線上填入所編寫的若干表達(dá)式或語句。
試題程序:
#include
#include
#define M l0
void main( )
{
int i,n=0;
int arr[M]=(40,68,62,33,35,52,48,95,66,73);
int bb[M];
system("CLS");
for(i=0;i<【1】;i++)
if(arr[i]【2】;
printf("\n***display bb***\n");
for(i=0;iprintf("bb[%d]=%2d",【3】);
}
國(guó)家計(jì)算機(jī)c語言二級(jí)考試試題答案
一、選擇題
1.D?!窘馕觥康谝淮螆?zhí)行循環(huán)前,a=1,滿足a<8,執(zhí)行循環(huán)后,b=3,a=3。執(zhí)行完a++操作后,a=4。由于a<8,執(zhí)行第二次循環(huán)后,b=7,a=6,執(zhí)行完a++操作后,a=7。由于a<8,執(zhí)行第三次循環(huán)后,b=14,a=9,執(zhí)行完a++操作后a=10。此時(shí)不滿足a<8,跳出循環(huán)。
2.D?!窘馕觥堪诉M(jìn)制數(shù)k=011得十進(jìn)制值為9,因此題中輸出的是k的十進(jìn)制值,輸出完成后才執(zhí)行 k++操作。
3.A?!窘馕觥拷o字符串?dāng)?shù)組賦值時(shí),要先定義數(shù)組長(zhǎng)度,然后再賦值。可以只給部分元素賦初值,當(dāng)( )中值的個(gè)數(shù)少于元素個(gè)數(shù)時(shí),只給前面部分元素賦值。數(shù)組的下標(biāo)是從0開始的,所以s[7]代表從s[0]到s[6]七個(gè)元素。其格式可以寫成:char數(shù)組名[常量]={’字符’,’字符’,…);,也可寫為char數(shù)組名[常量]={"字符串"};,或去掉{)寫為:char數(shù)組名[常量]="字符串"。所以本題應(yīng)選擇A選項(xiàng)。
4.B?!窘馕鯹return語句又稱為返回語句。該語句的格式如下:“return;”和“return(<表達(dá)式>);”。其中,return是關(guān)鍵字。該語句有兩種格式:不帶返回值格式和帶返回值格式。該語句用在被調(diào)用函數(shù)中,在被調(diào)用函數(shù)中執(zhí)行到該語句時(shí),將結(jié)束對(duì)被調(diào)用函數(shù)的執(zhí)行,并把控制權(quán)返回給調(diào)用函數(shù),繼續(xù)執(zhí)行調(diào)用函數(shù)后邊的語句。在帶有返回值的情況下,將return語句所帶的表達(dá)武的值返回給調(diào)用函數(shù),作為被調(diào)用函數(shù)的值。在被調(diào)用函數(shù)中,可以用return語句,也可以不用return語句。如果要求被調(diào)用函數(shù)有返回值,則一定要用return語句,采用return(<表達(dá)式>);格式。如果被調(diào)用函數(shù)不需要返回值,并且當(dāng)被調(diào)用函數(shù)的所有語句執(zhí)行完后進(jìn)行返回,則被調(diào)用函數(shù)可以不用return語句。
5.D。【解析】通過define進(jìn)行宏定義,將N賦值為2008,然后定義一個(gè)數(shù)組,整型長(zhǎng)度為2008,所以本題答案為D。
6.A?!窘馕觥勘绢}考查了函數(shù)的調(diào)用。首先主函數(shù)定義了兩個(gè)字符型數(shù)據(jù)b和a,給b賦值為字母a.a賦值為字母A,調(diào)用fun(&.b,a)函數(shù),*C=*c十1,a的ASCIl碼值加1后為b,A的ASCIl碼值加1后為B。輸出第一組值,排除C、D選項(xiàng)。B選項(xiàng)的值此時(shí)為小b,排除B選項(xiàng),所以本題答案為A。
7.D。【解析】數(shù)組指針是指向數(shù)組的一個(gè)指針,int(*pt)[3]表示一個(gè)指向3個(gè)int元素的數(shù)組的一個(gè)指針。
8.B。【解析】用帶下標(biāo)的指針變量引用一維數(shù)組元素若有以下定義和語句:“int*P,s[10],i;P=s}”,且o≤i<10,可以用&.s[i]、s+i和p+i三種表達(dá)式來表示s[i]的地址。同時(shí)可以用s[i]、*(s+i)和*(p+i)三種表達(dá)式來表示數(shù)組元素s[i]。
9.C?!窘馕觥勘绢}考查數(shù)組的使用。本題定義了兩個(gè)數(shù)組,注意數(shù)組的下標(biāo)是從0開始的,進(jìn)行第1次for循環(huán):當(dāng)i=0時(shí),b[0]為數(shù)組b中第l個(gè)元素,結(jié)果為0,那么a[0]也是數(shù)組a中第l個(gè)元素,結(jié)果為1,所以S的值為1。第2次循環(huán):i此時(shí)自加為l,b[1]為數(shù)組的第2個(gè)元素,值為2,所以可求出a[2](數(shù)組中的第3個(gè)元素)的值為3,s=s+3,所以S
的值為4。進(jìn)入第3次for循環(huán),依此類推,第3次for循環(huán)結(jié)束時(shí)s的值為6。第4次for循環(huán),s的值變?yōu)閘0。第5次for循環(huán)時(shí),此時(shí)i的值為4,s的值變?yōu)閘l,i=5不符合題意,所以跳出循環(huán),輸出結(jié)果,所以本題答案為C。
10.C?!窘馕觥勘绢}考查了兩層for循環(huán)。外層循環(huán)增量i的值作為內(nèi)層循環(huán)執(zhí)行次數(shù)的值使用。
二、基本操作題程序填空題
【1】M-1【2】bb[n++]=arr[i]【3】i,bb[i]
【解析】由整個(gè)for循環(huán)可知,變量i為數(shù)組arr的下標(biāo),題目中要求取出前一個(gè)元素比后一個(gè)元素小的元素,所以只需要判斷前M-1個(gè)元素即可。因此,【1】處填“M-1”;如果第i個(gè)元素比第i+1個(gè)元素小,將第1個(gè)元素放入數(shù)組bb中,因此,【2】處填“bb[n++]=arr[i]”。最后,要輸出數(shù)組bb中的每一個(gè)元素。因此,【3】處填“i,bb[i]”。
看了“國(guó)家計(jì)算機(jī)c語言二級(jí)考試試題”的人還看了:
1.2015年計(jì)算機(jī)二級(jí)C語言測(cè)試題及答案
2.2015年計(jì)算機(jī)二級(jí)C語言測(cè)試題及答案解析
4.全國(guó)計(jì)算機(jī)c語言二級(jí)考試試題