1494: 1.2-04:填空:类型转换1

Memory Limit:64 MB Time Limit:1 S
Judge Style:Text Compare Creator:
Submit:1022 Solved:510

Description

有两个变量a和b,在执行了如下代码后:

a = 32768;
b = a;
printf("%d %d", a, b);

输出两个数:32768 -32768

请问a和b分别是以下哪种类型?

A. bool   B. char   C. short   D. int   E. float   F. double

Input

无。

Output

一行,包含两个大写字母,分别代表变量a和b的类型标号。中间用一个空格隔开。

Sample Input Copy

Sample Output Copy

D C

HINT

在原码里面00000000和100000000都是表示0
这样比较浪费,在补码里面,就把100000000当做-2^7 ,以扩大补码表示范围
对于正数:原码、反码、补码是一样的
对于负数:反码为原码取反;补码为原码取反+1
最高位为符号位

加入题单

算法标签: