易错题整理
1. void main() {
float y=3.667;
printf(\}
结果:* 4*
2.void main() {
int x=1,y=2;
printf(\ printf(\ printf(\}
结果:1, 3, 2,3
3.void main()
{ int x=0,y=0,z=0; do {
switch(y++) {
case 1:x++;break; case 3:x+=3;break;
default:x=x%2;continue; } z++; }
while(y<5);
printf(\}
结果:x=0, y=5, z=2
4. 若有定义和语句:double x=34213.6894; printf(\则下列说法真确的是:
A. 输出值为*3.42e+04* B. 输出值为*3.42e+004*
C. 输出值为*34.21e+04* D. 输出格式符宽域不够,不能输出值 答案:B
5. void main() {int a=2,b=5;
printf(\
1
}
结果为:
A. a=%2,b=%5 B. a=2,b=5
C. a=%%d,b=%%d D. a=%d,b=%d 答案:D
6. 以下叙述中正确的是
A)用C程序实现的算法必须要有输入和输出操作
B)用C程序实现的算法可以没有输出但必须要有输入 C)用C程序实现的算法可以没有输入但必须要有输出 D)用C程序实现的算法可以既没有输入也没有输出
7. 结构化程序由三种基本结构组成,三种基本结构组成的算法
A) 可以完成任何复杂的任务 B) 只能完成部分复杂的任务 C) 只能完成符合结构化的任务 D) 只能完成一些简单的任务
8.以下选项中可作为C语言合法常量的是 A)-80. B)-080
C)-8e1.0 D)-80.0e01 9.将十进制数23588转化成二进制: 错:#include
void main() {
unsigned long a=23588,n=0;/*数据类型长度可能不够*/ while(a)
{n=10*n+a%2; /*首次a%2可能为0 */ a=a/2;
}
while(n)
{printf(\ n=n/10; }
printf(\}
对:#include
void main() {
int a=23588,n=0,b[20]; while(a)
{b[n++]=a%2; a/=2; }
2
for(n--;n>=0;n--)
printf(\ printf(\}
10.设有如下函数: func(float a)
{printf(“%d\\n”,a*a); }
则函数的类型是:
A.无法确定 B.int C.float D.void (在C语言中,若对函数类型未加显示地说明,则函数的隐含类型为int型)
11. 宏定义#define E 2.71828中,宏名“E”代替一个 字符串 。
12.下面的叙述中,错误的是:
A.#include命令可以包含扩展命名为“.c”的文件
B.#include“test\\\\test.h”是一个正确的文件包含命令 C.#include>中可以包含路径
D.使用#include>比#include“?”节约编译时间
(#include命令的包含文件可以带目录,并且目录的书写格式必须符合操作系
统的习惯,由于它不是C语言的字符串,不能用“\\\\”来表示“\\”)
13.下列程序的结果是: #include
{int a=1,b=2; PR(D1,a); PR(D2,a,b); }
A. 1 B. 1 C. 1 D.程序错误,值为任意值 12 1 2 12
3
14. 下列程序的结果是: #include
#define PR(a) printf(\ #define PRINT(a) PR(a);printf(\ main()
{int i,a=1;
for(i=0;i<3;i++) PRINT(a+i); printf(\ }
结果为:1 2 3 ok!
15.以下可以讲char型变量s中的大小写字母进行转化(即大写改小写,小写改大写)的语句是:
A.s=s^32 B.s=s&32 C.s=s|32 D.s=s+32
16.以下程序的输出结果是: main()
{char a=0xf0,b=03,c; c=~a&020>>b;
printf(\ }
结果:2 (注意运算符优先级高低)
17.若有以下定义和语句: int *p,i=1;
double *w,a=3.5; p=&i; w=&a;
在执行了p=(int *)w;语句后,*p的值为:
A.4 B.3.5 C.3 D.一个整数 注意:double类型的数据与int类型数据存放的机制不同,因此无法估计此证书的确切值
18.已知函数说明语句:void *f();则它的含义是: A.函数f的返回值是一个通用型指针
B.函数f的返回值可以是任意的数据类型 C.函数f无返回值
D.指针f指向一个函数,该函数无返回值
19.已知int a[]={1,2,3,4},y,*p=&a[1]; y=(*--p)++;则y的值是
4
相关推荐: