黑马程序员——C语言基础篇---基础语法

黑马程序员——C语言基础篇---基础语法

------Java培训、Android培训、iOS培训、.Net培训,期待与您交流!-------

    学习了1个多月的视频,终于将基础视频看完了,现在就开始复习和总结一下我所学习到的知识吧。

本篇将通过一个简单的小程序(开发工具:Xcode6.2)来开启我们的C语言学习之旅。

第一个C语言程序.c(代码)

#include 
/*
  需求:通过屏幕输入2个数,计算其和,并将结果打印在屏幕上

*/

int main()  // 主函数,程序的入口
{
    int a = 0 , b = 0; // 定义2个局部变量
    int sum = 0;
    
    printf("请输入a和b的值\n");
    scanf("%d%d", &a , &b);  // 输入2个数
    
    sum = a + b;
    printf("%d + %d = %d\n", a, b, sum); // 打印求和结果
    
    return 0; // 通常返回0,表示程序正常运行
}

通过上面的代码,我们来了解一些C语言的基本语法知识

一、include

    程序开头#include表示包含一个头文件,这里是因为用到了一个系统的库函数:printf(),所以需要引入其头文件。

    这是一个预处理指令——文件包含,它可以将一个文件的全部内容拷贝到另一个文件中。举个例子:上面的求和,可以将它写成一个函数存放在另一个文件中,当我在本程序中需要使用的时候,可以使用include,将这个文件包含进来,这样可以实现多人开发,避免了一个文档中代码量过大。

Include的用法:

(1)  #include <> :这种用法是包含系统的文件。

(2)  #include “”:我们上面举得例子中就可以通过这种方式将文件包含进来。

二、main函数

    main函数是程序的入口,{}之间是我们的函数体,所有的函数功能都是在这里完成,结尾return 0; 表示如果函数正常运行,结果会返回0

三、变量定义

    接下来就是定义变量,接收程序中的数据进行运算和打印了。在了解变量之前,需要了解一些基本的知识。

(1)  关键字

   什么是关键字?就是一些具有特殊意义的符号,在程序中通常会用一些特殊的颜色(Xcode中是紫色的,全是小写)表示,C语言中提供了32个关键字,在上面的程序中,int 就是一个关键字,可以用来定义整型的变量,其他还有float(单精度浮点型)、double(双精度浮点型)、char(字符)、if(条件分支)、while(循环语句)、for(循环语句)等等,这里不一一举例说明,具体使用的时候会再说明。

(2)  标识符

    什么是标识符?就是程序中需要用到的符号和名称,这些是我们自定义的,需要与上面的关键字区别开,接下来要说的变量名就是标识符。

         a.标识符的命名规则

        只能由26个英文字母的大小写、阿拉伯数字(0~9)、下划线(_)组成。

        严格区分大小写,不能以数字开头,不能以关键字作为标识符。

         b.命名规范

         一般起名都会起个有意义的名称,便于理解,而且会采用驼峰标识(从第      2个单词开始,每个单词首字母大写),比如:上面代码中的a应该定义为firstNumber。

    那么什么是变量?就是储存程序运行中一些数据的标识符。

    定义变量的格式是:  变量类型 变量名

    上面的 int a = 0, b = 0;就是定义变量并进行初始化。同一类型的变量可以同时定义,以【,】分隔,这里有个需要注意的地方,局部变量在定义的时候最好进行初始化,也就是定义完一个变量后,马上对其进行初次赋值(如上述代码),因为如果不初始化就使用的话,结果很可能会是一些垃圾数据,而非你需要的值 (这一点我已经受到了血的教训ToT)。

四、scanf函数

    上述代码中用到了scanf()函数,下面我们来看看scanf函数的用法吧。 

    这是在stdio.h中声明的函数,需要传入变量的地址作为参数,可以接收屏幕上从键盘传入的数据,用法就是scanf(“%d”,&a); %d是占位符,要求用户输入十进制的整型数据,&a表示取a的地址。

    scanf函数在使用时有几个注意点:

    (1)  不接收space、Tab、回车键

    当输入这些键时表示,当前变量输入结束,比如上述代码,如果在输入a的值之后,输入这些键,接下来输入的就是b的值了。

    (2)  输入的格式

    先来看一句代码:scanf(“%d-%d”,&a,&b);这表示以【-】作为分隔符,程序运行时必须在输完一个数字后,输入【-】,否则程序无法继续进行,一直停留在输入上。

五、printf函数

关于基本运算这一章会在后面单独发一篇来说明(感觉这里知识点比较多),这里暂且跳过,有了输入,那必须得有输出啊,C语言中的输出就是用printf函数。

Printf的用法:

(1)   打印一句话

传说中的hello world来了

printf(“hello world\n”);

结尾的【\n】表示回车换行

(2)    打印变量值

printf(“%d + %d = %d\n”,a,b,sum);

%d是格式符,表示输出整型变量的值,与后面的变量是一一对应的。

先来说说格式符:

格式符 功能
%d,%i 以带符号的十进制形式输出整数(正数不输出符号)
%o 以不带符号的八进制形式输出整数
%x 以不带符号的十六进制形式输出整数
%u 以不带符号的十进制形式输出整数
%c 输出一个字符
%s 输出一个或多个字符
%f 以小数形式输出单、双精度数,默认输出6位小数
%e 以标准指数形式输出单、双精度数,数字部分小数位6位
%p 输出变量地址

 

上面这些都是格式符对应输出的内容,下面说一些的常用的变量类型的输入(出)格式符吧。

int (整型)-------------------------- %d,%i

long (长整型)--------------------- %ld

unsigned int(无符号整型)----- %u  

float(单精度浮点型) ------------ %f

double(双精度浮点型)---------- %lf(double用%f输出也是可以的,只是如果要求精度的话就要注意了)

char(字符) ------------------------- %c

char *(字符串)--------------------- %s

 

关于printf,还有一点小知识点想说一下。

printf(“%5d”,d);//这样输出会占5位,输出的数字会右对齐             (适用于%d,%f好像不行)

printf(“%.2f”,f);//%f默认输出6位小数,而%.2f表示输出2位小数。

 

好了,已经到“明天”了,大家可以开始自己的第一个C语言小程序了!








你可能感兴趣的:(黑马程序员——C语言基础篇---基础语法)