C/C++笔试题

来源:互联网 发布:网站内链优化 编辑:程序博客网 时间:2024/06/17 06:10
1、以下程序的运行结果是()
[cpp] view plain copy
  1. int main(void)  
  2. {  
  3.     printf("%s , %5.3s\n","computer","computer");  
  4.     return 0;  
  5. }  
A、computer , puter                                      B、computer , com
C、computer , computer                                D、computer , compu.ter  
2、以下程序的功能是()

[cpp] view plain copy
  1. #include<stdio.h>  
  2. int main(void)  
  3. {  
  4.     FILE *fp;  
  5.     long int n;  
  6.     fp = fopen("wj.txt","rb");  
  7.     fseek(fp , 0 , SEEK_END);  
  8.     n = ftell(fp);  
  9.     fclose(fp);  
  10.     printf("%ld",n);  
  11. }  
A、计算文件wj.txt内容的字节数
B、计算文件wj.txt的终止地址
C、计算文件wj.txt的起始地址
D、将文件指针定位到文件末尾
3、若输入B,则以下程序运行后的输出结果是()

[cpp] view plain copy
  1. int main(void)  
  2. {  
  3.     char grade;  
  4.     scanf("%c",&grade);  
  5.     switch(grade)  
  6.     {  
  7.     case 'A':  
  8.         printf(">=85");  
  9.     case 'B':  
  10.     case 'C':  
  11.         printf(">=60");  
  12.     case 'D':  
  13.         printf("<60");  
  14.     default:  
  15.         printf("error.");  
  16.     }  
  17. }  
A、error.
B、>=60
C、>=85
D、>=60<60error.
4、以下程序的输出结果是()

[cpp] view plain copy
  1. int power(int x , int y);  
  2. int main(void)  
  3. {  
  4.     float a = 2.6 , b = 3.4;  
  5.     int p;  
  6.     p = power((int)a , (int)b);  
  7.     printf("%d\n",p);  
  8.     return 0;  
  9. }  
  10. int power(int x , int y)  
  11. {  
  12.     int i , p = 1;  
  13.     for(i = y ; i > 0 ; i--)  
  14.         p *= x;  
  15.     return p;  
  16. }  
A、27                       B、9                             C、8                                  D、81
5、
以下程序段的输出结果是()
[cpp] view plain copy
  1. int p = 1234;  
  2.     printf("%2d\n",p);  
A、12                       B、34                            C、1234                                 D、提示出错、无结果
6、以下程序运行后的输出结果是()
[cpp] view plain copy
  1. int main(void)  
  2. {  
  3.     int a;  
  4.     char c = 10;  
  5.     float f = 100.0;  
  6.     double x;  
  7.     a = f /= c *= (x=6.5);  
  8.     printf("%d %d %3.1f %3.1f\n",a,c,f,x);  
  9.     return 0;  
  10. }  
A、1     65     1         6.5
B、1     65     1.5      6.5
C、1     65     1.0      6.5
D、2     65     1.5      6.5

7、以下程序的运行结果是()主要考察运算符的优先级
[cpp] view plain copy
  1. int main(void)  
  2. {  
  3.     int x , y , z;  
  4.     x = 0 , y = 1 , z = 3;  
  5.     x = ++y <= x || x+y != z;  
  6.   
  7.     printf("%d,%d\n",x , y);  
  8.     return 0;  
  9. }  
A、1 ,2                       B、1 , 1                                   C、0,2                              D、0,1
8、以下语句的输出结果是()主要考察逗号表达式
[cpp] view plain copy
  1. int main(void)  
  2. {  
  3.     int x = 10 , y = 3 , z;  
  4.   
  5.     printf("%d\n",z = (x%y , x/y));  
  6.     return 0;  
  7. }  
