c语言输入长整型
① c语言中长整型和整型的范围
1、c语言中长整型常量:的数值范围最小是十进制的-2147483647~+2147483647,在计算机中最少占用4个字节。字节长度跟操作系统和编译器有关,longint长度至少32位,而64位类Unix系统为64位。
2、c语言中整型常量:是通常的整数,包括正整数、负整数和0,其数据类型显然是整型。整型常量内存大小和数值范围取决于编译器。
(1)c语言输入长整型扩展阅读
c语言中VB中的长整型
VB中整数类型有两种:Integer和Long,都是有符号的整数
Integer变量存储为16位(2个字节)的数值形式,其范围在-32,768至32,767之间。Integer的类型声明字符是百分比符号(%)。
Long(长整型)变量存储为32位(4个字节)有符号的数值形式,其范围从-2,147,483,648到2,147,483,647(约为21亿)。Long的类型声明字符为和号(&)。
② c语言长整型怎么输出
在C语言中可以通过输出函数printf中的输出格式说明符来输出长整型数值。
具体格式可以参考如下程序段:
longinta=123456789;
printf("%ld",a);//%ld表示按长整型的数据格式输出变量a,输出结果为123456789
③ C语言中无符号长整型数的输入输出格式是什么
以%开头的都是输出控制符。主要有%d、%u、%ld、%p。
1、%d它的意思是按十进制整型数据的实际长度输出。
2、%u输出无符号整型(unsigned)。输出无符号整型时也可以用 %d,这时是将无符号转换成有符号数,然后输出。
3、%ld它的意思是输出长整型数据。
4、%p 输出变量的内存地址。
(3)c语言输入长整型扩展阅读
1、八进制在C语言中,八进制的输出格式是 %o,八进制是以0为开头的数字,0后面的数字都要小于8,最大为7。
2、十六进制十六进制的输出格式是 %x,十六进制表示的数是0x12 ,这个0也是零。十六进制有点特殊的地方是1-9是纯数字,10-15是用A、B、C、D、E、F来表示的。
4、%d中的d并不表示integer,而是表示decimal(10进制)。
④ C语言中无符号长整型数的输入输出格式是什么
C语言中无符号长整型数的输入输出格式%u。
示例:
intmain()
{
unsignedinta;
intb=-1;
a=b;
printf(“%u”,a);
}
(4)c语言输入长整型扩展阅读
c语言printf()输出格式
%p指针
%s字符串
%%"%"
%a(%A)浮点数、十六进制数字和p-(P-)记数法(C99)
%c字符
%d有符号十进制整数
%f浮点数(包括float和doulbe)
%e(%E)浮点数指数输出[e-(E-)记数法]
%g(%G)浮点数不显无意义的零"0"
%i有符号十进制整数(与%d相同)
%o八进制整数e.g.0123
%x(%X)十六进制整数<xml:namespaceprefix=st1/>()e.g.0x1234
⑤ c语言的长整形怎么输入~!最好给我写到例题,我输入总是益出,
长整型是可以存很大的数,但还是有限的啊,你狂输一顿的话肯定会溢出的(呵呵)
下面是例子
#include < stdio.h >
void main()
{
long int a;
scanf( "%ld", &a );
printf( "%ld", a );
}
⑥ C语言编程实现从键盘输入一个正的长整型数,然后分别取出该数的各字节的值并进行屏幕输出
这个题目说的有点不够清楚。所谓美自己的职,我这里理解为每一个数位上的值。
#include
void prt(long n)
{if(n>9)prt(n/10);
printf("%ld ",n%10);
}
int main()
{ long n;
scanf("%ld",&n);
prt(n);
return 0;
}
⑦ C语言问题。编写程序,输入一个长整型正数,判断该数是几位数
#include<stdio.h>
#include<math.h>
main()
{
long int x;
int i=0;
printf("input:");
scanf("%ld",&x);
do{
x=x/10;
i++;
}while(x>0);
printf("the nubmer is:%d\n",i);
}
这样就正确了,你自己运行下^_^
注: 除法运算符“/”:双目运算具有左结合性。参与运算量均为整型时,结果也为整型,舍去小数。例如,你输入123456 先执行123456/10 结果为12345 在继续执行12345/10 结果为1234...........最后为1/10 结果为0 不满足条件x>0 结束循环,打印i的值^_^
⑧ 关于C语言中长整型数
1.
长整型:有符号整数;满足sizeof(long)>=sizeof(int),一般32位平台sizeof(long)为4;此外由于sizeof(short)<=sizeof(int),所以sizeof(long)>=sizeof(short)。
2.常量:不能被修改。
常量在c语言中是数值字面量。字面量后缀为l或l,表示long,例如1234l、0l。如果不带后缀,默认为int字面量而不是long字面量,即不是长整型常量。
⑨ C语言中如何输出长整型数值
在C/C++中,64为整型一直是一种没有确定规范的数据类型。现今主流的编译器中,对64为整型的支持也是标准不一,形态各异。一般来说,64位整型的定义方式有long long和__int64两种(VC还支持_int64),而输出到标准输出方式有printf(“%lld”,a),printf(“%I64d”,a),和cout << a三种方式。
本文讨论的是五种常用的C/C++编译器对64位整型的支持,这五种编译器分别是gcc(mingw32),g++(mingw32),gcc(linux i386),g++(linux i386),Microsoft Visual C++ 6.0。可惜的是,没有一种定义和输出方式组合,同时兼容这五种编译器。为彻底弄清不同编译器对64位整型,我写了程序对它们进行了评测,结果如下表。
上表中,正确指编译通过,运行完全正确;错误指编译虽然通过,但运行结果有误;无法编译指编译器根本不能编译完成。观察上表,我们可以发现以下几点:
long long定义方式可以用于gcc/g++,不受平台限制,但不能用于VC6.0。
__int64是Win32平台编译器64位长整型的定义方式,不能用于Linux。
“%lld”用于Linux i386平台编译器,”%I64d”用于Win32平台编译器。
cout只能用于C++编译,在VC6.0中,cout不支持64位长整型。
表中最后一行输出方式中的printint64()是我自己写的一个函数,可以看出,它的兼容性要好于其他所有的输出方式,它是一段这样的代码:
CPP
void printint64(long long a)
{
if (a<=100000000)
printf("%d ",a);
else
{
printf("%d",a/100000000);
printf("d ",a0000000);
}
}
这种写法的本质是把较大的64位整型拆分为两个32位整型,然后依次输出,低位的部分要补0。看似很笨的写法,效果如何?我把它和cout输出方式做了比较,因为它和cout都是C++支持跨平台的。首先printint64()和cout(不清空缓冲区)的运行结果是完全相同的,不会出现错误。我的试验是分别用两者输出1000000个随机数,实际结果是,printint64()在1.5s内跑完了程序,而cout需要2s。cout要稍慢一些,所以在输出大量数据时,要尽量避免使用。
⑩ c语言长整型常量是什么
C语言中合法的长整型常量是0L。
C语言提供了一种“长整型常量”。它们的数值范围最小是十进制的 -2147483647 ~ +2147483647,在计算机中最少占用4个字节。它的书写方法也分为十进制、八进制和十六进制整数三种,唯一不同的是在整数的末尾要加上小写字母“l”或者大写字母“L”。
因此,C语言中合法的长整型常量是0L。
(10)c语言输入长整型扩展阅读:
整型常量前面没有+或者-,-10其实是一元-运算符和操作数10,同样整型常量的十进制表示并没有0,单独写一个0其实是一个八进制常量。整型常量内存大小和数值范围取决于编译器。
由于整型常量分为短整型和长整型两种,又有十进制、八进制和十六进制的三种书写形式,所以使用整型常量时,要注意区分。虽然它们有相同的数值,但它们在内存中占用不同数量的字节。