c语言数据量
1. 如何用c语言计算输入数据的数量
看用什么方法输入数据,每成功输入1个数据,你用累加器加1。
常用输入数据函数是 scanf(), 这个函数能返回成功读入的数据个数。
例如: n = scanf("%d %f %lf %s", &k, &a, &x, s);
成功读入4个,n得4,成功读入3个,n得3,。。。成功读入1个,n得1,
一个也没成功,n得 0。
如果循环读入:
int sum=0, i=0;
while(...){
n = scanf("%d %f %lf %s", &k[i], &a[i], &x[i], s[i]);
sum = sum + n;
i++;
}
printf("成功读入的数据个数是%d\n",sum);
2. c语言中怎么算图像数据量
对于图像来说,它所需要的数据量就是这幅图像所需要的存储空间大小。
有两种办法来计算:
实测法
使用与要求相近的实际图片,包括尺寸大小、色彩、数据格式。来统计一下实际的存储空间的要求。图片若是非压缩格式,那么这个尺寸是精确的,如果是压缩格式,由于压缩比和图案相关,因此需要预留一部分浮动空间。
估算法
首先计算每个像素点所使用的位数,比如彩色jpg可能会使用24位表示一个点,这样的话就是3个字节。
再计算要求的长和宽所需要的点数,并与字节数相乘。如100*100像素的彩色图片需要100*100*3字节,即30K。这个结果是非压缩数据大小 。
最后估算压缩比,不同的算法会有一个压缩比范围,如JPEG支持多种压缩级别,压缩比率通常在10:1到40:1之间,按10:1计算的话,上例中的实际存储容量在3K左右。
最终得到一个存储容量大小,建议为此最终结果保留一定的浮动冗余空间。
3. C语言的数值常量是指什么
C语言中的数值常量可以简单的分为如下两种整型常量和浮点数常量,你这题应该选C。因为指数形式规定字母e(或E)之前必须有数字(可以是一个十进制的整数或小数),之后必须是一个整数。选项C的字母E之后是一个小数,故应该选择C。
C语言中的数值常量如下:
一、字符常量。形如: ‘ a ’ 、‘ b ’ 、‘ 1 ’、 ‘ aaa ’、 ‘ xbb ’ 。其中aaa是一个八进制的数,是ascii值;bb是一个十六进制的数,是ascii值。字符常量的类型为:char。
二、整型常量。形如: 1、-2、123 、0b1001 、1101 、0x7FFF FFFF、0x8000 、0000 0x7FFF FFFF FFFF FFFF、0x8000 0000 0000 0000 、1u、1l、1ul 。
三、浮点型常量。形如: 1.34、-2.14、2.56e7、-1.717e5、1.34f 。
四、字符串常量。例如: “hello world. ”、 “abc” 等……
(3)c语言数据量扩展阅读:
常量是固定值,程序执行期间不会改变。常量可以是任何基本数据类型,比如整数常量、浮点常量、字符常量或者字符串常量,还有枚举常量。
常量可以被当作常规的变量,只是它们的值在定义后不能被修改。
整数常量可以是十进制、八进制或十六进制的常量。前缀指定基数:0x 或 0X 表示十六进制,0 表示八进制,没有前缀则表示十进制。
整数常量也可以有后缀,可以是 U 和 L 的组合,其中,U 和 L 分别表示 unsigned 和 long。后缀可以是大写或者小写,多个后缀以任意顺序进行组合。
参考资料:菜鸟教程-C#常量 网络-C#
4. 在C语言中各种数据类型各占多少位
(一)32位平台:
分为有符号型与无符号型。
有符号型:
short 在内存中占两个字节,范围为-2^15~(2^15-1)
int 在内存中占四个字节,范围为-2^31~(2^31-1)
long在内存中占四个字节,范围为-2^31~2^31-1
无符号型:最高位不表示符号位
unsigned short 在内存中占两个字节,范围为0~2^16-1
unsigned int 在内存中占四个字节,范围为0~2^32-1
unsigned long在内存中占四个字节,范围为0~2^32-1
实型变量:
分单精度 float 和双精度 double 两种形式:
float:占四个字节,提供7~8位有效数字。
double: 占八个字节,提供15~16位有效数字。
(二)16位平台:
1)整型(基本型):类型说明符为int,在内存中占2个字节。
2)短整型:类型说明符为short int或short。所占字节和取值范围均与整型(基本型)相同。
3)长整型:类型说明符为long int或long,在内存中占4个字节。
无符号型:类型说明符为unsigned。
无符号型又可与上述三种类型匹配而构成:
各种无符号类型量所占的内存空间字节数与相应的有符号类型量相同。但由于省去了符号位,故不能表示负数。
实型变量:
分为单精度(float型)、双精度(double型)和长双精度(long double型)三类。
单精度型占4个字节(32位)内存空间,其数值范围为3.4E-38~3.4E+38,只能提供七位有效数字。
双精度型占8 个字节(64位)内存空间,其数值范围为1.7E-308~1.7E+308,可提供16位有效数字。
长双精度型16 个字节(128位)内存空间,可提供18-19位有效数字。