第2章 数据类型,运算符和表达式

2.1 引例 

 

 #include <stdio.h>
#define PI 3.14159
void main()
{ int r;
 float v, f;
 r=2;
 v=4.0 * PI * r * r * r / 3.0;
 f=4.0 * PI * r * r;
 printf("体积为:%f.表面积为:%f\n",v,f);
}

 2.2 C语言的数据类型

数据类型分为:基本类型,构造类型,指针类型,空类型

基本类型可分为:整型,字符型,实型(浮点型)

构造类型可分为:数组类型,结构体类型,共用体类型,枚举类型

2.3  C语言的常量

2.3.1 直接常量

直接常量又分为整型常量,实型常量,字符型常量和字符型串常量
1.整型常量
    在C语言中整型常量可以用十进制,八进制,十六进制表示
    十进制表示:有数字0—9,正负号组成
    八进制表示:以0为前缀,后面数字由0—7组成
    十六进制表示:以0x或0X为前缀后面由数字0—9和字母大小写都可组成
       十六进制一般是无符号数
  注意:(1)整数型常量后面加一个字母u或U可以为是unsigned int型 如246u
             (2)整数型常量后面加一字母L或l可以为是 long int型 
2.实型常量
    实型常量又称浮点数 在C语言中实数只能用十进制表示  
    实数的表示方式有两种:小数形式和指数形式
    (1)小数形式:如12.367     -17.266均为正确的实数
    (2)指数形式:有尾数部分,字母E或e和指数部分组成  格式为:±尾数E指数
    如1.23-2,3.14E+3等表示的数值分别为1.23✖10✖0.01
    以小数形式表达实数时必须要有小数点
    以指数形式表达实数时字母E(e)的前后必须有数字
    在C语言中 实数型常量默认为是double型的实数  如果在数的后面加字母f或F 则认为是float型的实数

3.字符型常量

 #include<stdio.h>
int main()
{
 char b, c, d, e;
 b = '\43';
 c = '\103';
 d = '\x2a';
 e = '\x41';
 printf("b=%c,c=%c,e=%c\n", b, c, d, e);
 printf("\"good\40morning!\b\"!\n");
 printf("\123456");
 return 0;
}

2.3.2  符号常量
      #define标识符 常量值是一条编译预处理命令#include<stdio.h>
#define PRICE 20
int main()
{
 int num, total;
 num = 10;
 total = num * PRICE;
 printf("总价格为:%d\n", total);
 return 0;

 2.4  变量的定义与使用

C语言中所有变量必须先定义后使用

#include <stdio.h>
int main()
{    int a, b, c;
    char ch = 'A';
    a = 10;
    b = a + ch;
    scanf("%d", &c);
    printf("%d,%d,%d,%c\n",a,b,c,ch);
    return 0;
}

2.4.2 整型变量

不同类型整型变量定义与使用示例#include <stdio.h>
int main()
{ int a, b, c, d;
 unsigned long e;
 a = 5, b = 6, e = 10;
 c = a + e;
 d = b + e;
 printf("c=%d,d=%d\n", c, d);
 return 0;
}

 短整型变量的溢出

#include <stdio.h>
int main()
{ short int a, b;
 a = 32767;
 b = a + 1;
 printf("a=%d,b=%d\n", a, b);
 return 0;
}

 2.4.3 实型变量

单精度型数据能保留7为有效数字,双精度型数据能保留16为有效数字

#include <stdio.h>
int main()
{ float a = 1234.56789;
 double b = 1234.567895678;
 printf("a=%f,b=%f\n", a, b);
 return 0;
}

 2.4.4 字符型变量

长安漫月.:
#include <stdio.h>
int main()
{    char c1, c2;
    c1 = 'A';
    c2 = 65;
    printf("%c,%c\n", c1, c2);
    rintf("%d,%d\n", c1, c2);
    return 0;
}

 把大写字母换为小写字母

#include <stdio.h>
int main()
{ char c1, c2;
 c1 = 'A';
 c2 = 'B';
 c1 = c1 + 32;
 c2 = c2 + 32;
 printf("%c,%c\n", c1, c2);
 rintf("%d,%d\n", c1, c2);
 return 0;
}

 2.5 运算符和表达式

1.简单赋值运算符

int=a,b,c=3

2.复合赋值运算符

运算符        应用举例        等价形式

=+                a+=x                a=a+(x)

3.赋值表达式

由赋值运算符将一个变量和一个表达式连接起来的式子所组成 一般形式为变量=表达式

v=4.0*PI*r*r*r/3.0

a=15+(i=6)

2.5.2 算术运算符和算术表达式

输入一个三位数的正整数,输出其反序数

长安漫月.:
#include <stdio.h>
int main()
{    int number, a, b, c;
    number = 123;
    printf("输入的3位数为;%d\n", number);
    a = number / 100;
    b = (number - a * 100) / 10;
    c = number % 10;
    printf("反序数是:%d%d%d\n", c, b, a);
    return 0;
}

 逗号表达式应用示例

#include <stdio.h>
int main()
{ int i, j = 7;
 float k = 5;
 i = (j = j + 2, j / k);
 printf("i=%d\n",i);
 return 0;
}

 不同数据类型字节示例

#include <stdio.h>
int main()
{ printf("char 类型占%d字节\n", sizeof(char));
 printf("short int类型占%d字节\n", sizeof(short int));
 printf("int类型占%d字节\n", sizeof(short int));
 printf("float类型占%d字节\n", sizeof(float));
 printf("doubie类型占%d字节\n", sizeof(double));
 return 0;
}

 求字节数运算符示例

#include <stdio.h>
int main()
{ int a, b;
 a = sizeof(3 + 5.0);
 b = (sizeof 3 + 5.0);
 printf("%d,%d,%d\\",a,b,sizeof ("china"));
 return 0;
}

 2.6  数据类型转换

强制类型转换示例

#include <stdio.h>
int main()
{ int a = 3, b = 4;
 float c;
 c = (float)(a + b) / 2;
 printf("c=%f\n",c);
 return 0;
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值