计算机二级

下面程序段的输出为( )。 include "stdio.h" main { printf("%d\n",12<<2); }A.0SXB下面程序段的输出为( )。 #include "stdio.h" main { printf("%d\n",12<<2); }A.0B.47C.48D.24

题目
下面程序段的输出为( )。 include "stdio.h" main { printf("%d\n",12<<2); }A.0SXB

下面程序段的输出为( )。 #include "stdio.h" main { printf("%d\n",12<<2); }

A.0

B.47

C.48

D.24

如果没有搜索结果,请直接 联系老师 获取答案。
如果没有搜索结果,请直接 联系老师 获取答案。
相似问题和答案

第1题:

以下四个程序中,完全正确的是()

A.#include <stdio.h> main(); {/*/ programming /*/ printf("programming!n");}

B.#include <stdio.h> main() {/* programming */ printf("programming!n"); }

C.#include <stdio.h> main() {/*/* programming */*/ printf("programming!n"); }

D.include <stdio.h> main() {/* programming */ printf("programming!n"); }


B 在选项A中,main()函数后面的分号是错误的,C语言在函数名后而不能有分号。在C语言中注释内容必须放在”/’和”+/”之间,”/”和”*/”必须成对出现,按语法规定在注释之间不可以再嵌套”/∥’和”+/”。在选项C的程序段中注释语句之间有嵌套;所以选项C不正确。C语言用#inc1ude命令行来实现文件包含的功能。#inc1ude命令行的形式为:#inc1ude”文件名”,所以存选项D中inc1ude前面少了一个#符号,因而选项D不正确。

第2题:

下面程序段的输出为 #include"stdio.h" main() { printf("%d\n",12<<2);}

A.0

B.47

C.48

D.24


正确答案:C
解析:为左移运算符,运算符的左边是移位对象;右边是整型表达式,代表左移的位数,左移时,右端(低位)补0;左端(高位)移出的部分舍弃。

第3题:

下面程序段的输出为

#include "stdio.h"

main()

{ printf("%d\n",12<<2);}

A.0

B.47

C.48

D.24


正确答案:C
解析:考查位运算的运算原理。<<为左移运算符,运算符的左边是移位对象;右边是整型表达式,代表左移的位数,左移时,右端(低位)补0;左端(高位)移出的部分舍弃。

第4题:

若有下面的程序段#include "stdio.h"main(){ int i=6; while(i--) printf("%d",--i); printf("\n");}那么程序的输出结果为A.531 B.420C.654321 D.死循环


正确答案:B
题目给出的程序主要结构是while循环。自减运算符“--”在题目中出现了两次,一次是在while语句的判别表达式中,出现的形式为i--,即先利用变量i的值进行判别,再执行i-1操作。另一次是在输出函数printf中,出现的形式为--i,先执行i-1操作,再将结果进行输出。程序初始时,i=6,第一次循环时,因为i满足while的判别条件,故执行while内部的语句,并进行i-1操作,i=5。执行到printf语句时,先进行i-1操作,再将结果输出,得到i=4,这时i的值依然满足while循环条件,故可以执行下一次循环,过程与第一次循环类似。以此类推,直到while循环终止,最终程序输出的结果为420。

第5题:

有以下程序includemain(){int a=5,b=lt; t=(a<<2)|b;printf("%d\n",t);}程序运行后的

有以下程序 #include<stdio.h> main() { int a=5,b=lt; t=(a<<2)|b;printf("%d\n",t); } 程序运行后的输出结果是______。

A.21

B.11

C.6

D.1


正确答案:A
解析:本题主要考查了C语言的逻辑运算符,先将变量a,b的值转换为2进制数,a=00000101,b=00000001,a先左移 2位结果为00010100,再与b按位或运算,结果为00010101,转换为十进制数为21,因此,选项A是正确的。

第6题:

现有如下程序段,则程序段的输出结果为 【16】 。

#include "stdio.h"

int fun()

{static int k;

return k;}

main()

{int m;

m=fun();

printf("%d\n",m);}


正确答案:
0

第7题:

下面程序段的输出为

#include "stdio.h"

main()

{ printf("%d\n",12<<2);}

A.0

B.47

C.48

D.24


正确答案:C

第8题:

下面程序段的输出为 #nclude"stdio.h" main() { printf("%d\n",12<<2);}

A.0

B.47

C.48

D.24


正确答案:C

第9题:

为使*p=20,下面正确的程序是()A. include main( ) { int a=10,b=20,*p=&b; printf

为使*p=20,下面正确的程序是 ( )

A.# include<stdio.h> main( ) { int a=10,b=20,*p=&b; printf("%d\t%d\n",p,*p); } *p)

B.# include<stdio.h> main( ) { int a=10,b=20,*p=b; printf("%d\t\%d\n",p,*p) }

C.# include<stdio.h> main( ) { int a=10,b=20,*p; p=&a; p + +; printf("%d\t\%d\n",p,*p);} }

D.# include<stdio.h> main( ) { int a=10,b=20,*p; *p=20; printf("%d\t\%d\n",p,*p); }


正确答案:A