题目
分析
其实题目里提示已经非常详细了.
输入的两个变量是可见字符以char类型保存
但是需要输出的两个数据并不是都能以插入类型存储
c1求和,数组超过char的-128~127的范围,所以换成范围更大unsigned char
c2做差,并且是小的减去大的,所以数值一定为负数,所以不能选用范围为0~255的unsigned char,选择用char
题解
#include<stdio.h>
int main(){
unsigned char c1;
char c2;
scanf("%c %c", &c1, &c2);
printf("in: %d %d\n", c1, c2);
unsigned char t = c1;
c1 = c1+c2;
c2 = t<c2? t-c2:c2-t;
printf("out: %d %d\n", c1, c2);
return 0;
}