该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
我使用的是GNU ISO C++ Library 3.4.2 以下版本
有如下源代码,在每次对short型变量执行scanf()操作时,都会将前面语句最近使用到的short变量值改为0;
不知道大家有没有过这样的经历。
我使用的源代码及运行结果如下:
#include
int main(void) {
short a, no1, no2, no3, no4;
short bei;
printf("请输入一个小整数a$17);
scanf("%d", &a);
printf("a=%d\n", a);
printf("请输入一个小整数no1$17);
scanf("%d", &no1);
printf("no1=%d\n", no1);
printf("请输入一个小整数no2$17);
scanf("%d", &no2);
printf("no2=%d\n", no2);
printf("请输入一个小整数no3$17);
scanf("%d", &no3);
printf("no3=%d\n", no3);
no4 = a + no1 + no2 + no3;
printf("no4 = %d\n", no4);
printf("请输入一个小整数bei$17);
scanf("%d", &bei);
printf("a=%d,no1=%d,no2=%d,no3=%d,no4=%d,bei=%d\n", a, no1, no2, no3, no4, bei);
return 0;
}
请输入一个小整数a$17
a=54
请输入一个小整数no1$17
no1=14
请输入一个小整数no2$17
no2=63
请输入一个小整数no3$17
no3=87
no4 = 87
请输入一个小整数bei$17
a=0,no1=0,no2=0,no3=87,no4=0,bei=14