C语言第一章:简单的C

前言

计算机和编程语言

1、计算机是生活必须品

人类的生活已经离不开计算机了,无论你是否正在使用计算机,你都会有意无意地享受着计算机给你提供的服务。因为我们会使用到计算机上已经有的软件。手机也有相应的APP。当然,如果用尽一切方法也没有自己想要的功能的APP或软件,这时可能就需要我们自己去编写了。

2、学习编程语言的目的

我们要学习编程,但是学习的目的并不是为了写一个我们所需要的软件或APP,而是通过学习程序设计,理解计算机是如何工作的,计算机擅长做些什么?能做些什么?

3、计算机如何解决问题
在这里插入图片描述
你需要告诉计算机:
在这里插入图片描述
在这里插入图片描述
4、什么是程序

当我们想要计算机去做一件事情,我们需要有一个方式,包函了一定的步骤、一定的顺序的这种方式或手段去实现,这样的一种方式或手段,我们可以叫它程序。程序就是用一种特殊的编程语言去描述和表达我们要计算机如何解决问题的方式和步骤。

5、计算机的语言
在这里插入图片描述
原来的样子

int u = 32;
int v = 26;
while(v!=0){
	int temp = u % v;
	u = v;
	v = temp;
}
printf("%d",u);

算法:
在这里插入图片描述
在这里插入图片描述

计算机的思维

1、如何计算 2X + 6 = 20 ?

2、程序的执行
解释:借助一个程序,那个程序能试图理解你的程序,然后按照你的要求执行,简单来说就是做出你想要的动做或事情。
编译:借助一个程序,就像一个翻译,把你的程序翻译成计算机能懂的语言,然后这个机器语言写的程序就能直接执行了。

第一节:hello,C语言

最新语言排行榜Top 10

在这里插入图片描述
在这里插入图片描述
以上内容是国外一家公司在针对各种编程语言在企业当中使用的情况的一份调查分析表中数据截止为2020年2月,并在不断地根据当月使用情况进行更新。有兴趣查看可点击这里进行跳转。
1、现代的编程语言在语法上的差异很小
2、几乎都是C-like语言
3、语言的能力、适用领域主要由库和传统所决定的

C语言的开始

1、由来

C语言在上个世纪70年代开始,由B语言所发展而来的,B语言是从BCPL发展而来的,BCPL是从FORTRAN发展而来的,FORTRAN是第一个人类所使用的高级语言,在上世纪50年代开始流行。
在这里插入图片描述
BCPL和B都支持指针间接方式,所以C也支持了
C语言还受到了PL/1的影响,还和PDP-11的机器语言有很大的关系
1973年3月,第三版的UNIX上出现了C语言的编译器
1973年11月,第四版的UNIX(System Four)发布了这个版本是完全用C语言重新写的

2、C的发展与版本-K&R
在这里插入图片描述
在这里插入图片描述

编程软件

1、C语言用在哪里

1、操作系统
2、嵌入式系统
3、驱动程序(驱动U盘)
4、底层驱动(游戏引擎、网站服务器)
5、图形引擎、图像处理、声音效果

2、C是一种工业语言
在这里插入图片描述
3、编程软件
在这里插入图片描述
在这里插入图片描述
其他选择

MS Visual Studio Express (Windows)
由微软开发,有许多版本,Express是不收费的,但占用内存很大
Xcode (Mac OS X)
苹果的开发工具,非常不错
Exlipse-CDT

Geany (和MinGW一起)

Sublime (和MinGW一起)

vim / emacs (和MinGW一起)

第二节:简单的知识

第一个C程序

1、创建文档
在这里插入图片描述
2、输入代码
在这里插入图片描述

#include <stdio.h>

int main()
{
	printf("Hello World!\n");
	
	return 0;
}

3、保存文档
在这里插入图片描述
4、编译
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
5、运行
在这里插入图片描述
在这里插入图片描述
6、程序详解
在这里插入图片描述
在这里插入图片描述
7、程序中的错误
例:
在这里插入图片描述
编译结果:
在这里插入图片描述

