C语言概述、数据类型及运算符

突然发现自己C语言忘记的差不多了,连帮别人做程序题都不会了[捂脸]。刚好要帮朋友看下C语言考试,明天考今天复习,压力山大。于是将以前C语言的笔记翻出来,紧急复习一下。

为什么学习C语言

无坚不摧的C语言
在这里插入图片描述
C语言应用广泛,学习C语言在当下仍是一个不错的选择。


编者有话说:尽管我是以C语言做基础,然后转学其他语言。但是真正会C的大佬是真的厉害。

什么是“程序设计”

程序设计的步骤

步骤1:

需求分析:弄清楚让计算机做什么

步骤2:

设计:弄明白计算机该怎样做

  • 设计算法、数学建模,用数学方法求解问题
  • 设计程序代码的结构

步骤3:

编写程序:将设计的结果变成代码,输入到程序编辑器中

步骤4:

调试程序:将源代码编译、运行,分析错误、修改代码

本课程主要讲述步骤3和4,步骤1和2并非没有涉及,只因程序小,感受不深而已

C语言程序的编辑器

常用的有:Visual C++、Code::Blocks、Dev-C++等。

编者有话说:讲真,现在基本都是Win10系统,对那些老程序兼容性不是很好,(win7也一样),因此个人推荐使用VS或VScode。
以上程序我基本都上传到我的另一篇文章分享了,蓝蓝的传送门
请自行选择程序下载,我只可以保证我上传的程序无毒无木马,你在其他地方(指非官方)下载的则请慎重。中毒重装系统太折腾

C语言程序的基本结构

以下是以最简单的输出Hello,World!的小程序做的分析:
在这里插入图片描述

说明:

  1. include是文件包含命令,扩展名为.h的文件称为头文件 ,表示在程序中要用到这个文件中的函数。
  2. main是主函数的函数名。
    注意:1个C语言源程序只允许有1个main函数。
  3. main函数中的内容必须放在一对花括号“{}”中。
  4. printf函数是系统定义的标准函数,其功能是把要输出的内容送到显示器上显示。在stdio.h库函数中。

C语言程序的执行过程

对于一个以.c为尾缀的C语言程序,它的执行分为三步:
在这里插入图片描述
我们来运行两个示例体会一下所讲内容。
示例1
编写程序,设计一个简单的加法器,能够实现两数相加。

#include <stdio.h>
main()
{
    
    int a,b,c;       /*声明语句,int表示整型*/
 a=5;		      /*赋值语句,=为赋值号,*/
b=a*2-1;		  /*将右边表达式的值赋给*/
c=a+b;            /*左边的变量*/
 printf("c=%d",c);    /*输出语句,%d是十进制一般整数的占位符*/
}

示例2
编写程序,输入两个整数,输出它们的和。

#include <stdio.h>
main()
{
    
    int a,b,c;      
 scanf("%d%d",&a,&b);    /* scanf为输入语句,从键盘输入值给变量,需对变量寻址,变量前必须加& */
 c=a+b;
 printf("c=%d",c);
}

好的,接下来介绍C语言的数据类型。

C语言数据类型

定义:
具有相同特征的值的集合以及定义在这个值集上的一组操作
注:数据类型还决定了取值范围、在内存中占用字节数

C的基本数据类型一览表

为了方便看,以图表形式进行展示(下同):
在这里插入图片描述

常量与变量

常量

即在程序中不能改变的量
在C语言中,常量包括以下四种形式:

  • 整型常量
  • 实型常量
  • 字符常量
  • 字符串常量

整型常量(整常数)

整型常量有三种形式,分别是:

  • 十进制整数:由数字0~9和正负号表示.
    如 123,-456,0
  • 八进制整数:由数字0开头,后跟数字0~7表示.
    如 0123,011
  • 十六进制整数:由0x开头,后跟0 ~ 9,A ~ F表示.
    如 0x123,0xEF

实型常量

表示形式:

  • 十进制数形式:(必须有小数点
    如0.123, .123, 123.0, 0.0, 123.

  • 指数形式:(e或E之前必须有数字;指数必须为整数
    如12.3e3 ,123E-2, 1.23e4 , e-5 , 1.2E-3.5

字符常量

定义:用单引号括起来的普通字符或转义字符.
字符常量的值:该字符的ASCII码值

转义字符:反斜线后面跟一个字符或一个代码值表示。主要的转义字符有:
在这里插入图片描述

字符串常量

定义:用双引号("")括起来的字符序列
存储:每个字符串尾自动加一个 ‘\0’ 作为字符串结束标志
字符常量与字符串常量不同

变量

概念:程序执行过程中,其值可以改变的量
变量定义的一般格式:

数据类型  变量1[,变量2,…,变量n];

变量初始化:定义时赋初值
变量的使用:先定义,后使用
注:

  1. 变量名是表示变量的符号,由程序员定义
  2. 变量名的命名规则
    • 只能由英文字母、数字和下划线组成
    • 必须以字母或下划线开头
    • 不可以使用C关键字

整型变量

占字节数随机器不同而不同,一般占一个机器字
可用sizeof(类型标识符)测量

实型变量

float:占4字节,提供7位有效数字
double:占8字节,提供15 ~ 16位有效数字

字符型变量

字符变量存放字符ASCII码
char与int数据间可进行算术运算

没有字符串变量,用字符数组存放

不同类型数据间的转换

隐式转换

什么情况下发生:

  • 运算转换------不同类型数据混合运算时
  • 赋值转换------把一个值赋给与其类型不同的变量时
  • 输出转换------输出时转换成指定的输出格式
  • 函数调用转换------实参与形参类型不一致时转换

运算转换规则:不同类型数据运算时先自动转换成同一类型
在这里插入图片描述

显式转换(强制转换)

一般形式:(类型名) 表达式或变量

(int)(x+y)
(int)x+y

C语言运算符和表达式

运算符和表达式

  1. 运算符是表示某种运算规则的符号,主要有:
  • 赋值运算、算术运算
  • 逻辑运算、关系运算、条件运算
  • 位运算
  1. 表达式是由运算符及其所操作的数据(称操作数)组成的式子。表达式还可以是运算符的操作数

运算符不仅表示某种运算规则,还有优先级和结合性的特征

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

在这里插入图片描述
例:
计算并输出一个三位数的个位、十位和百位数字之和

分析:该问题的核心是如何分解出各个位置的数

百位:整除100即可 表达式为:n/100
个位:模取10即可 表达式为:n%10
十位:将三位数去头(百位)或掐尾(个位),再整除或模取10即可 表达式为:n%100/10或n/10%10

示例
计算并输出一个三位数的个位、十位和百位数字之和

#include <stdio.h>
int main()
{
    
    
     int number = 153, b0 , b1 , b2 , sum ;
     b2 = number / 100; 
     b0 = number % 10 ; 
     b1 = number %100 /10;         
     sum = b2 + b1 + b0 ;
     printf("b2=%d,b1=%d,b0=%d, sum=%d\n",b2,b1,b0,sum);
     return 0;
}

复合赋值运算符和复合赋值表达式

在这里插入图片描述
今天写到这里吧,明天继续
转载请注明出处。如果您觉得对您有所帮助,麻烦点赞支持。

猜你喜欢

转载自blog.csdn.net/m0_46700215/article/details/105646693
今日推荐