C语言程序设计
习题集
桂林电子科技大学
2010.6
基础知识
一 单项选择题(每题2分,共44分)
1 以下叙述正确的是___。
A C程序基本组成单位是语句           B C程序每一行只能写一个语句
C 简单C语句必须以分号作为结束符    D 注释语句可以嵌套
2 一个C语言程序是从___开始执行的。
A 程序中第一个函数                    B 名为main的函数
C 包含文件(头文件)的第一个函数      D 程序中的第一个语句
3 请选出合法的C语言赋值语句___。
A a=b=58          B i++;            C a=58,b=58      D k=int(a+b);
4 下面标识符中,合法的用户标识符是 ___。
A 1abc            B include          C a-b-c123        D char
5 以下所列的C语言整形常量中,正确的是___。
A 0x10            B 0976            C 076L            D 01ff
6 C语言中下列运算符的操作数必须为整型的是___。
A %                B ++              C /              D =
7 设a和b均为int型变量,则执行以下语句后的输出为___。
int a=20;  int b=3;  printf("%d\n",a+=(b%=2));
A 20              B 21              C 0              D 23
8 已知int i;,则执行语句 i=2.6;后,i的值为___。
A 2                B 3                C 2.6            D 不确定
9 以下合法的字符常量为___。
A 'ab'              B '\482'          C '\'              D '\xaf'
10 若y为int型变量,则执行以下语句后,y的值是___。
y=8;  y+=y-=y*y;
A 64              B –56            C –112            D –48
11 以下合法的浮点型常量是___。
A e-3              B 1.5e+2.4        C 3.14e+2L        D 3.14 e +5
12 设int数据占用两个字节,float数据占用四个字节,double数据占用8个字节,且已知float a=2;int b=3;则执行下列语句输出为___。
printf("%d",sizeof(a*b)+2/5);
A 4                B 8                C 6                D 7
13 设int型占2个字节,且int i=-2;,则语句printf("%u",i);的输出结果为___。
A 0                B -2              C 65534            D 65535
14  若x、y、z均为整型常量,且a=100,则执行下列语句后的z值为___。
x=a++; y=--a; z=x+y-a--;
A 100              B 400              C 200              D 300
15 若有以下定义和语句:int u=010,v=0x10,w=10,printf("%d,%d,%d\n",u,v,w);,则输出结果是___。
A 8,16,10          B 10,10,10        C 8,8,10          D 8,10,10
16 设x、y为int型变量,则执行下列语句后,y的值是___。
x=5;  y=x++*x++;  y=--y*--y;
A 529              B 2401            C 1209            D 625
17 假设在程序中a,b,c 均被定义成整型,并且已赋大于1的值,则下列能正确表示代数式
A 1/a*b*c          B 1/(a*b*c)        C 1/a/b/(float)c  D 1.0/a/b/c
18 若有定义:int a=8,b=5,c;char d='A';,则执行语句c=a/b+d%a+0.5;c的值为___。
A 2                                  B 2.5
C 3                                  D 类型不一致,无法计算,编译出错
19 在有以下程序:
main()
{  int i=10,j=1;
i=i+j++;
printf("%d,%d,%d\n",i++,++j,i);
}
执行后输出结果是___。
A 12,3,11          B 12,2,11          C 11,3,11          D 12,3,12
20 已知int i=65;,则putchar(i);printf("%d",i);printf("%c",i);的输出结果为___。
A A,65,A          B 65,65,A          C A,A,65          D A,A,A
21 已知int y,a,i=1;,则语句printf("%d,%d",-i++,(y=a=3.6*3));的输出结果为___。
A -1,10        B -2,1.8           C 0,3            D 1,18
22 有以下程序:
main()
{  char a,b,c,d;
a='\';    b='\xbc';
c='\0xab'; d='\023';
printf("%c%c%c%c\n",a,b,c,d);
}
编译时出现错误,以下叙述中正确的是___。
A 程序中只有a='\';语句不正确          B b='\xbc';语句不正确
C d='\023';语句不正确                  D a='\';c='\0xab';语句都不正确
二 填空题(第1题2分,其余每题3分,共56分)
1 设x为int型变量,请写出描述“x是偶数”的表达式是___。
2 已知scanf("a=%d,b=%d,c=%d",&a,&b,&c);,若从键盘输入2、3、4三个数分别作为变量abc的值则正确的输入形式是___。
3 设有语句int a=3;,则执行了语句 a+=a-=a*a后,变量a的值是___。
4 以下程序的输出结果是___。
main()
{  int a=-10,b=-3;
printf("%d\n",-a++);
printf("%d\n",-a+b);
}
5 以下程序的输出结果是___。
main()
{  char c;
c=0362;
printf("%d\n",c);
}
6 以下程序段(n所赋的是八进制数执行后输出结果是___。
int m=32767,n=032767printf("%d,%o\n",m,n);
7 字符串"\\name\\\101ddress\b\xaf"的长度为:___。
8 有以下程序段:
int m=0,n=0;  char c='a';
scanf("%d%c%d",&m,&c,&n);
printf("%d,%c,%d\n",m,c,n);
若从键盘上输入:10A10<回车>,则输出结果是___。
9 以下程序的输出结果___。
main()
{  printf("%d,%o,%x\n",10,10,10);
printf("%d,%d,%d\n",10,010,0x10);
printf("%d,%x\n",012,012);
}
10 设abc为整形变量,且a=2b=3c=4,则执行完语句 a*=16+(b++)-(++c);之后,变量a的值为___。
11 以下程序的输出结果为___。
main()
{  int x=023;
printf("%x\n",--x);
}
12 以下程序的结果为___。
main()
{  int a=2,b=3,c,d;
c=一个完整的c语言程序(a++)+(a++)+(a++);
d=(++b)+(++b)+(++b);
printf("a=%d  c=%d\n",a,c);
printf("b=%d  d=%d\n",a,d);
}
13 以下程序
main()
{  char ch1,ch2,ch3;
scanf("%c%c%c",&ch1,&ch2,&ch3);
printf("%c%c%c%c%c",ch1,'#',ch2,'#',ch3);
}
当输入ABC时运行结果为  【1】  当输入A BC时运行结果为  【2】 
14 若有定义:float x;,以下程序段的输出结果是___。
x=5.16894;
printf("%f\n",(int)(x*1000+0.5)/(float)1000);
15 以下程序的功能是:输入一个小写字母,输出对应的大写字母,将程序补充完整。
main()
{  char  ch;
  【1】          /*  从键盘输入一个小写字母  */
  【2】          /*  将该字母转换为大写字母  */
  【3】          /*  输出转换后的结果        */
}
16 当运行以下程序时,在键盘上从第一列开始输入9876543210↙(此处↙代表回车),则程序的输出结果是___。
main()
{  int  a;    float  b,c;

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。