第一章——初识C语言

C语言特点:

C语言优点与缺点
代码量小、速度快、功能强大
危险高、开发周期长、可移植性不强

C语言的应用领域:

系统软件开发:

  • 操作系统:windows(C,C++)、Linux(C)、Unix(C)。
  • 驱动程序:主板、显卡、摄像头驱动。
  • 数据库:DB2、Oracle、Sql Server。

应用软件开发:

  • 办公软件:WPS
  • 图形图像多媒体: ACDSee 、Photoshop、 MediaPlayer
  • 嵌入式开发:智能手机、掌上电脑。
  • 游戏开发:2D、3D

一个简单的C程序:求一元二次方程的解

#include <stdio.h>
#include <math.h>  //sqrt()头文件 

int main(){
	//把三个系数保存到计算机中
	int a = 1;
	int b = 5;
	int c = 6;
	
	double delta; 
	double x1;   //存放一元二次方程的其中一个解
	double x2;
	
	delta = b*b - 4*a*c;
	
	if(delta > 0){
		
		x1 = (-b + sqrt(delta)) / (2*a);
		x2 = (-b - sqrt(delta)) / (2*a);
		printf("该一元二次方程有两个解,x1 = %f, x2 = %f\n",x1,x2);
		
	}else if(delta = 0){
		
		x1 = (-b) / (2*a);
		x2 = x1;
		printf("该一元二次方程有唯一解,x1 = x2 = %f\n",x1);
		
	}else{
		
		printf("无解\n");
		
	}
	return 0; 
} 

C语言编程预备知识:

(一):cpu 、内存条、硬盘、显卡、主板、显示器、之间的关系。

  • 主板:通过主板将各个硬件组装在一起。
  • 通过播放视频为例:鼠标双击击视频,操作系统就把视屏内容从外存(硬盘)拷贝到内存(内存条),cpu处理内存条中的数据,视频传给显示器,音频传给声卡。

(二):HelloWorld程序时如何运行起来的?

# include <stdio.h>

int main(void)
{
	printf("Hello World!\n");

	return 0;
}
  • 通过编译与链接生成一个.exe文件,编译软件请求操作系统调用cpu执行这个.exe文件

(三)什么是数据类型?
基本数据类型:
整数:

  • 整型 ——— int
  • 短整型———short int
  • 长整型———long int

浮点数:

  • 单精度浮点数——float
  • 双精度浮点数——double

字符:char

符合数据类型:结构体、枚举、共用体

(四)什么是变量?
变量的本质就是在内存中对应一段存储空间

(五)变量为什么必须初始化?

  • 当一个程序运行完毕后,操作系统将回收这部分内存空间,(注意:操作系统并不清空该内存遗留下来的数据,而是允许其他程序覆盖该内存内容
  • 初始化就是赋初值
  • 以前程序运行完毕后,遗留在内存中的数据——————称为垃圾数据

(六)如何定义变量?

  • 数据类型 变量名 = 初始值;
  • 数据类型 变量名 ; 变量名 = 初始值;
  • C语言以 ;号作为一个语句的分隔符

(六)什么是进制?
生活中用到进制的例子:
一周7天————7进制、一年12个月————12进制、一个小时60分钟————60进制

  • 进制就是逢几进一,我们常说的N进制就是指逢N进一。
  • C语言规定八进制前面要加0(不是字母o),十六进制要加0x或0X,(不是字母o)十进制什么也不加。
  • 在汇编语言中,数字后面加B表示二进制O(大小字母O)表示八进制D表示十进制H表示十六进制
  • 十六进制:A----10、B----11、C----12、D----13、E----14、F----15
# include <stdio.h>

int main(void)
{
	int i = 0x32C;

	printf("i = %d\n", i);     
	/*  
		printf的用法
		%d表示以十进制输出
		%x或%X表示以十六进制输出
		%o表示以八进制输出
	*/


	return 0;
}

(七)什么是常量?

  • 常量是什么:常量是程序中其值不发生变化的量。

整数常量:

  • 十进制、十六进制、8进制数

浮点数常量:

  • 传统写法: float x = 3.2 注 3.2就是浮点型常量,x是float类型变量
  • 科学计数法:
    • float x = 3.2e3 //x的值为3200
    • float x = 12.456e-2 //x的值为0.12456

字符常量:char

  • 单个字符用单引号括起来----------’’, 如 :‘a’
  • 字符串用双引号括起来------------"" , 如:“abc”
  • ‘a’--------"a"的区别:“a”是有‘a’与‘\0’的组合,‘\0’字符串结尾标志

(八)常量是以什么样的二进制代码存储在计算机中?
整数是以补码的形式转化为二进制代码存储在计算机中的
实数是以IEEE754标准转化为二进制代码存储在计算机中的
字符的本质耶与整数的本质相同—————字符通过ASCII码转换为对应的整数然后转换为补码

(九)char使用常见问题解析

# include <stdio.h>

int main(void)
{
	char ch = 'A';  //4行    OK  等价  char ch;  ch = 'A';
//	char ch = "AB";  //error 因为"AB"是字符串, 我们不能把字符串赋给单个字符变量
//	char ch = "A";   //error,“A”是有‘A’与‘\0’的组合,‘\0’字符串结尾标志
	
//	char ch = 'AB'; //'AB'是错误的

//	char ch = 'B';  //error, 因为ch变量已经在4行定义了, 这样会导致变量名被重复定义

	ch = 'C';
	ch = 'D';
	printf("%c\n", ch);


	return 0;
}

(十)什么是ASCII码
它是一种编码规定,规定了不同的字符是用那个整数数值去表示
如:‘A’------------65、‘B’--------------66、‘a’--------------------97、‘b’-----------------98、‘0’--------------------48

猜你喜欢

转载自blog.csdn.net/qq_44923545/article/details/106255220