- 相關(guān)推薦
C語言自測試題
引導(dǎo)語:C語言的難度,是相對于個人而言的,以下是小編整理的C語言自測試題,歡迎參考閱讀!
一、選擇題:(20分,每題2分)
1.以下不正確的C語言標(biāo)識符是 。
A. ABC
B. abc
C. a_bc
D. ab.c
2.C程序是由 構(gòu)成的。
A. 主程序與子程序
B. 主函數(shù)與若干子函數(shù)
C. 一個主函數(shù)與一個其它函數(shù)
D. 主函數(shù)與子函數(shù)
3.以下說法中正確的是:。
A. 在C語言中,實參與其對應(yīng)的形參各占獨立的存儲單元;
B.在C語言中,實參與其對應(yīng)的形參共占同一個存儲單元;
C.在C語言中,只有當(dāng)實參與其對應(yīng)的形參同名時,才共占同一個存儲單元;
D. 在C語言中,形參是虛擬的,不占存儲單元。
4.設(shè)n=3;則n++的結(jié)果是 。
A. 2 B. 3 C. 4 D. 5
5.設(shè)整型變量n=10,i=4,則賦值運算n%=i+1執(zhí)行后,n的值是 。
A. 0B. 1 C. 2 D. 3
6.凡是函數(shù)中未指定存儲類別的局部變量其隱含的存儲類別是 。
A. 自動(auto)
B. 靜態(tài)(static)
C. 外部(extern)
D. 寄存器(register)
7.在while(x)語句中的x與下面條件表達(dá)式等價的是: 。
A. x= =0B. x= =1
C. x!=1D. x!=0
8.若有以下說明和語句:
struct worker
{
int no;
char *name;
} work, *p=&work;
則以下引用方法不正確的是 。
A. work.no
B. (*p).no
C. p->no
D. work->no
9.以下對二維數(shù)組進(jìn)行正確初始化的是 。
A. int a[2][3]={{1,2},{3,4},{5,6}};
B. int a[][3]={1,2,3,4,5,6};
C.int a[2][]={1,2,3,4,5,6};
D.int a[2][]={{1,2},{3,4}};
10.二維數(shù)組a有m列,則在a[i][j]之前的元素個數(shù)為: 。
A. j*m+i
B. i*m+j
C. i*m+j-1
D. i*m+j+1
二、給出下列程序的運行結(jié)果:(20分,前四題每題3分,后兩題每題4分)
1.
#include
main()
{
int i=16,j,x=6;
j=i+++1;
x*=i=j;
printf(“%d,%d ”,j,x);
}
運行結(jié)果是:
2.
#include
#include
main()
{
int a=1,b=4,c=2;
float x=10.5,y=4.0,z;
z=(a+b)/c+sqrt((double)y)*1.2/c+x;
printf(“%f ”,z);
}
運行結(jié)果是:
3.
#include
main()
{
int a,b,c,d;
a=c=0;
b=1;
d=20;
if(a) d=d-10;
else if(!b)
if(!c) d=25;
else d=15;
printf(“d=%d ”,d);
}
運行結(jié)果是:
4.
main()
{
int i=10;
switch(i){
case 9: i+=1;
case 10: i+=1;
case 11: i+=1;
default : i+=1;
}
printf(“%d”,i);
}
運行結(jié)果是:
5.
#include
main()
{
int a[]={1,2,3,4},i,j,s=0;
j=1;
for(i=3;i>=0;i--)
{
s=s+a[i]*j;
j=j*10;
}
printf("s=%d ",s);
}
運行結(jié)果是:
6.
func(int x)
{x=20; }
main( )
{
int x=10;
func(x);
printf(“%d”,x);
}
運行結(jié)果是:
三、閱讀程序,在標(biāo)有下劃線的空白處填入適當(dāng)?shù)谋磉_(dá)式或語句,使程序完整并符合題目要求。(20分,每空2分)
1.已知能被4整除而不能被100整除的或者能被400整除的年份是潤年,則判斷某一年是否是潤年的程序如下:
main( )
{
int year,leap;
scanf("%d",&year);
if()
leap=1;
else leap=0;
if() printf("是潤年");
else printf("不是潤年");
}
2.將100至200間不能被3整除的數(shù)輸出:
main( )
{
int n;
for(n=100;n<=200;n++)
{
if(n%3==0) ;
printf("%d ",n);
}
}
3.判斷m是否是素數(shù)
#include
main()
{
int m,i,k;
scanf("%d",&m); k=sqrt(m);
for(i=2;i<=k;i++)
if(m%i==0) ;
if(i>=k+1) printf("%d is a primenumber ",m);
else printf("%d is not a prime number ",m);
}
4.給定一3*4的矩陣,求出其中值最大的元素的值,及所在的行列號。
main()
{
int i,j,row=0,colum=0,max;
static int a[3][4]={{1,2,3,4}{9,8,7,6}{10,-10,-4,4}};
;
for(i=0;i<=2;i++)
for(j=0;j<=3;j++)
if(a[i][j]>max)
{
max=a[i][j];
;
;
}
printf("max=%d,row=%d,colum=%d ",max,row,colum);
}
5.下面函數(shù)的功能是將兩個字符串s和t連接起來。
char *conj(char *s, char *t)
{
char*p=s;
while(*s);
while(*t)
{
*s=;
s++;
t++;
}
*s=’ 主站蜘蛛池模板: 驻马店市| 浦县| 红安县| 元氏县| 周宁县| 平顶山市| 千阳县| 宁夏| 璧山县| 邵东县| 夏津县| 舞钢市| 绥棱县| 庐江县| 耒阳市| 顺昌县| 文登市| 建湖县| 长宁区| 安西县| 赫章县| 潮安县| 乐昌市| 南丰县| 四平市| 高陵县| 彭泽县| 寿阳县| 横山县| 宣恩县| 克什克腾旗| 东平县| 中宁县| 上饶县| 临夏市| 田阳县| 集贤县| 合水县| 普陀区| 乡城县| 九台市|