c语言类型表达式运算符,c语言 第二章类型 运算符与表达式

2.2  常见的数据类型及长度

Char 字符型 占用一个字节

Int  整形 通常反应了所用机器中整数的最自然长度 还可以扩展short long

Float 单精度浮点数

Double 双精度浮点数

类型限定符 signed(有符号) 与unsigned(无符号 正数或者0)可用于限定char类型或任何整数

2.3 常量

浮点数常量包含一个小数点。

Double 使用64位(8字节) 来储存一个浮点数。 它可以表示十进制的15或16位有效数字。

Float  32位单精度浮点型 float类型的精度比double型的低,由位数可知,float类型的范围比double类型小。

一个字符常量是一个整数  例如 ‘x‘ 的数字就是字符常量的值 ’\0‘表示值为0的字符

’x‘ “x”表示的是不同的, 前者是一个整数  后者是一个包含一个字符以及一个结束符’\0‘的字符数组。

特别区别 char *a =”abc”  char a[]=”abc”,

Char a[] 声明了一个字符型数组,并赋初值。

Char *a 声明一个字符指针  也可以这样表示

char *a;

char b[]="abc";

a=&b[0];

2.4 声明

所有变量都是必须先声明后使用

Int lower;

Int upper;

Int step;

Const double e = 3.1415926 该限定符指定变量的值不能被修改 对于数组而言 const限定符指定数组所有元素的值不能被修改

2.5 算术运算符

二元算术运算符包括: + .- *  / %(取模运算符)  整数除法会截断结果中的小数部分。 表达式  x % y。

取模运算符 % 不能应用在float double

2.6 关系运算符与逻辑运算符

关系运算符:

> >=  

相等性运算符:

== !=

逻辑运算符

&&(与) ||(或)

优先级  相等性运算符>关系运算符> 逻辑运算符

2.7 类型转换

当运算符的几个操作数类型不同时,需要转化为共同的类型

一般是把“比较窄的” 操作数转换为“比较宽的”操作数 并且不丢失信息的转换

如果没有unsigned类型的操作数:

如果其中一个操作数类型为long double 则将另一个操作数转换为long double

如果其中一个操作数的类型为double  则将另一个操作数转换为doule

如果其中一个操作数的类型为float, 则将我另外一个操作数转化为float

将char 和short 类型的操作数 转化为Int

同long->long;

赋值时也要进行类型转换。 赋值运算符右边的值需要转换为左边变量的类型。

2.8自增运算符与自减运算符

例子1

Int n = 5;

X = n++ // x 的值为 5

X = ++n  // x 的值为6

例子2

// 从字符串中删除字符C

Void squeeze (char s[], int c)

{

Int i , j ;

For( i = j = 0; s[i] != ‘\0’: i++)

If(s[i] != c)

S[j++] = s[i];

S[j] = ‘\0’;

}

}

2.10 赋值运算符与表达式

I = i + 2 等同 i +=2;

2.11 条件表达式

Expr1 ? Expr2 : expr3

如果表达式1为真 则为选择exp2 反之选择expr3

例子:

For(int i = 0; i 

Print(“%6d%c”,a[i], (i%10 == 9 || i = n-1) ? ’\n‘:’ ’);

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值