一、交换两数,由大到小输出
这道题函数内容什么的都已经给了我们了,所以实际上并没有什么思考性的内容在里边,我们只需定义交换函数的参数以及在main函数里完成参数传递即可
定义函数参数,我们要定义什么类型?交换函数,形参直接传入肯定是实现不了的,那么我们就考虑用指针做参数,而且从函数内容看,也确实是在对指针p1, p2进行操作
所以,代码就很容易完成了
//函数参数:
void swap(int* p1, int* p2)
//传入参数
swap(pa, pb)
二、函数实现求字符串长度
定义一个函数,名为f,参数为数组头指针,功能是把字符串长度求出来,所以返回值应该是一个整数
那么我们怎么去求字符串的长度?其实这个就考察了字符串的特性,就是字符串后面会有个结束符'\0'
那么,思路就很清晰了,开个计数器,遍历字符串,没读到'\0'就计数器+1
代码如下:
int f(char* s)
{
int len = 0;
int pos = 0;
while(s[pos++] != '\0')
len++;
return len;
}
三、定义结构体类型
这个也是很基本的考察语法的问题而已,没什么思考量,看着main函数里结构体都用上了啥,把成员名字跟类型推出来即可
代码如下:
struct student{
char name[100];
char sex;
int num;
float score;
};