非计算机专业计算等级考试C语言练习题
C语言笔试练习题
一、单选题:(请选择一个正确结果 )
1.下列语句的输出为( )
int x=-1;
printf("%d,%u,%O",x,x,x,);
A)-1,65535,177777 B)-1,-1,-1
C)-1,32767,-17777 D)-1,32768,177777
2.若x,y为实数类型的变量,要判断x,y相等,最好使用下列关系表达式( C )
A)x= =y;B)x-y= =0;
C)fabs(xy) 〈1e-8;D)abs(x-y)〈1e-8;
3.若有以下的定义、说明和语句,则值为101的表达式是( )。
struct cw
{int a ;
int *b;
} *p;
int x0[]={11,12},x1[]={31,32};
static struct cw x[2]={100,x0,300,x1};
p=x;
A)*p-〉b B)p-〉a
C)+ +(p->a)D)(p+ +)-〉a
4.若有以下定义和语句,则输出结果是( B )。
char *sp="\t\b\\\0English\n";
printf("%d", strlen(sp));
A) 12B)3C)17D)13
5.有如下程序
void main()
{ int x=23;
do
{ printf("%d",x--);
}while(!x);
}
该程序的执行结果是( B )
A)321 B)23
C)不输出任何内容D)陷入死循环
6.若已定义x和y为double类型,则表达式x=2, y=x+10/4的值是( C )
A)2B)4C)4.0D)4.5
7.要将一个整数12000分别以ASCII码文件和二进制文件形式存放,各自所占的存储空间数分别是( )字节。
A)5和2 B)2和5 C)2和2 D)5和5
8.对于类型相同的两个指针变量之间,不可进行的运算是( )
A)= =B)=C)+D)-
9.sizeof(’a’+10.4)的值为( )类型。
A)int B)floatC)doubleD)char
10.若有定义int a=3; 则执行完printf("%d",-a--);语句后a的值为( B )
A)-3B)2C)-2D)3
11.若有float x=2.5;y=4.7;int a=7; 则表达式x+a%3*(int) (x+y)%2/4的值为( D )
A)4.0B)3.0C)2.75D)2.5
12.语句prin tf("s=%-5.3s","computer"); 的输出结果是( B )
A)s= com B)s=comC)s= terD)s=ter
13.int a=3,b=4,c=5; 执行完表达式a+ +>--b&&b++>c--&&++c后,a,b,c的值分别为( )
A)3 4 5B)4 3 5C)4 4 4D)4 4 5
14.int x=3,y=1; 则条件表达式x>y?1:2.3的值为( A )
A)1B)1.0C)2.3D)2
15.若有定义int i=2,a[10],*p=&a[i]:则与*p++等价的是( A )
A)a[i+ +] B)a[i]+ +C)a[i]D)a[+ +i]
16.以下程序的输出结果是( C ):
void main( )
{ int a=5,*p1,**p2;
p1=&a,p2=&p1;
(*p1)+ +;
printf("%d\n",**p2);
}
A)5B)4C)6D)不确定
17.以下程序的输出结果是( )
int x=3,y=4;
void main( )
{ int x,y=5;
x=y+ +;
printf("%d",x);
}
A)3B)4C)5D)6
18.若#include后面的文件名用双引号括起来,寻找被包含文件的方式是( A )
A)先按系统设定的标准方式查找,再在当前目录中查找
B)先在当前目录中查找,再按系统设定的标准方式查找
C)只在当前目录中查找
D)只按系统设定的标准方式查找
19.程序设计的步骤一般分为:分析问题、构造模型、设计与描述算法、编写程序、调试程序和( )
A)数据设计B)算法分析
C)编制程序说明文档D)编译
20.表达式11&10的结果用十进制表示为( )。
A)11B)3C)1D)10
21.结构化程序语言的三种基本结构是( A )
(A)顺序结构、选择结构、循环结构