题目一 实现一个函数,打印乘法口诀表,口诀表的行数和列数自己指定
- 分析
自定义参数,用函数解决 - 思路
跟以前一样 - 实现
void printNumberNine(int number) {
for (int i = 1; i < number+1; i++)
{
for (int j = 1; j <= i; j++)
{
printf("%d * %d = %d\t", j, i, i*j);
}
printf("\n");
}
}
题目二 使用函数实现两个数的交换
- 分析
交换变量,引入第三变量,使用函数 - 思路
需要传入地址,才能修改其值,否则传入的参数是一个拷贝
形参是实参的拷贝 - 实现
void changeTwo(int* num1, int* num2) {
int temp = *num1;
*num1 = *num2;
*num2 = temp;
printf("num1:%d\n num2:%d\n", *num1, *num2);
}
题目三 实现一个函数判断year是不是润年
- 分析
使用函数,自定义参数 - 思路
跟以前一样 - 实现
void isRuiyear(int year) {
if (year % 4 == 0 && year % 100 != 0 || year % 400 == 0) {
printf("是闰年\n");
}
printf("不是闰年\n");
}
题目四 创建一个数组,实现函数init()初始化数组,实现empty()清空数组、 实现reverse()函数完成数组元素的逆置。 要求:自己设计函数的参数,返回值
- 分析
对数组进行操作 - 思路
初始化,初始化给定长度数组每个元素为0.
清空数组,让每个元素为0.
reverse,数组逆置 - 实现
void init(int arr[], int size) {
for (int i = 0; i < size; i++)
{
arr[i] = i + 1;
}
}
void empty(int arr[], int size) {
for (int i = 0; i < (sizeof(arr) / sizeof(arr[0])); i++)
{
arr[i] = 0;
}
}
void reverse(int arr[], int size) {
int left = 0;
int right = size - 1;
while (left <= right) {
int temp = arr[left];
arr[left] = arr[right];
arr[right] = temp;
left++;
right--;
}
}
void printarry(int arr[]) {
for (int i = 0; i < 5; i++)
{
printf("i=%d\n", arr[i]);
}
}
题目四 实现一个函数,判断一个数是不是素数
- 分析
函数实现,自定义参数 - 思路
跟以前一样 - 实现
void primeNumber(int number) {
int j = 2;
for (int j = 2; j < number / 2; j++)
{
if (number%j == 0)
break;
}
if (j >= number / 2)
{
printf("%d ", number);
}
}
写在最后
最近推出了公众号 coding趣谈,一位在读学生的技术提升之路,为您提供一系列我在学习路上的笔记,经验,以及感悟。往与君共勉,共同进步! 欢迎大家来关注哦!