C语言(三)

本文详细介绍了C语言中函数的调用、有参和无参函数、嵌套与递归,以及指针的概念、操作和应用,包括一维和二维数组、字符串、函数指针和返回指针,还有结构体的定义、数组与指针的结合。深入理解了这些关键概念,将有助于提升C语言编程能力。
摘要由CSDN通过智能技术生成

C语言(三)

一、函数

1.调用有参函数

开头声明:
float max(floatx,floaty);
结尾解释:
float max(floatx,floaty)

{

return(x>y?x:y);

}

2.调用无参函数(与有参函数区别是不会返回值)

开头声明:
void a();
结尾解释:
void a()

{

printf("xxx\n")

}

3.函数的嵌套

在这里插入图片描述

4.函数的递归

在这里插入图片描述

二、指针

1.指针变量与普通变量

指针=&变量

*指针=指针指定的变量的值
在这里插入图片描述
注:指针方向可改变,注意关联方法。

2.指针变量与一维数组

指针=&数组名[某数]

指针+i=&数组名[某数+i]

*指针=指针指定的变量的值

在这里插入图片描述

&数组名[某数]=数组名+某数

数组名[某数]=*(数组名+某数)

3.指针变量与一维数组相关函数

函数声明:数组名[]改成*p

函数解释:数组名[i]改成*(p+i)

函数使用:数组名改成q(使用前需先关联)

形参由数组名变为指针变量:运用函数声明和函数解释
实参由数组名变为指针变量:运用函数使用

4.指针变量与二维数组

指针=&数组名[数a][数b]

指针+i=&(数组名[数a][数b]后面第i个元素)

*指针=指针指定的变量的值

在这里插入图片描述

&数组名[数a][数b]=数组名[数a]+数b=数组名[0]+a*列数+b

数组名[数a][数b]=*(数组名[数a]+数b)

5.指针变量与二维数组相关函数

形参由数组名变为指针变量:
函数声明:数组名[][某数]改成*p

函数解释:数组名[i][j]改成*(p+i*列数+j)

函数使用:数组名改成*数组名

实参由数组名变为指针变量:

函数声明:数组名[][某数]改成*p

函数解释:数组名[i][j]改成*(p+i*列数+j)

函数使用:数组名改成q(使用前需先关联)

6.指针向量指向二维数组的行变量

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

7.用指向二维数组行变量的指针变量做形参

函数声明:数组名[][某数]改成(*p)[某数]

函数解释:数组名[i][j]改成*((p+i)+j)

8.指针变量与字符串

指针=&数组名[某数]

指针+i=&数组名[某数+i]

*指针=指针指定的字符

&数组名[某数]=数组名+某数

数组名[某数]=*(数组名+某数)

9.指针变量与字符串相关函数

函数声明:数组名[]改成*p

函数解释:数组名[i]改成*(p+i)

函数使用:数组名改成q(使用前需先关联)

形参由数组名变为指针变量:运用函数声明和函数解释
实参由数组名变为指针变量:运用函数使用

10.指针变量与函数

11.返回指针值的函数

12.指针与一维二维数组的数值关系

&a[i]=a+i

a[i]=*(a+i)
在这里插入图片描述

三、结构体

1.定义结构体

struct student

{

int xuehao;

char name[30];

char xingbie;

float chengji;

};

注意最后的分号!!!
在这里插入图片描述

2.结构体数组

在这里插入图片描述

3.使用结构体变量做函数参数

4.结构体变量与指针变量

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值