最近由于刚复试完,事情较多停更了两天,今天我们将接初识C语言(一)继续学习初识C语言(二),本节我们将主要浅浅的学习到数组,需要了解初识C语言(一)的内容请同学们自行查阅:初识C语言(一)_徐憨憨!的博客-CSDN博客提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档文章目录前言什么是C语言第一个C语言程序数据类型常量,变量字符串+转义字符+注释选择语句循环语句函数数组操作符常见关键字define定义常量和宏指针结构体前言从本章开始,我们将正式进入C语言的学习当中,首先为了对C语言有一个初步的认识,我将会对C语言所有比较重要的内容做一个浅浅的了解。有的同学会疑问我指针,数组等一些还没有开始学这些内容为什么会出现在本章中,.
https://blog.csdn.net/qq_47908816/article/details/123935676?spm=1001.2014.3001.5502
一.字符串+转义字符+注释
字符串
上一篇博客中我们讲解了有关strlen函数和sizeof运算符的区别,在介绍strlen函数中我们着重说明了字符串相关的知识,这里我们也只是粗略的带过一下,增加一下大家的印象,若想详细了解,请自行查阅:strlen和sizeof的区别_徐憨憨!的博客-CSDN博客相信大多数初步了解C语言的小伙伴们,应该对strlen和sizeof都不陌生,但是在使用时总会出现或多或少的疑问,我将用这一篇博客解决困扰大家许久的问题(仅此一篇你就会了解的透彻),请耐心阅读!!!在深究strlen和sizeof的区别时,首先我们需要知道这两个函数所执行的功能分别时是什么?strlen:strlen=string length,顾名思义,该函数是用来求解字符串的长度的,所以我们也应该探讨一下字符串的概念;我们都知道在编译器中输入printf(”Hello World!”),.https://blog.csdn.net/qq_47908816/article/details/123964670?spm=1001.2014.3001.5502
何为字符串?我们都知道第一个学习的代码就是在屏幕上输出”Hello World!”,类似这种用双引号引起来的一串字符叫做字符串;比如说“abcdef”,“hehe”等等这些均为字符串。对于字符串的话,每一个字符串的末尾都会隐藏一个“\0",我们主要也是最重要了解的就是字符串的结束标志(即“\0"),结束标志的意思就是字符串读取的结束的位置,当我们读取到“\0"时,就会停止对字符串的读取,注意:“\0"只是结束标志,在用strlen计算时“\0"不算作一个字符,而在用sizeof进行计算字节时需要加1。
我们在监视这个字符串数组时,可以明显的看到arr[6]中所存储的正是 “\0",这也验证了任何一个字符串的末尾隐藏了一个“\0"。
#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
#include <string.h>
int main()
{
char arr[] = "abcdef";
printf("%d\n", sizeof("abcdef"));
printf("%d\n", strlen("abcdef"));
return 0;
}
由上段代码编译结果可知,用sizeof打印出的结果为7,而用strlen打印出的结果为6;其原因想必大家也都知道了,就是因为字符串的末尾隐藏了一个”\0",在用strlen计算时读取到“\0"时就会停止读取,而用sizeof时则需要加1。
转义字符
转义字符 | 释义 |
\? | 在书写连续多个问号时,防止他们被解析成三字母 |
\' | 用于表示字符常量 |
\" | 用于表示一个字符串内部的双引号 |
\\ | 用于表示一个反斜杠,防止它被解释为一个转义序列符 |
\a | 警告字符,蜂鸣 |
\b | 退格符 |
\f | 进纸符 |
\n | 换行 |
\r | 回车 |
\t | 水平制表符 |
\v | 垂直制表符 |
\ddd | ddd表示一个1-3个八进制的数字,如:\130x |
\xdd | dd表示2个十六进制的数字,如:\x300 |
这里我将稍微讲解一下绿色注释的几个字符,剩余的平常遇见的较少,同学们可自行了解。
"\'","\"","\\" :
#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
#include <string.h>
int main()
{
printf("\'\n");
printf("\"\n");
printf("\\\n");
return 0;
}
“\n" :该字符表示换行符号 ,在屏幕上打印输出时会自动换行。
#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
#include <string.h>
int main()
{
printf("abc\ndef");
return 0;
}
此处abcdef自动换行。
”\t" :水平制表符,会在屏幕上打印出一个tab键大小的间距。
#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
#include <string.h>
int main()
{
printf("abc\tdef");
return 0;
}
注释
注释的作用:
![](https://i-blog.csdnimg.cn/blog_migrate/6eae4286860e7f8343fb2c25d8e0b5c3.png)
该图标就是注释的操作,注释完之后就是图中所示
该图标就是取消注释的操作,取消注释后就是图中所示
选择语句和循环语句
选择语句
何为选择?举一个简单的例子:
如果你好好学习,校招时拿一个好offer,走上人生巅峰;
如果你摆烂,毕业等于失业,回家种地!
这就是选择,那我们怎么用代码的形式展现出来呢?
#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
int main()
{
int input = 0;
printf("摆烂(1)/学习(0)\n");
scanf("%d", &input);
if (input == 1)
{
printf("回家种地!\n");
}
if (input == 0)
{
printf("走向人生巅峰!\n");
}
return 0;
}
想必大家一定都会和我一样选择学习对吧,拒绝摆烂,哈哈哈!!!
这里的input的输入就是一个选择,选择0则会输出走向人生巅峰,选择1则会输出回家种地!
循环语句
同样我们举个例子来介绍循环语句:
![](https://i-blog.csdnimg.cn/blog_migrate/4b80c34fe5feac7d7f51359e573feea9.png)
C语言中如何实现循环呢?
1.while语句
2.for语句
3.do....while 语句
#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
//这里我主要采用while语句来进行讲解
int main()
{
printf("加入比特\n");
int line = 0;
while (line < 20000)
{
line++;
printf("%d", line);
printf("我要继续努力敲代码\n");
}
if (line >= 20000)
printf("好offer\n");
return 0;
}
由编译结果可知,当line达到20000时就会输出好offer,当line不足20000时,就会一直循环输出我要继续努力敲代码,这里一直输出的语句就是一个循环!!!
函数
学习C语言到现在,想必大家都会用代码来解决两个整数相加了吧,我们一起来实现一下吧!
#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
int main()
{
int a = 0;
int b = 0;
scanf("%d %d", &a, &b);
int sum = a + b;
printf("sum = %d", sum);
return 0;
}
当我们输入10 20之后就会得出结果30!这样我们就解决了两个整数相加的问题,但是如果我们需要计算1000对甚至更多对整数相加时,我们是不是得输入这么多次呢?那么这样的话代码量得多么的庞大呀!这时我们就需要写一个函数,把整数相加的过程包装成一个函数,每次需要计算时我们只需调用这个函数是不是就可以了呀!
改进版:
#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
//定义一个ADD函数来计算两个整数相加
int ADD(int x, int y)
{
int z = x + y;
return z;
}
int main()
{
int a = 0;
int b = 0;
scanf("%d %d", &a, &b);
int sum = ADD(a, b);//每次需要计算时只需调用ADD函数即可
printf("sum = %d", sum);
return 0;
}
此时输入10 20后结果仍然为30,验证正确;让我们一起来看看函数执行的过程吧!
这里的a b为实参,好比原材料,这里的ADD函数好比加工厂,用形参x y来接受并进行加工处理,将计算的结果再重新返回到main函数进行输出!!!
数组
当我们要存储1-10的数字时,我们该怎么存储?我们应该想到首先在内存中,肯定需要10个连续的空间来存放每个数字,所以我们需要引入一个新的概念即数字,数组会为我们开辟10个连续的空间来存放相同类型的元素。那我们该如何定义数组呢?
这两种方法均可,第一种方法说明数组arr最多只能存储10个元素,第二中方法的话,没有知名数组arr的大小,但是计算机会自动识别数组的大小,所以我们在定义数组的时候可以不指明数组的大小!
数组的下标
数组的使用
#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
int main()
{
int i = 0;
int arr[10] = { 1,2,3,4,5,6,7,8,9,10 };
for (i = 0; i < 10; i++)
{
printf("%d ", arr[i]);
}
printf("\n");
return 0;
}
通过一个循环即可输出1-10的所有数字!每一个数字的数字都是用下标来进行访问的!
注意:定义数组时的大小时必须为常量,不能为变量,否则会编译错误,这点我们之前在说明const引用的常变量的时候已经说过!
今天初识C语言(二)已结束!初识C语言应该还剩最后一个模块!继续加油,感谢关注!!!