A、4              B、0                   C、3                      D、1
逗号表达式的一般形式:
表达式1,表达式2,表达式3......表达式n
它的值为表达式n的值。
括号表达式要求按顺序逐一计算各个子表达式,并以最后一个子表达式的值作为括号表达式的结果,最后将该结果赋给变量。
printf("%d %d %d",(a,b,c),b,c);
则(a,b,c)是一个逗号表达式,它的值等于c的值。括号内的逗号不是参数间的分隔符而是逗号运算符。括号中的内容是一个整体,作为printf函数的第一个参数。

9、设有语句  char a = '\72'; 则变量a()
A、包含2个字符                                          B、说明不合法
C、包含1个字符                                          D、包含3个字符

10、已知数据表A中每个元素距其最终位置不远,为节省时间,应该采用的算法是()
A、直接选择排序
B、堆排序
C、快速排序
D、直接插入排序
11、以下程序段的运行结果是()
[cpp] view plain copy
  1. int main(void)  
  2. {  
  3.     char aa[][3] = {'a','b','c','d','e','f'};  
  4.     char (*p)[3] = aa;  
  5.     p++;  
  6.   
  7.     printf("%c\n",**p);  
  8.     return 0;  
  9. }  
A、b                        B、a                    C、c                    D、d
12、
在C语言中,下列()是合法的标示符。
A、4x                   B、1P234
C、COUNT            D、short

13、C语言中的标识符只能有字母、数字和下划线三种字符组成,且第一个字符()
A、必须为字母
B、必须为字母或下划线
C、必须不是字母或下划线
D、必须为下划线

14、下面程序的输出是()
[cpp] view plain copy
  1. int main(void)  
  2. {  
  3.     enum team { my , your = 9 , his , her = his + 3};  
  4.   
  5.     printf("%d %d %d %d\n",my , your , his , her);  
  6.     return 0;  
  7. }  
A、0     9    10   13                 B、0     8    11   12
C、0     8    10   12                 D、0     8    12   9
15、
以下程序
[cpp] view plain copy
  1. int main(int argc, char** argv)   
  2. {  
  3.     int n = 0 , i;  
  4.     for(i = 1 ; i < argc ; i++)  
  5.         n = n * 10 + *argv[i]-'0';  
  6.     printf("%d\n",n);  
  7.     return 0;  
  8. }  
经编译链接生成可执行文件tt.exe,若运行时输入以下命令行   tt   12   345   678,则程序运行的输出结果是()
A、136              B、12345              C、12345678               D、12

解析:主函数的第一个参数argc为整型参数,记下从命令行输入参数的个数;第二个参数argv是一个字符型的指针数组,它的每一个元素分别指向命令行输入的各字符串。在本例中argc的值为4,argv[0]指向字符串“tt”,argv[1]指向字符串“12”,argv[2]指向字符串“345”, argv[3]指向字符串“678”。程序中,通过一个for循环,遍历了后面的三个参数字符串,每次将n自乘10,然后累加argv[i]-‘0’,即第i个参数字符串的首字符减去‘0’。  一个数字字符减去‘0’字符,即可得到这个数字字符的实际数值,因此三次循环的结果是让n的值变为136,故本题应该选择A。
16、若已定义:int a[9],*p = a; 并在以后的语句中未改变p的值,不能表示a[1]地址的表达式是()

A、++p            B、a+1            C、p+1            D、a++

17、若执行下面的程序时,从键盘上输入5,则输出是()

[cpp] view plain copy
  1. int main(int argc, char** argv)   
  2. {  
  3.     int x;  
  4.     scanf("%d",&x);  
  5.     if(x++ > 5)  
  6.         printf("%d\n",x);  
  7.     else  
  8.         printf("%d\n",x--);  
  9.     return 0;  
  10. }  
A、7                 B、4                   C、6                  D、5
18、
已知有如下的变量定义,那么第二行的表达式的值是多少()主要考察运算符的优先级
[cpp] view plain copy
  1. int main(void)   
  2. {  
  3.     int x = 3 , y = 4 , z = 5;  
  4.     !(x + y) + z-1 && y + z/2;  
  5.     return 0;  
  6. }  