我们中国学生还有一个极其常见的低级错误,就是用了中文输入法来输入程序。那些标点符号在中文和英文可能看上去相似,但是对于计算机是完全不同的符号,如果还开了全角标点的话,问题会更严重。
注意:不要用中文输入法编程

7、使用 printf() 做计算
在这里插入图片描述
完整代码:

#include <stdio.h>

int main()
{
	printf("%d\n",23+43);
	
	return 0;
}

在这里插入图片描述

变量

1、变量的定义
例:输出100-23

#include <stdio.h>

int main()
{
	printf("100-23=%d\n",10023);
	
	return 0;
}

在这里插入图片描述
在这里插入图片描述
例:

	int price = 0;
	
	printf("请输入金额(元):");
	scanf("%d",&price);
	
	int change = 100 - price;
	printf("找您%d元。\n",change);

在这里插入图片描述
在这里插入图片描述

输入的数字,计算机会存放在哪里?在 int price = 0; 这一行中,就定义一个东西叫变量。变量的名字是price,类型是int,初始值是0
变量是一个用于保存数据的地方,当我们需要在程序里保存数据时,比如上面的例 子中要记录用户输入的价格,就需要一个变量来保存它。用一个变量保存了数据,它才能参加到后面的计算中。

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
2、变量赋值与初始化

	int price = 0;
	
	printf("请输入金额(元):");
	scanf("%d",&price);
	
	int change = 100 - price;
	printf("找您%d元。\n",change);

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
例:没有初始化的 i

	int i;
	int j;
	j = i + 10;
	printf("%d\n",j);

在这里插入图片描述

C是一种有类型的语言,所有的变量在使用前必须定义或声明,所有的变量必须具有确定的数据类型。数据类型表示在变量中可以存放指定类型的数据,程序运行过程中也不能改变变量的类型。

3、变量输入
在这里插入图片描述
问题:如果用户输入的不是整数会怎么样?

4、常量与变量

【什么是常量?】
常量,就是不变的量

在这里插入图片描述

	int price = 0;
	
	printf("请输入金额(元):");
	scanf("%d",&price);
	
	int change = 100 - price;
	printf("找您%d元。\n",change);
	
	//可以变成以下内容

	const int AMOUNT = 100;
	int price = 0;
	
	printf("请输入金额(元):");
	scanf("%d",&price);
	
	int change = AMOUNT - price;
	printf("找您%d元。\n",change);

在这里插入图片描述
问题:请尝试提示用户输入两个整数,分别使用变量a和b表示,输出两个整数相加的结果!
例如:
在这里插入图片描述

//参考答案:b
int a;
int b;
printf("请输入两个整数:");
scanf("%d %d",&a,&b);
printf("%d + %d = %d\n",a,b,a+b);

5、浮点数
例:
在这里插入图片描述
尝试编程

printf("请分别输入身高的英尺和英寸,如输入‘5 7’表示5英尺7英寸:");
int foot;
int inch;
scanf("%d %d",&foot,&inch);
printf("身高是%f米。\n",((foot + inch/12) * 0.3048));

在这里插入图片描述
例:10/3 = ?

printf("%d\n",10/3)

在这里插入图片描述
在这里插入图片描述
正确程序代码:

//方法1
printf("请分别输入身高的英尺和英寸,如输入‘5 7’表示5英尺7英寸:");
int foot;
int inch;
scanf("%d %d",&foot,&inch);
printf("身高是%f米。\n",((foot + inch/12.0) * 0.3048));


//方法2
printf("请分别输入身高的英尺和英寸,如输入‘5 7’表示5英尺7英寸:");
double foot;
double inch;
scanf("%lf %lf",&foot,&inch);
printf("身高是%f米。\n",((foot + inch/12) * 0.3048));

====

====

====

第三节:流程控制

====

====

====

====

====

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值