2015下半年全國計算機二級考試C語言全真模擬試題
- 計算機二級
- 關注:3.04W次
點擊查看試題答案及解析
一、選擇題
1、以下選項中屬於C語言的數據類型是( )。
A. 複合型
B. 雙精度型
C. 邏輯型
D. 集合型
2、以下説法中正確的是( )。
A. C語言程序總是從第一個的函數開始執行
B. 在C語言程序中,要調用的函數必須在main()函數中定義
C. C語言程序總是從main()函數開始執行
D. C語言程序中的main()函數必須放在程序的開始部分
3、選出下列標識符中不是合法的標識符的是( )。
A. hot_do
B. cat1
C. _pri
D. 2ab
4、下列描述中不正確的是( )。
A、字符型數組中可能存放字符串。
B、可以對字符型數組進行整體輸入、輸出。
C、可以對整型數組進行整體輸入、輸出。
D、 不能在賦值語句中通過賦值運算符“=”對字符型數組進行整體賦值。
5、若已定義:int a[9], *p=a;並在以後的語句中未改變p的值,不能表示a[1]地址的表達式為( )。
A. p+1
B. a+1
C. a++
D. ++p
6、設有如下定義: int x=10,y=3,z;
則語句printf("%dn",z=(x%y,x/y)); 的輸出結果是( )。
A. 1
B. 0
C. 4
D. 3
7、定義如下變量和數組: int i, x[3][3]={1,2,3,4,5,6,7,8,9};則下面語句for(i=0;i<3;i++) printf("%d",x[i][2-i]); 的輸出結果是( )
A. 1 5 9
B. 1 4 7
C. 3 5 7
D. 3 6 9
8、讀出以下語句的`輸出結果是( )。
int x=10,y=10;
printf(“%d %dn”,x--,--y);
A. 10 10
B. 9 9
C. 9 10
D. 10 9
9、兩次運行下面的程序,如果從鍵盤上分別輸入6和3,則輸出結果是( )。
if(x++>5) printf("%d",x);
else printf("%dn",x - -);
A. 7和5
B. 6和3
C. 7和4
D. 6和4
10、設有如下定義:char *aa[2]={"abcd","ABCD"};則以下説法中正確的是( )。
A)aa數組成元素的值分別是"abcd"和ABCD"
B)aa是指針變量,它指向含有兩個數組元素的字符型一維數組
C)aa數組的兩個元素分別存放的是含有4個字符的一維字符數組的首地址
D)aa數組的兩個元素中各自存放了字符’a’和’A’的地址
11、以下語句的輸出結果是( )。
int a=-1,b=4,k;
k=(+ +a<0)&&!(b - -<=0);
printf("%d,%d,%dn",k,a,b);
A. 1,0,4
B. 1,0,3
C. 0,0,3
D. 0,0,4
12、下列程序的輸出結果是( )。
char *p1="abcd", *p2="ABCD", str[50]="xyz";
strcpy(str+2,strcat(p1+2,p2+1));
printf("%s",str);
A. xyabcAB
B. abcABz
C. ABabcz
D. xycdBCD
13、執行下面的程序後,a的值是( )。
#define SQR(X) X*X
main( )
{ int a=10,k=2,m=1;
a/=SQR(k+m)/SQR(k+m);
printf("%dn",a); }
A. 10
B. 1
C. 9
D. 0
14、設A為存放(短)整型的一維數組,如果A的首地址為P,那麼A中第i 個元素的地址為( )。
A.P+i*2
B. P+(i-1)*2
C. P+(i-1)
D. P+i
15、下列程序執行後輸出的結果是( )。
int d=1;
fun (int p)
{ int d=5;
d + =p + +;
printf("%d,",d); }
main( )
{ int a=3;
fun(a);
d + = a + +;
printf("%dn",d); }
A. 8, 4
B. 9, 6
C. 9, 4
D. 8, 5
16、表達式:10!=9的值是( )。
A. true
B. 非零值
C. 0
D. 1
17、若有説明: int i,j=7, *p=&i;, 則與i=j; 等價的語句是( )。
A. i= *p;
B. *p=*&j;
C. i=&j;
D. i=* *p;
18、不能把字符串:Hello!賦給數組b的語句是( )。
A. char b[10]={’H’,’e’,’l’,’l’,’o’,’!’};
B. char b[10]; b="Hello!";
C. char b[10]; strcpy(b,"Hello!");
b[10]="Hello!";
19、在C程序中有如下語句:char *func(int x,int y); 它是( )。
A. 對函數func的定義。
B. 對函數func的調用。
C.對函數func的原型説明。
D. 不合法的。
20、以下程序的輸出結果是( )。
char str[15]=”hello!”;
printf(“%dn”,strlen(str));
A. 15
B. 14
C. 7
D. 6
二、閲讀程序題
1、int x=6, y=7;
printf(“%d,”,x++); printf(“%dn”,++y);
程序的輸出結果是__________。
2、float f=3.1415927;
printf(“%f,%5.4f,%3.3f”,f,f,f);
則程序的輸出結果是__________。
3、a=3;
a+=(a<1)?a:1; printf(“%d”,a);
結果是__________。
4、main( )
{ int a[5]={2,4,6,8,10},*P,* *k;
p=a; k=&p;
printf("%d,",*(p++));
printf("%dn",* *k); }
程序的輸出結果是__________。
5、 main()
{int a,b;
for (a=1,b=1;a<=100;a++)
{ if(b>=20) break;
if(b%3==1)
{b+=3; continue; }
b-=5; } }
程序的輸出結果a的值為__________。
三、程序填空題
1、求主次對角線之和。
main()
{static int a[ ][3]={9,7,5,1,2,4,6,8};
int I,j,s1=0,s2=0;
for(I=0;I<3;I++)
for(j=0;j<3;j++)
{if(__________)
s1=s1+a[I][j];
if( __________ )
s2=s2+a[I][j];
}
printf(“%dn%dn”,s1,s2);
}
2、從鍵盤上輸入10個數,求其平均值。
main()
{int i;
float f,sum;
for(i=1,sum=0.0;i<11;i++)
{__________;
__________ ;
}
printf(“average=%fn”,sum/10);
}
3、以下程序是建立一個名為myfile的文件,並把從鍵盤輸入的字符存入該文件,當鍵盤上輸入結束時關閉該文件。
#include
main()
{
FILE *fp;
char c;
fp=__________;
do
{
c=getchar();
fputs(c,fp);
}while(c!=EOF);
__________; ;
}
四、編程題
1、三個整數a、b、c,由鍵盤輸入,輸出其中最大的數。
2、從鍵盤輸入的10個整數中,找出第一個能被7整除的數。若找到,打印此數後退出循環;若未找到,打印“not exist”。
3、有一個一維數組,內放10個學生成績,寫一個函數,求出平均分。
4、有N個學生,每個學生的信息包括學號、性別、姓名、四門課的成績,從鍵盤上輸入N個學生的信息,要求輸出總平均成績最高的學生信息,包括學號、性別、姓名和平均成績。
- 文章版權屬於文章作者所有,轉載請註明 https://xuezhezhai.com/zh-hk/jsj/erji/k91x5o.html