A、6             B、2               C、0                  D、1
19、
下列运算符函数中,肯定不属于类Value的成员函数是()
A、Value operator/(Value);
B、Value operator-(Value,Value);
C、Value operator+(Value);
D、Value operator*(int);

20、以下关于函数模板和模板函数的描述中,错误的是()
A、函数模板是定义重载函数的一种工具
B、模板函数在编译时不生成可执行代码
C、函数模板是一组函数的样板
D、模板函数是函数模板的一个实例

21、以下关于文件操作的描述中,不正确的是()
A、关闭文件的目的之一是释放内存中的文件对象
B、关闭文件的目的之一是保证将输出的数据写入硬盘文件
C、文件读写过程中,程序将直接与磁盘文件进行数据交换
D、打开文件的目的是使文件对象与磁盘文件建立联系

22、在重载一运算符时,若运算符函数的形参表中没有参数,则不可能的情况是()
A、该运算符函数是类的友元函数
B、该运算符函数有一个隐含的参数this
C、该运算符函数是类的成员函数
D、该运算符是一个单目运算符
23、下列哪一个是析构函数的特征()
A、析构函数定义只能在类体内
B、一个类中只能定义一个析构函数
C、析构函数名与类名不同
D、析构函数可以有一个或多个参数

24、数据流程图(DFD图)是()
A、软件概要设计的工具
B、软件详细设计的工具
C、结构化方法的需求分析工具
D、面向对象方法的需求分析工具

25、执行 int a = ( 1 , 3 , 11); int b = a; 后,b的值是多少?
A、11
B、1
C、3
D、15
E、{ 1 , 3 , 11}
26、设a=1,b=2,则(a++)+b 和 a+++b 这两个表达式的值分别是()
A、4 , 4
B、3 , 4
C、4 , 3
D、3 , 3
27、如果A类型是B类型的子类型,则A类型必然适应于B类型
A、错                B、对
28、条件语句不能作为多路分支语句。
A、对                B、错

29、下列while循环的次数是()
[cpp] view plain copy
  1. void main()  
  2. {  
  3.     while(int i = 0)  
  4.         i--;  
  5. }  
A、无限
B、0
C、1
D、5
30、关于纯虚函数,下列表述正确的是()
A、派生类必须实现基类的纯虚函数
B、纯虚函数的声明总是以”=0“结束
C、纯虚函数是给出实现版本(即无函数体定义)的虚函数
D、含有纯虚函数的类一定是派生类
31、下列静态数据成员的特性中,()是错误的
A、引用静态数据成员时,要在静态数据成员名前加<类名>和作用域运算符
B、说明静态数据成员时前边要加关键字static来修饰
C、静态数据成员在类体外进行初始化
D、静态数据成员不是所有对象所共有的
32、关键词explicit的作用是什么?
A、它使一个默认构造函数的声明变为强制性的
B、它可以使一个变量存在主内存中而不是处理器的缓存中
C、它可以防止单参数的构造函数被用于隐式转换

33、下列输出字符‘A’的方法中,()是错误的
A、char A = 'A';   cout<<A;
B、cout<<'A';
C、cout<<put('A');
D、cout.put('A');
34、对于int *pa[5]; 的描述,()是正确的。
A、pa是一个具有5个元素的指针数组,每个元素是一个int类型的指针;
B、pa[5]表示某个数组的第5个元素的值;
C、pa是一个指向数组的指针,所指向的数组是5个int类型的元素;
D、pa是一个指向某个数组中第5个元素的指针,该元素是int类型的变量;
35、C++中关于函数不正确的是()
A、函数调用语句必须写在函数定义的前面
B、函数可以没有返回值
C、函数声明就是原型声明
D、不允许嵌套定义
A应该修改为:函数调用语句必须写在函数声明的前面

