C编辑 int i和long i 的区别

来源:百度知道 编辑:UC知道 时间:2024/05/24 14:49:13
int main()
{
int i;
scanf("%d",&i);
if(l>10)
printf("10",i);
else
printf("%d",i);
getch();
}
这个INT如果输入大于10那就是等于10
可是下面的这个LONG输入小于10的时候为什么也等于10呢?
如果用LONG 怎么才能编辑出想上面INT 一样的效果呢?
-------------------------------------------------------------
int main()
{
long i;
scanf("%d",&i);
if(l>10)
printf("10",i);
else
printf("%d",i);
getch();
}
---------------------------------------------------------
谁能帮我解释下为什么这两个运算出的结果不一样

int main()
{
long i;
scanf("%d",&i); //在使用长整型数的时候,不应该艇“%d”,应该在d前加一个l,应写成scanf("%ld",&i);
if(l>10)
printf("10",i); //这句中“10”是什么回事?你自己思考,最大的问题应该在这里!
else
printf("%d",i); //这句也一样要改成:printf("%ld",i);
getch();
}

看样子你对整型数和长整型的概念还不太清楚,最好回去温习一下这两个的概念。