想必现在有很多小伙伴对于c语言范围怎么表示方面的知识都比较想要了解,那么今天小好小编就为大家收集了一些关于c语言范围怎么表示方面的知识分享给大家,希望大家会喜欢哦。
在c语言中用到数值范围一般有如下两种情况:1逻辑判断中确定某数在某个范围内。比如判断数c在[a,b]区间内可以写作(a<;=c)&;&;(c<;=b)2使计算结果处于某个范围内。
比如计算时间时,当前时间为n点,经过m小时后是几点,由于时间仅取值在0点到23点,所以对数值范围需要做约束。对于此可以用模除(%)来限定。(n+m)%24其它关于数值范围限定的问题,都可以从这两种情况中延伸获得。比如下面两个例题就是两种情况的应用。例一,输入起始天的星期数(1-7),及天数n,计算经过n天后是星期几。分析,这个是第二种的典型应用,不过数据规模为1到7,与之前说的0起始情况略有不同,可以通过转换达到目的
代码如下:#includeintmain(){ints,n;scanf(";%d%d";,&;s,&;n);s--;//将s-1;这样用0-6代表星期一到日s+=n;s%=7;//通过模除限定结果s++;//转换回1-7的表示方法printf(";%d\n";,s);//输出结果return0;}例二,依照下面的公式计算,直到结果小于0或者大于100为止,f(0)由外部输入。
如果f(n)为奇数,f(n+1)=2f(n)否则f(n+1)=f(n)/2-10输出计算结果。题目很清晰,直接输入并循环计算,直到符合退出条件为止。对于条件的判断就是第一种情况的简单应用了。
代码如下:#includeintmain(){intr;scanf(";%d";,&;r);while(r>;=&;&;r<;=100)//对结果进行范围判断{if(r&;1)r*=2;//奇数的情况。elser=r/2-10;//偶数的情况。}printf(";%d\n";,r);return0;}
c语言范围怎么表示
一般来说,基本数据类型分为整型、浮点型、字符型,C++中又包括布尔型。每种类型里面又可以分为若干种类型(为了方便记忆,只列出常用的)。
1整型.
一般可以分为短整型(short)、整型(int)和长整型( long long),其中短整型(short)一般用不到,此处不再赘述。下面介绍整型(int)和长整型( long long),其中整型int也被称为 long int,长整型 long long也被称为 long long int。
①对整型int来说,一个整数占用32bit,也即4Byte,取值范围是2^31~+(2^31-1)。如果对范围不太有把握,可以记住绝对值在10^9范围以内的整数都可以定义成int型。
②对长整型long long来说,一个整数占用64bit,也即8Byte,取值范围是-2^63~+(2^63-1),也就是说,如果题目要求的整数取值范围超过2147483647(例如10^10或者10^18),就得用long long型来存储。
除此之外,对于整型数据,都可以在前面加个 unsigned,以表示无符号型,例如 unsigned int和 unsigned long long,占用的位数和原先相同,但是把负数范围挪到正数上来了。也就是说,unsigned int的取值范围是0~2^32-1, unsigned long long的取值范围是0~2^64-1。一般来说,很少会出现必须使用 unsigned int和 unsigned long long的情况,因此初学者只需要熟练使用int和 longlong即可。
简单来说,需要记住的是,看到题目要求10^9以内或者说32位整数,就用int型来存放如果是10^18以内(例如10^10)或者说64位整数,就要用 long long型来存放。
浮点型
通俗来讲,浮点型就是小数,一般可以分为单精度(float)和双精度( double)。
①对单精度float来说,一个浮点数占用32bit,其中1bit作为符号位、8bit作为指数位、23bit作为尾数位(了解即可),可以存放的浮点数的范围是-2^128~+2^128,但是其有效精度只有6~7位(由2^23可以得到,读者只需要知道6~7位有效精度即可)。这对一些精度要求比较高的题目是不合适的。
②对双精度double来说,一个浮点数占用64bit,其中依照浮点数的标准,1bit作为符号位、11bit作为指数位、52bit作为尾数位,可以存放的浮点数的范围是-2^1024~+2^1024,其有效精度有15~16位,比float优秀许多。
字符型
(1)字符变量和字符常量
在C语言中,字符常量使用ASCII码统一编码。标准ASCIi码的范围是0~127,其中包含了控制字符或通信专用字符(不可显示)和常用的可显示字符。在键盘上,通过敲击可以在屏幕上显示的字符就是可显示字符,比如0~A~Z、a~z等都是可显示字符,它们的ASCⅡ码分别是48~565~90、97~122,不过具体数字不需要记住,只要知道小写字母比大写字母的ASCII码值大32即可。
语音朗读: