初始c语言之简单认识c语言-2

系列文章目录

什么是C语言
第一个C语言程序
数据类型
变量、常量
字符串+转义字符+注释
选择语句
循环语句
函数
数组
操作符
常见关键字
define 定义常量和宏
指针
结构体


前言

上篇博客我们学习到字符串+转义字符+注释,接下来我们学习以下的内容


一、选择语句

c语言中的选择语句:if(条件表达式) else语句
注:此处可参照英文单词的意思来理解,if如果的意思,整体理解就是,if括号内的条件表达式成立,执行if语句后的内容。反之,执行else语句后的内容
举个简单的例子:如果你好好学习,毕业时获得一个好offer,如果不好好学习,毕业后去搬砖
在这里插入图片描述

代码如下(示例):

```c
#include<stdio.h>
int main()
{
	//这里我们要输入选择,用0/1来表示选择,所以需要一个整形变量
	int c=0;
	printf("要好好学习吗?(0/1):");//用0表示不好好学习,1表示好好学习
	scanf("%d", &c);
	//if括号后面不需要;号,if后要执行多个语句时用{}括起来。ps:单个语句可以不需要{},但初学者建议加上{}方便阅读代码
	if(c==1)//c语言中判断相等用 == 两个等号
	{
		printf("好offer\n");
	}
	else
	{
		printf("去搬砖\n");
	}
	return 0;
}

在这里插入图片描述在这里插入图片描述

二、循环语句

1.while语句:while(循环条件)

在这里插入图片描述

代码如下(示例):

#include<stdio.h>
int main()
{
	//人们说,当一个程序员码够两万行代码时,才称的上一名合格的程序员
	int n=0;//用n来表示行数
	while(n<=20000)//注意这里写的循环条件是循环继续的条件.当n<=20000时循环继续
	{
		n++;//n每次自加1等效于n=n+1;
		printf("努力写代码\n");
	}
	if(n>20000)
	{
		printf("恭喜你成为大牛\n");
	}
	return 0;
}

2.for语句

for(循环变量;终止条件;循环变量增量)

代码如下(示例):

#include<stdio.h>
int main()
{
	int n=0;
	for(n=0;n<=20000;n++)
	{
		printf("努力写代码\n");
	}
	if(n>20000)
	{
		printf("恭喜你成为大牛\n");
	}
	return 0;
}

3.do…while语句

代码如下(示例):

#include<stdio.h>
int main()
{
	int n=0;
	do
	{
		printf("努力写代码\n");
		n++;
	}while(n<=20000);
	return 0;
}

注:这里关于for语句和do…while语句不做过多介绍,大家认识就行。

三、函数

函数的使用会让我们的代码更加清楚明了,也会在一定程度上简化我们的代码,下面举一个简单的例子来让大家认识函数。

#include<stdio.h>
int main()
{
	//如果我们要让两个数相加,可以这样写
	int a=10;
	int b=20;
	//这里要把两个数相加的值存起来,需要定义第三个变量
	int sum=0;
	sum=a+b;
	printf("%d\n", sum);//打印结果是30
	//我们也可以写成函数的形式
	return 0;
}
#include<stdio.h>
//定义一个函数Add
//数据类型+函数名(参数1,参数2)
//大家见过的一些代码可能有这样写void Add(int a,int b)
//这里的void是指我们不需要返回数据,当我们需要返回数据时,返回的是什么类型的数据,这里的void就换成对应的数据类型
//我们定义的这个函数需要返回一个整形,所以我们用int Add(int a,int b)
int Add(int x, int y)
{
	int sum=x+y;
	return sum;//return就表示我们要返回的值,如果不需要返回值,写return 0;
}
int main()
{
	int a=10;
	int b=20;
	//当我们定义了一个函数该如何使用呢
	//因为我们的函数会返回一个整形,所以我们要定义一个整形变量来接受函数的返回值
	//函数的使用,直接用函数名+要传递的参数就可以
	//Add是我们定义的函数的名字,我们要将a和b的值加起来,所以传递a和b
	//函数中定义的变量x和y是我们用来存储传递过去的a和b的值用的
	int sum=Add(a,b);
	printf("%d\n", sum);//打印的结果为30
	return 0;
}

四、数组

c语言中定义一组相同类型元素的集合叫做数组,数组是用来存储多个相同类型元素的数。
在这里插入图片描述

#include<stdio.h>
int main()
{
	//定义一个数组
	int arr[10]={0,1,2,3,4,5,6,7,8,9};
	//arr是数组名 [10]表示数组存储的元素的个数
	//如何访问数组中的元素呢?用下标来访问
	//数组中每一个元素都有一个对应的下标,c语言规定,下标从0开始
	//所以我们需要定义一个变量来表示下标,10个数,下标就是0~9
	int i=0;
	for(i=0;i<10;i++)
	{
		printf("%d ", arr[i]);
	}
	return 0;
}

在这里插入图片描述

五、操作符

简单认识一下一些常见的操作符,不多讲

1、算术操作符

+   -   *   /   %

2、移位操作符

>>(右移)   <<(左移)

3、位操作符

&(按位与)     |(按位或)     ^(按位异或)

4、赋值操作符

=   +=   -=   *=   /=   &=   ^=    |=    >>=   <<=

5、单目操作符

!           逻辑反操作
-           负值
+           正值
&           取地址
sizeof      操作数的类型长度(以字节为单位)
~           对一个数的二进制按位取反
--          前置、后置--
++          前置、后置++
*           间接访问操作符(解引用操作符)
(类型)       强制类型转换

6、关系操作符

>
>=
<
<=
!=      用于测试“不相等”
==      用于测试“相等”

7、逻辑操作符

&&     逻辑与
||     逻辑或

8、条件操作符(exp 表达式)

exp1 ? exp2 : exp3

9、逗号表达式

exp1, exp2, exp3, …expN

10、下标引用、函数调用和结构成员

[]     ()     .     ->

六、常见关键字

auto  break   case  char  const   continue  default  do   double 
else  enum extern float  for  goto  if  int  long  register return   
short signed  sizeof  static struct  switch typedef union  unsigned   
void  volatile  while

1、typedef关键字

#include<stdio.h>
//typedef关键字可以用来定义类型
typedef int type;
//type被定义为int这种类型,可以用type来声明变量
int main()
{
	type i=10; 
	int i=10; //二者是一个效果
	return 0;
}

2、static关键字

c语言中,static可以用来修饰变量和函数
static可以改变修饰的局部变量的生命周期

#include<stdio.h>
static int a=10;//static修饰的全局变量
static int Add(int a,int b)//static修饰的函数

//函数的调用会在栈上申请一片空间,当函数调用结束时,这片空间也就归还回去
//在函数中定义的变量会在函数调用结束时释放
//当用static修饰函数中的局部变量时,该变量就不再是在跟随函数在栈上开辟空间
//而是在静态区上开辟空间,所以当函数结束时,该变量并没有被销毁
//ps.有关开辟空间的知识请自行去百度了解,这边不做过多解释
void test()
{
	static int t=0;static修饰的局部变量
	t++;
	printf("%d ", i);
	return 0;
}
int main()
{
	int i=0;
	for(i=0;i<10;i++)
	{
		test();//打印1~9 大家可以自行去试一下去掉static会打印出什么
	}
	return 0;
}

七、#define定义常量和宏

#include<stdio.h>
#define MAX 100  //#define定义常量,可以直接使用
#define ADD(x,y) ((x)+(y)) //#define定义宏,大家认识就行
int main()
{
	printf("%d\n", MAX); //结果为100
	//使用宏,会返回结果
	int sum=ADD(1,2);//这里的1,2会直接替换宏中的x,y
	printf("%d\n", sum);//结果为3
	return 0;
}

八、指针

c语言中指针是用来存放地址的变量

1、内存

内存是电脑上特别重要的存储器,计算机中程序的运行都是在内存中进行的。所以为了有效的使用内存,就把内存划分成一个个小的内存单元,每个内存单元的大小是1个字节。为了能够有效的访问到内存的每个单元,就给内存单元进行了编号,这些编号被称为该内存单元的地址。
在这里插入图片描述

#include<stdio.h>
int main()
{
	int n=10;
	int *p=&n;//定义指针变量 数据类型+(*) &取地址符,用来取出存放变量的地址
	//指针的使用 *p
	*p=20;//p中存放的是n的地址,用*p来找到n,并将n的值修改为20
	return 0;
}

2、指针变量的大小

32位系统中只指针的大小为4个字节,64位系统中指针的大小为8个字节

九、结构体

struct结构体关键字,用来定义结构体,结构体可以用来声明多个数据类型,当有一个复杂对象时,可以用结构体来定义。

#include<stdio.h>
//在c语言中如何定义一个学生类型呢,可以用结构体定义
struct student
{
	char nama[20];//姓名
	int age;//年龄
	char sex[5];//性别
	char id[10];//学号
}
int main()
{
	//结构体的使用
	struct student stu={"张三",18,"男","21010358};
	//struct student是结构体类型,stu是定义的结构体变量
	printf("name=%s age=%d sex=%s id=%s", stu.name,stu.age,stu.sex,stu.id);
	return 0;
}
  • 8
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 7
    评论
提供的源码资源涵盖了安卓应用、小程序、Python应用和Java应用等多个领域,每个领域都包含了丰富的实例和项目。这些源码都是基于各自平台的最新技术和标准编写,确保了在对应环境下能够无缝运行。同时,源码中配备了详细的注释和文档,帮助用户快速理解代码结构和实现逻辑。 适用人群: 这些源码资源特别适合大学生群体。无论你是计算机相关专业的学生,还是对其他领域编程感兴趣的学生,这些资源都能为你提供宝贵的学习和实践机会。通过学习和运行这些源码,你可以掌握各平台开发的基础知识,提升编程能力和项目实战经验。 使用场景及目标: 在学习阶段,你可以利用这些源码资源进行课程实践、课外项目或毕业设计。通过分析和运行源码,你将深入了解各平台开发的技术细节和最佳实践,逐步培养起自己的项目开发和问题解决能力。此外,在求职或创业过程中,具备跨平台开发能力的大学生将更具竞争力。 其他说明: 为了确保源码资源的可运行性和易用性,特别注意了以下几点:首先,每份源码都提供了详细的运行环境和依赖说明,确保用户能够轻松搭建起开发环境;其次,源码中的注释和文档都非常完善,方便用户快速上手和理解代码;最后,我会定期更新这些源码资源,以适应各平台技术的最新发展和市场需求。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 7
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值