C语言数据类型和基本输入输出
整型
代码示例:
#include"windows.h"
#include"stdio.h"
int main()
{
int a;//声明变量 a
a=10;//给变量 a 赋值
int b,c;//声明变量 b和 c
b=11;//给变量 b 赋值
c=12;//给变量 c 赋值
int d=13,e=14;//初始化变量 d 和 e
printf("%d,%d,%d,%d,%d\n",a,b,c,d,e);//输出变量 a b c d e 的值。
long int f=LONG_MAX;//可以简写为 long f=LONG_MAX;
short int g=SHRT_MAX;//可以简写为 short g=SHRT_MAX;
printf("%ld,%d",f,g);
system("pause");//暂停
return 0;
}
整型的范围(不同电脑有差异)
在 stdio.h 中有 INT_MAX,LONG_MAX,SHRT_MAX,LLONG_MAX ULLONG_MAX,CHR_BIT的宏定义,可以算出自己电脑的精度。(不含U的MAX可以换成MIN)
unsigned int 0~4294967295
int 2147483648~2147483647
unsigned long 0~4294967295
long 2147483648~2147483647
long long的最大值:9223372036854775807
long long的最小值:-9223372036854775808
unsigned long long的最大值:1844674407370955161
__int64的最大值:9223372036854775807
__int64的最小值:-9223372036854775808
unsigned __int64的最大值:18446744073709551615
scanf()的使用。
#include"windows.h"
#include"stdio.h"
int main()
{
int a;//开辟a的空间
scanf("%d",&a);//输入a的值,新手注意要有 & 这个符号。
printf("%5d",a);//输出宽度为 5 的 a。
return 0;
}
char型
同 int 型,控制符用%c(单个);%s(字符串);
阿斯克码表的了解。a为96号。
小补充:
1.原码反码补码:
2.二进制,八进制,十进制,十六进制的转化:
了解:2,8,16进制划分位数,10进制乘除权重。
3.输入输出的格式控制符:
比较多了,可以自己看看书,以后培训会慢慢讲到。(%e,%g,%f),(%o,%0X),(%+-10.3f);
4.float 和 double 型的原理
https://msdn.microsoft.com/zh-cn/library/hd7199ke.aspx
浮点型,float和double(long double)
同整数型理:
浮点型只有float,double,long double。控制符分别为,%f,%lf,%lf。
布尔型
包含头文件 #include"stdbool.h"后可以用 bool 代替 _Bool。ture 代替1,false 代替 0。
非 0 即 1,非假即真。
true,false
复数类型:
用头文件 #include"complex.h"后可用complex代替_Complex,用imaginary代替_Imaginary。
(float,double,long double)+(complex)
代码示例:
#include"windows.h"
#include"stdio.h"
#include"complex.h"
int main()
{
double _Complex a=1+5I;//"I"大小写都可以
double complex b=2+3I;
long double complex c=a+b;
system("pause");//暂停
return 0;
}
扩展:
1.上文的”小补充“详细了解就可以了。
2.C语言的复数类型。
3.typedef struct 自定义类型。
例子:
#include"windows.h"
#include"stdio.h"
typedef struct cube
{
double chang;
double kuan;
double gao;
double volum;
//等其他属性
}cube;
int main()
{
cube a;
a.chang=5;
a.kuan=6;
a.gao=10;
a.volum=a.chang*a.kuan*a.gao;
printf("%lf",a.volum);
return 0;
}