C语言的输入输出和条件判断

本文详细介绍了C语言中的数据类型、运算符、表达式,包括基本数据类型、取值范围、常量和变量的使用、输入输出函数如printf和scanf,以及算术运算、逻辑运算、if语句和switch语句的用法。
摘要由CSDN通过智能技术生成

目录

数据类型、运算符与表达式

1.数据类型

基本数据类型包括

取值范围

2.常量和变量

常量

变量

定义变量

变量的分类

为什么要用变量

3.输入与输出

格式输出函数printf()

打印时的输出类型

格式输入函数scanf()

4.算术运算符和算术表达式

两个单目运算符和五个双目运算符

自增/自减运算符

逗号运算符和逗号表达式

求字节运算符

sizeof运算符

strlen函数

5.getchar、getch、putchar函数

6.关系运算符与关系表达式

优先级

7.逻辑运算符与逻辑表达式

8.if语句

9.条件运算符

10.switch语句


数据类型、运算符与表达式

1.数据类型

基本数据类型包括

  • 整数类型
    • 基本整型(int)
    • 短整型(short)
    • 长整型(long)
    • 双长整型(long long)
    • 字符型(char)
    • 布尔型(bool)
  • 浮点类型
    • 单精度浮点型(float)
    • 双精度浮点型(double)

取值范围

数据类型取值范围字节
char-128~1271字节(8位)
short-32768~327672字节(16位)
int-2147483648~21474836474字节(32位)
long-2147483648~21474836474字节(32位)
long long-9223372036854775808~92233720368547758078字节(64位)
float1.175*10^-38~3.402*10^384字节(32位)
double2.225*10^-308~1.797*10^3088字节(64位)

2.常量和变量

常量

常量包括:

  • 字面常量
    • 任何类型:布尔型、整型、浮点型、字符、字符串等
  • const修饰的常量
    • const修饰普通变量,结果为定义了一个常量,但是这个常量可以通过指针修改
  • #define修饰的标识符常量
    •  定义的标识符不占内存,只是一个临时的符号,预编译后这个符号就不存在了 
    • 使用:#define MAXSIZE 100
      • 代码中所有的MAXSIZE将会被替换为100
  • 枚举常量
    • enum 枚举类型名 {常量1,常量2,常量3,.......};

变量

定义变量

int a=10;

变量的分类

变量分为:全局变量和局部变量

  1. 局部变量的生命周期是:进入作用域生命周期开始,出作用域生命周期结束。
  2. 全局变量的生命周期是:整个程序的生命周期。

在全局变量和局部变量同时存在时,优先执行局部变量

这一段代码输出的结果是15

为什么要用变量

输入时要先定义变量,循环时也需要变量的自增或自减……

此处定义的变量i的自增可以输出一串递增的数字。

3.输入与输出

格式输出函数printf()

格式:
printf(“格式控制字符串”,输出列表);

格式控制:由双引号括起来的字符串,用于指定输出格式。

输出表列:需要输出的数据列表,彼此间用逗号分隔,可以是任意合法的表达式。

打印时的输出类型

数据类型打印类型
char%c
short%hd
int

%d(十进制)

%o(八进制)

%x(十六进制)

long%ld
long long%lld
float%f
double%lf
数据类型打印类型
无符号数(十进制)%u
字符串%s
打印一个百分号(%)%%
float类型保留两位小数(包括小数点一共五位)%5.2f
标准化指数形式输出实数(标准保留六位小数)%e

%e:

小数点前必须有而且只能有一位为非零数字

格式输入函数scanf()

格式:
scanf(“格式控制”,地址表列);

输入数据时不可指定精度,但可指定宽度

4.算术运算符和算术表达式

两个单目运算符和五个双目运算符

单目正+
单目负-
*
/
取模%
加法+
减法-
  • 按照运算符的优先级别从高到低依次执行
  • 用+、-、*、/运算的两个数中有一个是double类型,那结果也是double型,这是因为所有实数都按double型进行运算

自增/自减运算符

int a=1;

a=a+1;

printf("%d",a);

这里表示a=a+1;的语句也可以写成:

  • a+=1;
  • a++;
  • ++a;

但是a++和++a还是有区别的

int a=1;

int b=a++;

printf("%d\n",a);

printf("%d\n",b);

int c=++a;

printf("%d\n",a);

printf("%d\n",c);

逗号运算符和逗号表达式

//输出9 9 8

主要是为了更好的利用一行的空间,使得代码更加紧凑

求字节运算符

sizeof运算符

运算符sizeof用于计算数据类型所占字节数,就是计算该数据所占空间大小。单位是字节,是求字节数运算符。

对于字符串来说,是以‘/0’结尾的,sizeof运算符也会计算‘/0’

//输出8,9,6

strlen函数

使用时记得加头文件 #include<string.h> 

strlen()函数遇‘\0’结束

//输出3  9

5.getchar、getch、putchar函数

  1. getchar()和getch()所需要包含的头文件不同,一般是用getchar()
  2. getchar() 函数只能接收一个字符,其函数返回值就是从输入端得到的一个字符。
  3. putchar:putchar 函数打印它的参数
    	putchar(a);
    	
    	//等价 printf
    	printf("%c",a); 

6.关系运算符与关系表达式

大于>
大于等于>=
小于<
小于等于<=
不等于!=
等于==

得到的都是关系表达式的真值或者假值

优先级

优先级从小到大:

赋值运算(类似于int a=1)-->关系运算(类似于a!=b)-->算术运算(类似于a+b)

7.逻辑运算符与逻辑表达式

  逻辑运算的真假值

ab!a!ba&&ba||b

8.if语句

用法:

if (表达式1){

       语句1;

}

else if (表达式2){

       语句2;

}

else{

       语句3;

}

9.条件运算符

条件运算符(?:)是唯一一个三目运算符,可以有效减少代码量

10.switch语句

用法:

switch(表达式){
        case 常量1:语句1
        case 常量2:语句2
        default:语句n   
        break;
}

如果输入了一个switch语句中没有的常量值,就会执行default后的语句。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

明里灰

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值