3.sequential-programming

顺序程序设计

求摄氏度

#include<stdio.h>

int main()
{
    float f, c;
    f = 64.0;
    c = (5.0 / 9) * (f - 32);
    printf("f=%f\nc=%f\n", f, c);
    return 0;
}

常量

  • 整型常量

  • 实性常量(有小数点)

    • 十进制小数形式

    • 指数形式:如12.34e3(e或E之前必须有数字,e或E之后必须为整数)

  • 字符常量

    • 普通字符,用单撇号括起来的一个字符

    字符常量存储在计算机存储单元中时,并不是存储字符本身,而是以其代码(一般采用ASCII码)存储的

    • 转义字符

  • 字符串常量

用双撇号括起来的全部字符,双撇号内可以只有一个字符

  • 符号常量

用#define指令,指定用一个符号名称代表一个常量

在预编译后,符号变量会全部被置换,

#define PI 3.1415   //注意行末没有分号

变量

变量代表一个有名字,具有特定属性的一个存储单元,它用来存放数据,在程序运行期间,变量的值时可以改变的.

变量必须先定义,后使用. 在定义时指定该变量的名字和类型.

从变量中取值,实际上时通过变量名找到相应的内存地址,从该存储单元中读取数据.

常变量

在定义变量时,前面加一个关键字const

常变量与处理的异同?

有类型,占存储单元,不允许改变其值

常变量时有名字的不变量(便于在程序中被引用),而常量时没有名字的不变量

标识符

一个对象的名字

数据类型

基本类型

  • 整型类型

    • 基本整型(int)

    • 短整型(short int)

    • 长整型(long int)

    • 双长整型(long long int)

    • 字符型(char)

    • 布尔型(bool)

  • 浮点类型

    • 单精度浮点型(float)

    • 双精度浮点型(double)

    • 复数浮点型(float_complex,double_complex,long long_complex)

枚举类型(enum)

空类型(void)

派生类型

  • 指针类型(*)

  • 数组类型([ ])

  • 结构体类型(struct)

  • 共用体类型(union)

  • 函数类型

整型数据

整数数据存储空间和值的范围

字符型数据

浮点型数据

c编译系统把浮点型常量都按双精度处理,分配8个字节

float a = 3.14159f;   //把此3.14159按单精度浮点常量处理,编译时不出现"警告"

long double a = 1.23L;  //把此,1.23作为long double型处理

运算符和表达式

位运算符

位运算符作用于位,并逐位执行操作。&、 | 和 ^ 的真值表如下所示:

语句

赋值语句

赋值运算符

=

复合的赋值运算符

a+=3    等价于a=a+3;
x*=y+8    等价于x=x*(y+8);
x%=3    等价于x=x%3;

赋值表达式

变量    赋值运算符    表达式

赋值过程中的类型转换

1将浮点型数据(包括单,双精度)赋给整型变量时,先对浮点数取整,即舍弃小数部分,然后赋予整型变量;
2将整型数据赋值给单,双精度变量时,数值不变,但以浮点数形式存储到变量中.
3将一个double型赋给一float变量时,先将双精度数转换为单精度,即只取6~7位有效数字,存储到float型变量的4个字节中.
4字符型数据赋给整型变量时,将字符的ASCII代码赋给整型变量
5将一个占字节多的整型数据赋给一个占字节少的整型变量或字符变量(例如把占4个字节的int型数据赋给占2个字节的short变量或占1个字节的char变量)时,只将其低字节原封不动地送到被赋值的变量(即发生"截断"),如:
int i=289;
char c ='a';
c=i;

数据的输入输出

printf();
scanf();
putchar();
getchar();

Last updated