36、若二叉树中有n个度为2的结点,则该二叉树中的叶子结点数为()
A、n-1
B、n+1
C、2n
D、n/2

37、在多文件结构的程序中,通常把含有main()函数的文件称为()
A、主文件
B、头文件
C、实现文件
D、程序文件
38、在以下一组运算符中,优先级最高的运算符是()
A、 &&
B、 =
C、 <=
D、 %

39、关于read()函数的下列描述中,()是对的。
A、该函数只能从键盘输入中获取字符串
B、该函数只能按规定读取所指定的字符数
C、该函数只能用于文本文件的操作中
D、该函数所获取的字符多少是不受限制的
40、有如下程序:
[cpp] view plain copy
  1. #include<iostream>  
  2. using namespace std;  
  3.   
  4. class MyClass  
  5. {  
  6. public:  
  7.     MyClass(int i = 0)  
  8.     {  
  9.         cout<<i;  
  10.     }  
  11.     MyClass(const MyClass &x)  
  12.     {  
  13.         cout<<2;  
  14.     }  
  15.     MyClass& operator=(const MyClass &x)  
  16.     {  
  17.         cout<<3;  
  18.         return *this;  
  19.     }  
  20.     ~MyClass()  
  21.     {  
  22.         cout<<4;  
  23.     }  
  24. };  
  25.   
  26. int  main()   
  27. {  
  28.     MyClass obj1(1) , obj2(2) , obj3(obj1);  
  29.     return 0;  
  30. }  
运行时的输出结果是()
A、11214444
B、11114444
C、122444
D、11214445
E、121444
41、以下程序段的输出结果是()
[cpp] view plain copy
  1. #include<iostream>  
  2. using namespace std;  
  3.   
  4. class A  
  5. {  
  6. public:  
  7.     A(int i )  
  8.     {  
  9.         cout<<"A ";  
  10.     }  
  11.     ~A()  { }  
  12. };  
  13. class B  
  14. {  
  15. public:  
  16.     B(int j )  
  17.     {  
  18.         cout<<"B ";  
  19.     }  
  20.     ~B()  { }  
  21. };  
  22. class C  
  23. {  
  24. public:  
  25.     C(int k )  
  26.     {  
  27.         cout<<"C ";  
  28.     }  
  29.     ~C()  {    cout<<"~C ";   }  
  30. };  
  31.   
  32. class D : public C  
  33. {  
  34. public:  
  35.     D(int i , int j , int k ) : a(i) , b(j) , C(k)  
  36.     {  
  37.         cout<<"D ";  
  38.     }  
  39.     ~D()  {    cout<<"~D ";   }  
  40. private:  
  41.     B b;  
  42.     A a;  
  43. };  
  44.   
  45. int  main()   
  46. {  
  47.     C *pc = new D(1 , 2 , 3);  
  48.     delete pc;  
  49.     return 0;  
  50. }  
A、A  B  C  D ~D
B、A  B  C  D ~C
C、C  B  A  D ~D
D、C  B  A  D ~C
42、关于运算符重载,下列说法正确的是()
A、重载时,运算符的结合性可以改变
B、重载时,运算符的优先级可以改变
C、重载时,运算符的功能可以改变
D、重载时,运算符的操作数个数可以改变

43、下面哪一个不是由标准模板库提供的合法的哈希表?
A、hash_multiset
B、hash_table
C、hash_set
D、hash_multimap
E、hash_map
44、int x = 2 , y = 3 , z = 4; 则表达式!x+y>z的值为()
A、1
B、FALSE
C、TRUE
D、0
45、下面的程序段的输出结果是()
[cpp] view plain copy
  1. void main()  
  2. {  
  3.     char *x = "abcd";  
  4.     x += 2;  
  5.     cout<<x;  
  6. }  
