基于Linux的C入门:Hello World

Hello World

hello world是我们在学习任何一个机器语言的第一个例子。虽然这个例子十分简单却充分体现了一个语言的整体结构。
基于Linux的C入门:Hello World
#include <stdio.h>是一个文件,在C语言中称为头文件,里面有些函数提供给我们直接使用。
main()称为主函数,是C语言中默认的入口函数,在默认情况下运行程序时系统会先调用程序中的main函数。一般情况下,一个完整的程序中主函数是必须的。
{}被称为函数体,定义函数的主要操作。
printf(“hello world\n”);是一条C语言执行命令,被称为语句,每条语句都以英文分号;结束。主要作用是在屏幕上打印hello world。其中printf()是打印函数,它定义在头文件stdio.h中。
使用双引号"包裹的一段文字,被称为字符串,这里是在终端需要输出的内容。
\n是一个换行符,主要是在打印hello world后自动换行。
在main函数中,每个语句都以分号;结尾。
不同于Windows中的一些编译器。在Linux中我们主要利用gcc对.c文件进行编译,
gcc +.c文件 -o +文件名(文件名为可执行文件名)
基于Linux的C入门:Hello World
生成可执行文件后,执行文件便可以得到结果
基于Linux的C入门:Hello World
如果没有#include <stdio.h> ,编译会得到什么错误?
基于Linux的C入门:Hello World
基于Linux的C入门:Hello World
如果没有main()函数,编译会得到什么错误?
基于Linux的C入门:Hello World

二、注释

在编写程序的过程中,为了让人更简单的了解程序,我们可能希望添加一些注释使代码更易读。
基于Linux的C入门:Hello World
若只想对某一行进行注释,使用//
若想对多行进行注释,使用/* */,中间的内容为注释内容。
这些注释的内容并不会被系统执行。不会改变输出结果
基于Linux的C入门:Hello World

三、基本数据类型

1、整形
在输出用%d占位符表示整数
基于Linux的C入门:Hello World
基于Linux的C入门:Hello World
2、浮点数
在输出时使用%f占位符表示。
基于Linux的C入门:Hello World
基于Linux的C入门:Hello World
3、字符
在输出时使用%c占位符表示。
4、在输出时还可以进行算术运算
基于Linux的C入门:Hello World
基于Linux的C入门:Hello World
利用这些数据类型,我们可以输出一个人基本信息
基于Linux的C入门:Hello World
基于Linux的C入门:Hello World

四、算术运算符

加法 + 使它两侧的值加到一起
减法 - 从它前面的数减去后面的数
乘法 * 将它前面的数乘以后面的数
除法 / 用它左边的值除以右边的值
取模/取余 % 求用它左边的值除以右边的数后的余数
优先级:* / % > + -
结合律:自左向右
求半径为5的圆的周长和面积。
利用数学公式可以直接解出
基于Linux的C入门:Hello World
基于Linux的C入门:Hello World
1小时40分钟30秒共计多少秒。
1小时=3600秒,1分钟=60秒
基于Linux的C入门:Hello World
基于Linux的C入门:Hello World
求10000秒是几小时几分钟几秒。
10000/3600得到小时
(10000-10000/3600)/60得到分钟
最后得到秒
基于Linux的C入门:Hello World
基于Linux的C入门:Hello World
已知一个两位整数,分别求出个位数与十位数
一个数除以10得到十位数
一个数除对10取余得到个位数
基于Linux的C入门:Hello World
基于Linux的C入门:Hello World

五、关系运算符

等于 == 检查两个操作数的值是否相等,如果相等则条件为真。
不等于 != 检查两个操作数的值是否相等,如果不相等则条件为真。
大于 > 检查左操作数的值是否大于右操作数的值,如果是则条件为真。
小于 < 检查左操作数的值是否小于右操作数的值,如果是则条件为真。
大于等于 >= 检查左操作数的值是否大于或等于右操作数的值,如果是则条件为真。
小于等于 <= 检查左操作数的值是否小于或等于右操作数的值,如果是则条件为真。
在C语言中0为假,其他为真。
注意:这里除了>和<与数学表示一样,其他的都与数学表示有区别。

关系运算符特点
优先级:算术运算符 > > >= < <= > == !=
结合律:自左向右

六、逻辑运算符

