1. 常量:常量就是表示一些不可以改变的量.比如说我们说的数字:10,20 ,309.等等他们就是常量布恩不能去改变,还有英文字母:a,b,c,d等等这些都是我们编都是我们所说的常量.那么在我们的C语言中常量有哪些呢?
1.1 字面常量:就是我们通常说的数字呀吗,字母呀等等
1.2 const修饰的常变量:在这给大家举例子说明更加容易懂.
#include<stdio.h>
int main() {
int a = 10;
a = 20;
printf("%d", a);
return 0;
}
此时我们看到,此时输出的a的值不是10,而是20,我们改变了a的值,那么此时我们就不能说a就是一个常量了,此时他就是一个变量.那么我们用const给他修饰我们看看结果
#include<stdio.h>
int main() {
const int a = 10;
a = 20;
printf("%d", a);
return 0;
}
此时我们发现系统报错了,说我们已经使用const指定了值.所以此时的a他就是一个常量嘛?不是的,在这要给大家强调一下:被const修饰的虽然它的数值没有办法再改变了,但是它依旧是一个常量,不过它具有常量的属性
再这给大家举例子说明一下:
#include<stdio.h>
int main() {
const int a = 5;
int arr[6] = {1,2,3,4,5,6};
printf("%d", arr[5]);
//pritnf("%d", arr[a]);
return 0;
}
在这,我们看到,当我们输出arr[5]的时候,没有出现错误,但是我们在输出arr[a]的时候报错了.说明此时我们传进去的数字不是一个常量,它是一个变量.
1.3 #define定义的标识符常量 :给大家举个例子说明:
#include<stdio.h>
#define a 100
int main() {
a = 20;
printf("%d", a);
return 0;
}
此时我们发现系统报错了.说我们=两边的数值不相等,我们知道,使用=就是给a来赋值,那么此时系统告诉我们两个值不相等说明此时我们不能给a再赋值,所以此时的a就不是一个变量,此时的a就是一个常量.
1.4 枚举常量:此时需要用到我们C语言中的枚举关键字enum,注意枚举常量必须是大写的.在这我们给大家举个例子,我们给大家枚举一下三原色.
#include<stdio.h>
enum Colour {
RED,
BLUE,
YELLOW
};
int main() {
return 0;
}
这就是一个简单的枚举常量的定义.注意枚举常量在定义的时候一定大写.枚举关键字不能忘 enum
2. 字符串+转移字符+注释
2.1 首先讲一下字符串,在C语言中字符串不是数据类型,这个一定记住了.
首先就是字符常量:也就是我们之前说过的char型的数据元素,我们说过char型数据元素有且仅包含一个字母.
#include<stdio.h>
int main() {
char a = 'a';
printf("%c", a);
return 0;
}
char型数据因为我们之前在基本数据类型的时候有讲过,所以我们在这就不细讲了,接下来我们来给大家讲一讲字符串.
什么是字符串呢?就会我们在写代码的时候看到的双引号所引的就是字符串.最简单的就是我们第一个C语言程序输出的hello world 就是一个字符串.
那么字符串那么多字母,我们在程序中怎么存储呢?那么接下来就给大家说字符串在程序中的存储:其实呀就是使用我们的数组将它存储起来的.那么我们给大家写一个简单的程序来存储一串字符.(在这说明一下我们的数组:所谓的数组就是存储同一类型的一组数据元素的集合)
int main() {
char arr[] = { "abcdf"};
printf("%s", arr);
return 0;
}
此时我们就成功的存储了一个字符串,并且成功的将这个字符串打印出来了.
那么在这我要给大家说明一下,在我们输入字符串的时候,它的后面都会有一个\0,只不过它省略了,那么这个\0是什么东西呢?他就是字符串的结束标志,就是说只要我们的程序读到了\0这个东西的时候我们的程序就会停止运行,下面我们给大家用代码演示以下:
int main() {
char arr[] = { "abcdf\0ghijklm" };
printf("%s", arr);
return 0;
}
此时我们的代码会输出后面的ghijklm 嘛?下面我们把运行的结果放给大家看:
此时我们的发现,我们的代码并没有输出\0后面的东西.也就是说我们的代码在遇到\0时,它不去读取后面的内容了,就停止了,所以说\0就是我们字符串的结束符号.
下面为了证实我么的字符串在遇到\0就停止访问,我们举个例子,我们去求字符串的长度,看看字符串的长度是不是发生了改变.
int main() {
char arr1[] = { "abcdf" };
char arr2[] = { "abcdf\0ghijklm" };
printf("%d\n", strlen(arr1));
printf("%d\n", strlen(arr2));
return 0;
}
此时我们发现我们输出的字符串的长的它时一样的,说明字符串在\0后,他就终止了访问,不管字符串后面有多长,它后面的都无法访问到.
在这我们给大家说一下C语言在打印东西时候需要用到的:
% d 打印整型 %c 打印字符 %s打印字符串 %f 打印folat类型的数据 %lf 打印double类型的数据 %zu 打印sizeof的返回值
2.2 转义字符: 转义字符在C语言中一共有一下几种
在
在这要给大家说一下:在C语言中对代码的注释有两种:一种是C语言本来就有的注释,还有一种是C语言引进C++的一种注释方式:在C语言中它的注释方式是/* */ 它 引进的C++的注释就是反斜杠,下面我们给大家举例子说明一下:
/*
int main(){
int a = 0 ;
return 0 ;
}
*/
上面就是C语言本来的注释方式;下面我们来写一下引进的C++的注释方式
//int main(){
// int a = 0 ;
// return 0 ;
//}
这就是C++引进的注释方式,那么有人就会问问什么要引进呢?那么在这要给大家说一下C语言的注释有什么漏洞,在C语言注释中 如果说/* 遇到*/就会停止,如果出现嵌套注释的时候就会出现问题.
/*
int main(){
/* int a = 0 ;
*/
return 0 ;
}
*/
此时只能注释到 int a = 0;后面的注释不到.
3. 我们给大家讲一下C语言中的选择语句:也就是我们的if else语句
在这给大家举个例子:我们都上大学了,那么我们在学校中该不该好好学习呢?在学校如果我们好好学习我们以后就可以拿到好的offer如果不好好学习将来就只能去卖地瓜.那么我们来用C语言来写一下.
int main() {
int input = 0;
printf("大学要不要好好学习\n");
printf("大学要不要好好学习(0/1)\n");
scanf_s("%d", &input);//在这注意,我用的是VS编译器,我知道使用scanf_s是输入函数.
if (input == 1) {
printf( "拿到好的offer\n");
}
else {
printf("卖地瓜\n");
}
return 0;
}
那么此时我们就实现了一个选择语句.
4. 循环语句:在C语言中循环语句有四种: whlie ;for ; do ..while ; switch语句.四种循环;
接下来我们给大家写一个while循环语句,我们是初步认识C语言,后面会分别对循环进行学习.
那么我们的例子就是,我们现在没有钱,刚刚我们找到了一份工作,一天给我们1K,我们就想着好好上班,给自己买一辆10W的车,那么我们此时就需要奋斗100天吧,100天过去以后我们是不是要去买车了.好 我们接下来给大家写一下
int main() {
int i = 0;
while(i < 100)
{
printf("%s","买车钱还没有够需要继续上班");
printf("%d\n", i);
i++;
}if (i >= 100) {
printf("%s","去提车\n");
}
return 0;
}
5. 接下来我们给大家讲一下什么是函数,所谓的函数就是在C语言中另类提出去的一种方法,和main函数差不多.下面我们给大家举个例子说明一下就举例子说明两个数相加吧
#include<stdio.h>
int add(int x ,int y) {
int z = 0;
z = x + y;
return z;
}
int main() {
int a = 0;
int b = 0;
scanf("%d %d", a, b);
int sum = add(a, b);
printf("%d\n", sum);
return 0;
}
此时就是需要我们输入两个数,回车以后就是这两个数的和了;
好了 本次给大家分享的东西就这些了,期待我们下次见面.