A、指针变量x的地址
B、字符c的地址
C、c
D、cd
46、下面对于友元函数的描述正确的是()
A、友元函数不能访问类的私有成员
B、友元函数是类的成员
C、友元函数的实现必须在类的内部定义
D、友元函数破坏了类的封装性和隐藏性
47、内存释放的原则是谁申请谁释放()
A、错                        B、对
48、已知int a , *pa=&a; 输出指针pa十进制的地址值的方法是()
A、cout<<*pa;
B、cout<<long(&pa);
C、cout<<pa;
D、cout<<&pa;
49、被非静态成员函数访问的类的数据成员()
A、不可能是类的静态数据成员
B、只能是类的非静态数据成员
C、只能是类的静态数据成员
D、可以是非静态数据成员或静态数据成员
50、有如下程序
[cpp] view plain copy
  1. class Name  
  2. {  
  3.     char name[20];  
  4. public:  
  5.     Name()  
  6.     {  
  7.         strcpy(name , "");  
  8.         cout<<'?';  
  9.     }  
  10.     Name(char *fname)  
  11.     {  
  12.         strcpy(name , fname);  
  13.         cout<<'?';  
  14.     }  
  15. };  
  16. void main()  
  17. {  
  18.     Name names[3] = {Name("张三") , Name("李四") };  
  19. }  
运行此程序输出符号?的个数是()
A、1
B、2
C、0
D、3
51、假定AA是一个类,AA* abc() const是该类的一个成员函数的原型,若该函数返回this值,当用x.abc()调用该成员函数后,x的值()
A、可能被改变
B、已经被改变
C、收到函数调用的影响
D、不变
52、设散列表的存储空间大小为19,所用散列函数为h(key)=key mod 19,用开地址线性探查法解决碰撞。散列表的当前状态如下:0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 190 194 768 559 582 393 208.现要将关键码值75插入到该散列表中,其地址应该为()
A、1
B、5
C、11
D、15
53、以下定义语句中,错误的是()
A、char s[10] = "www";
B、int x[] = { 0 };
C、int k = 5 , n[k];
D、char a[2][2]={"x","y"};
54、关于构造函数的说法,不正确的是()
A、没有返回值
B、其名与类名完全相同
C、没有定义构造函数时,系统将不会调用它
D、它在对象被创建时由系统自动调用
55、下面程序段的运行结果是()
[cpp] view plain copy
  1. class point  
  2. {  
  3. public:  
  4.     static int number;  
  5. public:  
  6.     point()  
  7.     {  
  8.         number++;  
  9.     }  
  10.     ~point()  
  11.     {  
  12.         number--;  
  13.     }  
  14. };  
  15.   
  16. int point::number = 0;  
  17. void main()  
  18. {  
  19.     point *ptr;  
  20.     point A , B;  
  21.     {  
  22.         point *ptr_point = new point[3];  
  23.         ptr = ptr_point;  
  24.     }  
  25.     point c;  
  26.     delete []ptr;  
  27.     cout<<point::number<<endl;  
  28. }  
A、7
B、4
C、6
D、3
56、int *p[4]与选择项()中的说明等价。
A、int p[4]
B、int *p
C、int (*p)[4]
D、int *(p[4])
57、设a=2,b=3,c=2;计算 a+=b*=(++b-c++)中的a、b、c的值()
A、10、8、3
B、8、6、2
C、5、3、3
D、2、4、2

58、有如下程序
[cpp] view plain copy
  1. class BASE  
  2. {  
  3.     char c;  
  4. public:  
  5.     BASE(char n) : c(n)  
  6.     {  
  7.     }  
  8.     virtual ~BASE()  
  9.     {  
  10.         cout<<c;  
  11.     }  
  12. };  
  13. class DERIVED : public BASE  
  14. {  
  15.     char c;  
  16. public:  
  17.     DERIVED(char n) : BASE(n+1) , c(n)  
  18.     {  
  19.     }  
  20.     ~DERIVED()  
  21.     {  
  22.         cout<<c;  
  23.     }  
  24. };  
  25.   
  26. int main(void)  
  27. {  
  28.     DERIVED('X');  
  29.     return 0;  
  30. }  