与 && 称为逻辑与运算符。如果两个操作数都非零,则条件为真。
或 || 称为逻辑或运算符。如果两个操作数中有任意一个非零,则条件为真。
非 ! 称为逻辑非运算符。用来逆转操作数的逻辑状态。如果条件为真则逻辑非运算符将使其为假。
逻辑运算符特点:
优先级:! > 算术运算符 > 关系运算符 > && > ||
结合律:&&与||自左向右;!自右向左。

七、对变量命名得规则

1、变量名是字母、数字和下划线的组合。
2、变量名的开头必须是字母或下划线,不能是数字。
3、实际编程中最常用的是以字母开头,而以下划线开头的变量名是系统专用的。
4、变量名中的字母是区分大小写的。比如a和A是不同的变量名,num和Num也是不同的变量名。
5、变量名绝对不可以是C语言关键字。关键词是由C语言规定的具有特定意义的字符串,通常也称为保留字。
关键字得个数于C语言得版本有关。

八、获取输入

利用scanf获取用户在键盘上得输入。

九、控制语句

对于只需要进行1次判断的时候使用if-else语句
if(+判断语句){+执行语句}
else{+执行语句}
当需要进行多次判断时,使用if-else if-else语句
if(+判断语句){+执行语句}
else if{+执行语句}
.
.
else{+执行语句},其中可以可以添加多个else if得判断语句。

九、练习

利用以上的知识进行一些应用。
1、偶数/奇数判断
一个数能被2整除则为偶数,反之为奇数
基于Linux的C入门:Hello World
基于Linux的C入门:Hello World
2、整除判断
一个数能被整除,则余数为0
基于Linux的C入门:Hello World
基于Linux的C入门:Hello World
3、判断1<100<10的结果。
根据关系运算符的特点。
先判断1<100的真假,将其结果再于10比较
基于Linux的C入门:Hello World
基于Linux的C入门:Hello World
4、闰年判断
若是闰年,可以被400整除或者能被4整除且不被100整除
基于Linux的C入门:Hello World
基于Linux的C入门:Hello World
5、三角形构成判断
构成三角形的三边条件为:任意两边之和大于第三边。
基于Linux的C入门:Hello World
基于Linux的C入门:Hello World
6、判断!100+10以及!1+10的结果
任何非0的值都为真,因此!100=0
所以2个式子的值分别为10,11
基于Linux的C入门:Hello World
基于Linux的C入门:Hello World
7、使用变量前没有定义或出现什么情况?使用变量前没有赋值打印和计算结果是什么?
基于Linux的C入门:Hello World
基于Linux的C入门:Hello World
基于Linux的C入门:Hello World
基于Linux的C入门:Hello World
8、华氏温度转摄氏度
摄氏温标©和华氏温标(F)之间的换算关系为:
C=(F-32)/1.8
F=C*1.8+32
基于Linux的C入门:Hello World
基于Linux的C入门:Hello World
9、交换两个整数的值
每个数的值,都有其存放的地址,若直接让a=b,就会将b的值放再a所指向的地址,导致a,b地址内存放的均是b的值而丢失a的值。这时我们就需要引入c来存放a的值
基于Linux的C入门:Hello World
基于Linux的C入门:Hello World
10、计算两个数的和差积商余
基于Linux的C入门:Hello World
基于Linux的C入门:Hello World
11、输入一个年月日组成的数字,按照XXXX年XX月XX日打印出来。例如:输入20190311,打印出2019年3月11日。
除以10000得到年份,对10000取余再除以100得到月份,对100取余得到日期
基于Linux的C入门:Hello World
基于Linux的C入门:Hello World
12、输入一个时分秒组成的数字,按照XX时XX分XX秒打印出来。例如:输入180301,打印出18时3分1秒。
于11同理
基于Linux的C入门:Hello World
基于Linux的C入门:Hello World
13、比较两个数的大小
基于Linux的C入门:Hello World
基于Linux的C入门:Hello World
14、求一个数的相反数和绝对值
基于Linux的C入门:Hello World
基于Linux的C入门:Hello World

十、n+=

n+=1表示n=n+1
同理
n-=1表示n=n-1
n*=1表示n=n*1
n/=1表示n=n/1
基于Linux的C入门:Hello World

十一、++n以及n++

对于++n
++ 自增运算符,整数值增加 1 ++A 相当于 A=A+1
– 自减运算符,整数值减少 1 --A 将得到 A=A-1
基于Linux的C入门:Hello World
基于Linux的C入门:Hello World
对于n++
在赋值时,表达式的值仍为n,在执行完语句后n再进行自加
因此,表达式的值为n,n变量的值为n+1