C语言学习_DAY_6_循环控制关键字与函数的定义和使用【C语言学习笔记】

高质量博主,点个关注不迷路🌸🌸🌸
 

目录

I. 循环控制关键字

II. 函数的定义与使用


前言: 书接上回,上回介绍了循环结构,以及实现循环结构的两种语句: for循环和while循环,于是乎,今天首先继续完善循环结构的学习: 学习有关循环控制的两个关键字: break 和 continue,接下来,我们将学习一个新的内容: C语言中函数的定义和使用!

I. 循环控制关键字

首先补充关键字的定义:

所谓关键字,是指在该程序语言下,被赋予特殊含义的词汇,例如for,if,while等等,这些关键字与普通的词汇的不同点在于,关键字是不可以被拿来当做变量名的,例如,不可以写:int if = xxx,因为它们有特殊的含义!!!

C语言中常见的关键字有:

>  void:声明函数无返回值或无参数,声明无类型指针,显式丢弃运算结果  
>  char:字符型类型数据,属于整型数据的一种 
>  int:整型数据,通常为编译器指定的机器字长 
>  float:单精度浮点型数据,属于浮点数据的一种 
>  double:双精度浮点型数据,属于浮点数据的一种
>  short:修饰int,短整型数据,可省略被修饰的int  
>  long:修饰int,长整形数据,可省略被修饰的int 
>  signed:修饰整型数据,有符号数据类型  
>  unsigned:修饰整型数据,无符号数据类型
>  struct:结构体声明  
>  union:共用体声明  
>  enum:枚举声明  
>  typedef:声明类型别名 
>  sizeof:得到特定类型或特定类型变量的大小
>  auto:指定为自动变量,由编译器自动分配及释放。通常在栈上分配 
>  static:指定为静态变量,分配在静态变量区,修饰函数时,指定函数作用域为文件内部 
>  extern:指定对应变量为外部变量,即在另外的目标文件中定义,可以认为是约定由另外文件声明 
>  const:与volatile合称“cv特性”,指定变量不可被当前线程/进程改变(但有可能被系统或其他线程/进程改变)
>  return:用在函数体中,返回特定值(或者是void值,即不返回值)  
>  continue:结束当前循环,开始下一轮循环 
>  break:跳出当前循环或switch结构  
>  goto:无条件跳转语句
>  if:条件语句  else:条件语句否定分支(与if连用)  
>  switch:开关语句(多重分支语句)  
>  case:开关语句中的分支标记 
>  default:开关语句中的“其他”分治,可选
>  for:for循环结构,for(1;2;3)4;的执行顺序为1->2->4->3->2...循环,其中2为循环条件 
>  do:do循环结构,do 1 while(2);的执行顺序是1->2->1...循环,2为循环条件 
>  while:while循环结构,while(1) 2;的执行顺序是1->2->1...循环,1为循环条件
 	以上循环语句,当循环条件表达式为真则继续循环,为假则跳出循环。

回到我们的话题,我们要介绍两种用于循环控制的关键字:break 和 continue,它们的作用如下:

先说break关键字,从这个单词的本意出发,它的意思是打破,打断,果不其然,在C语言中,它的作用就是使得当前的循环终止,我们用一段代码演示一下:

#include<stdio.h>

int main(){
	int a = 3;
	while(a > 0){
		a --;
		if(a < 3){
			printf("a = %d",a);
			break;
		}
	} 
	return 0;
} 

我们观察一下这段代码,首先a的值是3,并且a确实满足大于0,于是进入while循环,在循环体内,首先a执行自减操作,而后执行判断,如果a小于3,则打印a的值,而后执行break关键字,也即跳出循环,那根据我们的分析,最后打印的a应该是2,我们运行一下:

确实如此,因而break的作用就是跳出当前的循环(注意,演示用的while循环,但是对for循环同样有效)

接下来是continue关键字,依旧从词意出发,continue意为继续,那么在C语言中,该关键词的效果就是,退出本轮循环,而后直接进入下一轮循环,听起来有点绕,我们举个例子:

#include<stdio.h>

int main(){
	int a = 3;
	while(a > 0){
		a --;
		if(a == 2){
			continue;
		}
		printf("a = %d\n",a);
	} 
	return 0;
} 

这段代码中,a初始值为3,于是进入while循环,首先自减,而后判断,当a等于2时,由于执行了continue关键字,跳出本轮循环,直接进入下一轮循环也就是立即执行自减运算,于是乎,就不会继续执行下面的打印语句,即a = 2将不会被打印,我们运行代码:

果然,我们发现a = 2确实被continue给跳过了!!!


II. 函数的定义与使用

首先,我们先了解一下在C语言中,什么是函数:

C语言中,函数可以理解为可以完成一定功能的结构,例如我们看下面的一个例子:

int add(int a,int b){

    return a + b;

}

这段代码定义了一个函数,这个函数叫add,它能够完成一个简单的加法运算,而且结构完整,因此我们称这类结构为函数。

那么函数的语法是怎样的呢?我们可以继续往下看:

这张图,初学者可以仔细看一看,上面把一个函数的所有组成成分都进行了图示,我们下面逐一讲解:

返回值类型: 这部分决定了这个函数最终返回的值是什么类型的,例如上图中,返回值类型是int,说明这个函数返回的值是一个int型

函数名: 这个不用多说,就是给函数起一个名字,通常起名字要起的有意义,和这个函数实际的功能一致,例如我的add函数,add意为加法,函数确实实现了加法操作

形式参数: 形式参数,就是指函数在定义的时候,括号里面写的参数,之所以叫形式参数,是因为此时并没有实际传入某个值,只有一个空的形式

返回操作: 由于返回值是int型的,因此我们返回的时候,需要返回int型的值

关于返回值类型,再补充一下: 除了int,之前学过的各种类型,例如double等等也可以作为返回值类型;另外当这个函数不需要返回值时,使用void,表示此函数没有返回值,例如:

void printHello(){

    printf("hello");

}

 接下来,解释一下返回值,到底返回到了哪里,我们看一个例子:

#include<stdio.h>

int add(int a,int b);

int main(){
	
	int a = 3;
	int b = 4;
	int c = add(a,b);
	printf("%d",c);
	return 0;
}

int add(int a,int b){

    return a + b;

}

通过这段代码,不难看出,返回值返回到了函数的调用地方,即我们把add放在代码的某个地方,那么它就会将值返回到此处,这个过程叫做函数的调用

最后,我们讲解一下函数的声明与定义:

通常,在函数被定义之前,我们要先进行声明:

#include<stdio.h>

int add(int a,int b);

int add(int a,int b); 这就是声明语句,先声明,而后在下面定义函数:

#include<stdio.h>

int add(int a,int b);

int add(int a,int b){

    return a + b;

}

这样是最规范的写法,否则有些编译器,可能会报错!!!

因此,我们可以总结: 函数的声明语句就是把函数的定义中的{ }的部分去掉,即可。

那到此为止,C语言函数也学习完成,下一站: C语言数组

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

跳探戈的小龙虾

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值