执行上面的程序将输出
A、Y
B、XY
C、X
D、YX
59、下面关于面向对象语言的基本要素的描述中,正确的是()
A、继承性和聚合性
B、多态性和继承性
C、封装性和继承性
D、封装性和重载性
60、操作子本身是一个对象,它可以直接被提取符或插入符操作()
A、对                                 B、错
61、下面关于对象数组的描述中,错误的是()
A、对象数组的下标是从0开始的
B、对象数组的数组名是一个常量指针
C、对象数组的每个元素是同一个类的对象
D、对象数组只能赋初值,而不能赋值
62、假定p是具有int **类型的指针变量,则给p赋值的正确语句为()
A、p = new int[10];
B、p = new int;
C、p = new int *;
D、p = new int **
63、
下面程序的运行结果是()
[cpp] view plain copy
  1. union  
  2. {  
  3.     int i;  
  4.     char x[2];  
  5. }a;  
  6.   
  7. int main(void)  
  8. {  
  9.     a.x[0] = 10;  
  10.     a.x[1] = 1;  
  11.     cout<<a.i<<endl;  
  12.     return 0;  
  13. }  
A、266
B、0
C、1
D、256
64、
下面程序的输出结果是()
[cpp] view plain copy
  1. class Sample  
  2. {  
  3.     friend long fun(Sample s)  
  4.     {  
  5.         if(s.x < 2)  
  6.             return 1;  
  7.         else  
  8.             return s.x * fun(Sample(s.x-1));  
  9.     }  
  10. public:  
  11.     Sample(long a)  
  12.     {  
  13.         x = a;  
  14.     }  
  15. private:  
  16.     long x;  
  17. };  
  18.   
  19. int main(void)  
  20. {  
  21.     int sum = 0;  
  22.     for(int i = 0 ; i < 4 ; i++)  
  23.         sum += fun(Sample(i));  
  24.     cout<<sum<<endl;  
  25.     return 0;  
  26. }  
A、34
B、10
C、16
D、12
65、在横线处填上适当的语句,使下面的程序的执行结果是19 24 30 37 45()
[cpp] view plain copy
  1. int fun(int a)  
  2. {  
  3.     static int x = 10;  
  4.     int y = 1;  
  5.     x += a;  
  6.     a++;  
  7.     y++;  
  8.     return (x+y+a);  
  9. }  
  10. int main(void)  
  11. {  
  12.     int i = 3;  
  13.     while(i < 8)  
  14.         __________;  
  15.     cout<<endl;  
  16.     return 0;  
  17. }  
A、cout<<fun(i++)<<" ";
B、cout<<fun(i)<<" , ";
C、cout<<fun(i)<<" ";
66、下面不能把字符串:Hello!赋给数组b的语句是()
A、char b[10] ; b = "Hello!";
B、char b[10] ; strcpy(b , "Hello!");
C、char b[10]  = "Hello!";
D、char b[10] = {'H','e','l','l','o','!'};
只能在定义的时候使用=来初始化, 不能单独赋值。
选A,b为数组名,它是地址,是一个常量,不能被赋值。

67、若函数fun的函数头为:
 int fun(int i , int j)
且函数指针变量p指向函数fun的赋值语句是()
A、p = fun(i , j);
B、p = fun;
C、p = * fun;
D、p = &fun;

68、以下说法中正确的是()
A、#define 是C语句,而 printf不是
B、#define 和 printf 都是C语句
C、printf 是C语句,但 #define 不是
D、#define 和 printf 都不是C语句

69、若有以下定义: int x = 2 , y = 3; float i; 则以下符合C语言语法的表达式是()
A、x = (y == 1)
B、i%(-3)
C、x = x*3 = 2
D、i = float(x)
70、有以下程序
[cpp] view plain copy
  1. void main()  
  2. {  
  3.     int b[3][3] = {0,1,2,0,1,2,0,1,2};  
  4.     int i , j , t = 1;  
  5.     for(i = 0 ; i < 3 ; ++i)  
  6.     {  
  7.         for(j = i ; j <= 1 ; ++j)  
  8.             t += b[i][b[j][i]];  
  9.     }  
  10.     printf("%d\n",t);  
  11. }  
