C练习题

更新时间:2024-05-26 10:54:01 阅读量: 综合文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

1、以下程序的运行结果是()

[cpp] view plain copy

1. int main(void) 2. {

3. printf(\,\,\); 4. return 0; 5. }

A、computer , puter B、computer , com C、computer , computer D、computer , compu.ter 2、以下程序的功能是()

[cpp] view plain copy

1. #include 2. int main(void) 3. {

4. FILE *fp; 5. long int n;

6. fp = fopen(\,\); 7. fseek(fp , 0 , SEEK_END); 8. n = ftell(fp); 9. fclose(fp); 10. printf(\,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(\,&grade); 5. switch(grade) 6. {

7. case 'A':

8. printf(\); 9. case 'B': 10. case 'C':

11. printf(\); 12. case 'D':

13. printf(\); 14. default:

15. printf(\); 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(\,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(\,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(\,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(\,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(\,z = (x%y , x/y)); 6. return 0; 7. }

A、4 B、0 C、3 D、1 逗号表达式的一般形式:

表达式1,表达式2,表达式3......表达式n 它的值为表达式n的值。

括号表达式要求按顺序逐一计算各个子表达式,并以最后一个子表达式的值作为括号表达式的结果,最后将该结果赋给变量。

printf(\

则(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(\,**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(\,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(\,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(\,&x); 5. if(x++ > 5)

6. printf(\,x); 7. else

8. printf(\,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<

C、cout<

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 2. using namespace std; 3.

4. class MyClass 5. { 6. public:

7. MyClass(int i = 0) 8. {

9. cout<

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 2. using namespace std; 3. 4. class A 5. { 6. public: 7. A(int i ) 8. {

9. cout<<\; 10. }

11. ~A() { } 12. }; 13. class B 14. { 15. public: 16. B(int j )

17. {

18. cout<<\; 19. }

20. ~B() { } 21. }; 22. class C 23. { 24. public: 25. C(int k ) 26. {

27. cout<<\; 28. }

29. ~C() { cout<<\; } 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<<\; 38. }

39. ~D() { cout<<\; } 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 = \; 4. x += 2; 5. cout<

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<

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] = \

B、int x[] = { 0 }; C、int k = 5 , n[k];

D、char a[2][2]={\

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<

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<

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<

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、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<

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<

A、cout<

66、下面不能把字符串:Hello!赋给数组b的语句是() A、char b[10] ; b = \

B、char b[10] ; strcpy(b , \C、char b[10] = \

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(\,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(\,c); 8. }

A、18 B、9 C、36 D、6

82、如果a = 1 , b = 2 c = 3 , d = 4,则条件表达式a

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(\,x--); 5. return 0; 6. }

A、-1 B、0 C、255 D、256 printf(\函数参数首先传递的是x--这个,但是它是先返回值才减小,因此x传递过

去时候仍然是0xff。

0xff当作为无符号数的时候,数字为255,作为带符号数时候,是-1。char类型是带符号的,因此是-1。

97、下面程序的输出结果是()

[cpp] view plain copy

1. int main(void) 2. {

3. printf(\,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

本文来源:https://www.bwwdw.com/article/jmr7.html

Top