代码如下
#include<stdio.h>
int main()
{
int x1,x2;
char y1,y2;
scanf("%2d%3d%3c%c",&x1,&x2,&y1,&y2);
printf("x1=%d,x2=%d,y1=%c,y2=%c\n",x1,x2,y1,y2);
return 0;
}
结果如下:

在dev-C 5.11下运行
gcc版本:64bit4.9.2
问题:为什么x2读入的不是765?
虽然刚学C,不太懂,但是希望能够帮到你
刚贴的代码,VC6.0运行没有你提到的问题,输出的x2确实是765