程序运行后的输出结果是()
A、1
B、9
C、3
D、10
E、2
71、在下面的循环语句中内存循环体s语句的执行总次数为()
for(int i = 0; i < n ; i++ )
for(int j = i ; j < n; j++)
s;
A、n^2
B、n(n+1)/2
C、(n+1)/2
D、n(n-1)/2
72、类example的析构函数为()
A、~example();
B、example();
C、example()
D、~example()
73、关于保护成员的说法正确的是()
A、在派生类中是私有的
B、在派生类中仍然是保护的
C、在派生类中是公有的
D、具有私有成员和公有成员的双重角色

74、计算函数参数顺序引起的二义性完全是由不同的编译系统决定的。
A、对
B、错

75、若有语句int a[10] = {0,1,2,3,4,5,6,7,8,9}, *p = a; 则()不是对a数组元素的正确引用。
A、*(*(a+i))
B、p[i]
C、a[p-a]
D、*(&a[i])

76、下列表达式中, ()是合法的。已知: double m = 3.2 ; int n = 3;
A、!m *= n
B、(m+n)|n
C、m = 5 , n = 3.1 , m+n
D、m<<2
77、若有以下说明: int a[12] = {1,2,3,4,5,6,7,8,9,10,11,12};char c = 'a' , d , g;
则数值为4的表达式是()
A、a['d'-'c']
B、a[g-c]
C、a['d'-c]
D、a[4]
78、read() 和 write()函数可以读写文本文件,也可以读写二进制文件。
A、错
B、对
79、在保护继承中,对于派生类的访问同于公有继承,而对于派生类的对象的访问同于私有继承。
A、错
B、对
80、设有以下结构体定义及其初始化,表达式p->score的结果是()
[cpp] view plain copy
  1. struct node  
  2. {  
  3.     int num;  
  4.     float score;  
  5. }stu[2]={101,91.5,102,92.5} , *p = stu;  
A、102
B、91.5
C、92.5
D、101
81、以下程序的输出结果是()
[cpp] view plain copy
  1. #define f(X) X*X  
  2.   
  3. void main()  
  4. {  
  5.     int a = 6 , b = 2 , c;  
  6.     c = f(a)/f(b);  
  7.     printf("%d\n",c);  
  8. }  
A、18
B、9
C、36
D、6
82、如果a = 1 , b = 2 c = 3 , d = 4,则条件表达式a<b?a:c<d?c:d的值为()
A、1
B、3
C、2
D、4
83、以下四个选项中,均是正确的数值常量或字符串常量的选项是()
A、+001,0Xabcd,2e2,50
B、3,011,0XFF00,0a
C、0.0,0f,8.9e,&
D、“a”,3.9E-2.5,1e1,‘\’

84、以下四个选项中,均是合法转义字符的选项是()
A、\018,\f,xab
B、\\0,101,x1f
C、\,\\,\n
D、\,\017,\
85、已知各变量的类型说明如下:
[cpp] view plain copy
  1. int i = 8 , k , a , b;  
  2.     unsigned long w = 5;  
  3.     double x = 1.42 , y = 5.2;  
