#include
void main()
{
int a,b;
scanf("%d",&a);
b=a%10;
a=a/10;
printf("%d%2d",a,b);
}
c语言中,int 32 位最大值是2147483647 64位 *2 。
要想更大 用long long int
int的范围:-2^31~2^31-1即(-2147483648~2147483647)
1234567891在int范围内
但12345678921已经溢出了!
int取值是有界限的,超过之后代表,值溢出,其值会被转换为一个负数。
#include
int main()
{
long long int a,b;
scanf("%d",&a);
b=a%10;
a=a/10;
printf("%d%2d",a,b);
}
我换成了dev c++,出现了这种情况。dev c++是可以支持C99的longlongint的
DEVc++是可以用long long int的,只不过你的输入和输出格式出现了问题。
void main()
{
long long int a;
int b;
scanf("%llu",&a);
b=a%10;
a=a/10;
printf("%lld %d",a,b);
}
******类型问题可参考以下资料********