大家好😃,我是想要慢慢变得优秀的向阳🌞同学👨💻,今天又来【最受欢迎最容易理解的初阶c语言教学】内容😭,生产队的驴都不敢这么勤奋😵,后天彻底结束【最受欢迎最容易理解的初阶c语言教学】内容😆,让我们一起学习c语言一起在寒假💪💪💪
💖💖💖悄悄努力,然后惊艳所有人!💖💖💖
目录
🏔️🏔️数组⛰️⛰️
🏕️🏕️数组的定义🏖️🏖️
如何一下子储存1-9这九个数据呢?
解决这个问题就要用我们今天第一个要学习的知识!数组!
数组定义:一组相同类型元素的集合
数组的c语言表达形式:
#include<stdio.h>
int main()
{
int arr[10] = {1,2,3,4,5,6,7,8,9,10};//定义一个整形数组,最多放10个元素
return 0;
}
再介绍一下非完全初始化数组
#include<stdio.h>
int main()
{
int arr[10] = {1};//定义一个整形数组,最多放10个元素
return 0;
}
如果没有完全初始化数组,剩下数组的位置自动填满0!所以我们常见初始化数组只填一个0的时候,剩下的位置自动也填满0数据!
在这里我们可以看出来数组下标是从0开始的!
注意在定义数组的时候【】中括号里不能填变量(但在最新c99语法中却可以,但大多数编译器还没更新最新的语法库),还有在定义的时候【】可以不定义大小,但在后面{ }中一定要数据,不然就有错,写法大多数是这两种!
#include<stdio.h>
int main()
{
int arr1[10];//定义一个整形数组,最多放10个元素
int arr2[] = { 1,2,3,4,5,6,7,8,9,10 }; //定义一个整形数组,最多放10个元素
return 0;
}
🌋🌋数组的使用🗻🗻
如何一下子输出完数组内的数据呢?
大多数新手会存在这样的疑惑?是这样吗?
#include<stdio.h>
int main()
{
int arr[10] = { 1,2,3,4,5,6,7,8,9,10 }; //定义一个整形数组,最多放10个元素
printf("%d", arr);
return 0;
}
但为什么输出结果却是这样呢?不是我们想要的结果呢?
这是一种新手很容易犯的错误之一,具体为什么会在指针和数组内容为大家讲解的!
正确的使用是这样的!用循环+变量的方法!
#include<stdio.h>
int main()
{
int arr[10] = { 1,2,3,4,5,6,7,8,9,10 }; //定义一个整形数组,最多放10个元素
for (int i = 0; i < 10; i++)
{
printf("%d ", arr[i]);
}
return 0;
}
可能这个时候有人就有疑惑不是说数组不能用变量吗!这里为什么用了?
我说数组定义的不能用变量,而数组使用的一定要用变量哦!~切记
🏟️🏟️字符串🏛️🏛️
🏘️🏘️字符串的定义🏠🏠
这里我们又要开始学习一个新的名词,那什么是字符串呢?
"hello world",这种由双引号引起来的一串字符称为字符串字面值,或者简称字符串。
🏤🏤字符串的特点🏪🏪
字符串的结束标志是一个 \0 的转义字符。在计算字符串长度的时候 \0 是结束标志,不算作字符串内容。
怎么证明\0是字符串长度的结束表示呢?
#include<stdio.h>
int main()
{
printf("hello wo\0rld");
return 0;
}
答案是显而易见的!
🏩🏩字符串的使用 🏰🏰
由于c语言没有字符串类型,字符串的储存方式大多情况下储存在数组里面,因此数组和字符串的关系在c语言从古至今就非常暧昧,使人头疼!
#include <stdio.h>
//下面代码,打印结果是什么?为什么?(突出'\0'的重要性)
int main()
{
char arr1[] = "bit";
char arr2[] = { 'b', 'i', 't' };
char arr3[] = { 'b', 'i', 't', '\0' };
printf("%s\n", arr1);
printf("%s\n", arr2);
printf("%s\n", arr3);
return 0;
}
这里arr1可以等价与arr3,在arr1中后面自动补充了‘\0’