则以下符合C语言语法的表达式是()
A、 a = a*3 = 2
B、x%(-3)
C、y = float(i)
D、a += a -= (b=4)*(a=3)
86、已知二进制数a是00101101,如果想通过整型变量b与a做异或运算,使变量a的高4位取反,低4位不变,则二进制数b的值应该是()
A、11111111
B、0
C、1111
D、11110000
87、下列四组字符串中都可以用作C语言程序标识符的一组是()
A、str_l,Cpp,pow,while
B、i\am,one_half,start$it,3pai
C、Pxq,My->book,line#,His.age
D、print,_3d,oodb,aBc
88、若执行fopen()发生错误,函数的返回值是()
A、地址值
B、NULL
C、EOF
D、1
89、若调用一个函数,且此函数中无return语句,则正确的说法是()
A、能返回一个用户所希望的函数值
B、返回一个不确定的值
C、返回若干个系统默认值
D、没有返回值
90、长度相同但格式不同的2种浮点数,假设前者阶码长、尾数短,后者阶码短、尾数长,其它的规定均相同,则它们可表示的数的范围和精度为()
A、前者可表示的数的范围大且精度高
B、两者可表示的数的范围和精度相同
C、前者可表示的数的范围大但精度低
D、后者可表示的数的范围大且精度高
91、单继承情况下,派生类中对基类成员的访问也会出现二义性
A、错                        B、对
92、关系数据库模型是以下哪种方式组织数据结构
A、二维表
B、网状
C、文本
D、树状
93、()命令可以查看视图的创建语句
A、SHOW VIEW
B、SHOW CREATE VIEW
C、SELECT VIEW
D、DISPLAY VIEW

94、正则表达式中的*代表的是()
A、0个或多个匹配
B、1个或多个匹配
C、0

95、预处理过程是编译过程之后、连接过程之前进行的
A、对                           B、错
96、下面程序的输出结果是()
[cpp] view plain copy
  1. int main(void)  
  2. {  
  3.     char x = 0xFF;  
  4.     printf("%d\n",x--);  
  5.     return 0;  
  6. }  
A、-1              B、0             C、255             D、256
printf("%d \n",x--)函数参数首先传递的是x--这个,但是它是先返回值才减小,因此x传递过去时候仍然是0xff。
0xff当作为无符号数的时候,数字为255,作为带符号数时候,是-1。char类型是带符号的,因此是-1。

97、下面程序的输出结果是()
[cpp] view plain copy
  1. int main(void)  
  2. {  
  3.     printf("%d\n",12&012);  
  4.     return 0;  
  5. }  
A、12              B、0             C、8                D、-1
012=1010;(C语言中数字前缀0表示八进制)
012是8进制数,它的值为10,二进制是0000 1010
12是十进制,它的二进制是0000 1100
两个数相与(&),得到0000 1000,即8
原创粉丝点击
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 大股东质押爆仓怎么办 买的股票跌停了怎么办 刚买了万科天地怎么办 所持股票停牌怎么办 武钢股份退市股票怎么办 买了退市的股票怎么办 国际e庄租期到了怎么办 被汉藏文化骗了怎么办 杏仁吃多了中毒怎么办 出轨怀孕了该怎么办呢 瑞安医保卡丢了怎么办 包裹一直在揽收怎么办 揽收超时的快件怎么办 快递被别人偷了怎么办 行驶证副本丢了怎么办 眼睛进了石灰粉怎么办 高铁网上没票了怎么办 限行尾号是字母怎么办 手指被刺扎肿了怎么办 手上进了小刺怎么办 招投标标书丢了怎么办 冒险岛2装备红了怎么办 宝宝屁股腌红了怎么办 宝宝肛门红痒怎么办啊 宝宝屁屁溃烂了怎么办 脸过敏起红疙瘩怎么办 一岁宝宝屁股红怎么办 屁眼肉凸出来了怎么办 陶笛声音变闷了怎么办 吃三七粉上火了怎么办 红枣核吞下去了怎么办 话梅核吞下去了怎么办 芒果和海鲜吃了怎么办 小孩咳嗽喉咙有痰怎么办 4岁宝宝喉咙有痰怎么办 20天新生儿有痰怎么办 孩子嗓子老是有痰怎么办 买的哈密瓜不甜怎么办 吉他琴颈变形了怎么办 hcg值长得慢怎么办 蚊子老在耳边叫怎么办