交作业(函数相关)

文章介绍了C语言编程中封装函数的实践,包括比较数值大小、处理字符类型(如判断大写、数字、英文字符)、字符转换、数字倒序、计算立方、判断闰年和正数等基础功能。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

交作业(封装函数练习)

1. 判断较大值
#include <stdio.h>

/*
封装一个方法,返回两个整数里较大的那个

@param num1 用户提供的 int 类型数据
@param num2 用户提供的 int 类型数据
@return 返回用户提供的两个 int 类型数据里较大的那个
*/
int max_of_number(int num1, int num2);

/*
打印函数
@param ret int 类型的数据
*/
void print_function(int ret);

int main(int argc, char const *argv[])
{
    int ret = 0;

    ret = max_of_number(10, 20);
    print_function(ret);
    return 0;
}

int max_of_number(int num1, int num2)
{
    // 三目条件运算符/条件运算符/三元运算符
    // 判断条件 ? 真对应结果 : 假对应结果;
    return num1 > num2 ? num1 : num2;
}

void print_function(int ret)
{
    printf("较大值为: %d\n", ret);
}
2. 判断较小值
#include <stdio.h>

/*
封装一个方法,返回两个浮点数里较小的那个

@param num1 用户提供的 double 类型数据
@param num2 用户提供的 double 类型数据
@return 返回用户提供的两个 double 类型数据里较大的那个
*/
double min_of_number(double num1, double num2);

/*
打印函数
@param ret double 类型的数据
*/
void print_function(double ret);

int main(int argc, char const *argv[])
{
    double ret = 0;

    ret = min_of_number(1.34, 1.44);
    print_function(ret);

    return 0;
}

double min_of_number(double num1, double num2)
{
    return num1 < num2 ? num1 : num2;

}

void print_function(double ret)
{
    printf("较小值为: %lf\n", ret);
}
3. 判断字符是否为大写字符
#include <stdio.h>

/*
封装一个方法,判断一个字符是否是大写字母

@param c 用户提供的 char 类型数据
@return 如果用户提供的 char 类型数据是大写字母,返回 1;
        否则返回 0
*/
int is_my_upper(char c);

/*
打印函数

@param ret int 类型数据
*/
void print_function(int ret);

int main(int argc, char const *argv[])
{
    int ret = 0;

    ret = is_my_upper('*');

    print_function(ret);

    return 0;
}

int is_my_upper(char c)
{
    return c >= 'A' && c <= 'Z' ? 1 : 0;
}

void print_function(int ret)
{
    if (ret)
    {
        printf("true\n");
    }
    else
    {
        printf("false\n");
    }
    
}
4. 判断是否为数字字符
#include <stdio.h>

/*
封装一个方法,判断一个字符是否是数字字符

@param c 用户提供的 char 类型数据
@return 如果用户提供的 char 类型数据是数字字符,返回 1;
        否则返回 0
*/
int is_my_number(char c);

/*
打印函数

@param ret int 类型数据
*/
void print_function(int ret);

int main(int argc, char const *argv[])
{
    int ret = 0;

    ret = is_my_number('4');

    print_function(ret);

    return 0;
}

int is_my_number(char c)
{
    return c >= '0' && c <= '9' ? 1 : 0;
}

void print_function(int ret)
{
    if (ret)
    {
        printf("true\n");
    }
    else
    {
        printf("false\n");
    }
    
}
5. 判断字符是否为英文字符
#include <stdio.h>

/*
封装一个方法,判断一个字符是否是英文字符

@param c 用户提供的 char 类型数据
@return 如果用户提供的 char 类型数据是英文字符,返回 1;
        否则返回 0
*/
int is_my_english(char c);

/*
打印函数

@param ret int 类型数据
*/
void print_function(int ret);

int main(int argc, char const *argv[])
{
    int ret = 0;

    ret = is_my_english('a');

    print_function(ret);

    return 0;
}

int is_my_english(char c)
{
    return c >= 'A' && c <= 'Z' || c >= 'a' && c <= 'z'? 1 : 0;
}

void print_function(int ret)
{
    if (ret)
    {
        printf("true\n");
    }
    else
    {
        printf("false\n");
    }
    
}
6. 转换字符为小写
#include <stdio.h>

/*
封装一个方法,传入一个字符,如果是大写那么转化小写然后返回,
否则保持不变返回

@param c 用户提供的 char 类型数据
@return 如果用户提供的 char 类型数据是大写字母,
        大写转换为小写返回;否则直接返回 
*/
char to_my_lower(char c);

/*
打印函数

@param ret char 类型数据
*/
void print_function(char ret);

int main(int argc, char const *argv[])
{
    char ch = '1';

    ch = to_my_lower('G');
    print_function(ch);
    
    return 0;
}

char to_my_lower(char c)
{
    if (c >= 'A' && c <= 'Z')
    {
        return c + 32;
    }
    return c;
}

void print_function(char ret)
{
    printf("字符为: %c\n", ret);
}

7. 倒序输出正整数
#include <stdio.h>

/*
封装一个方法,实现将一个正整数,倒序打印输出! 1234 4321

@param number 用户提供的 int 类型数据
*/
void reverse(int number);

int main(int argc, char const *argv[])
{
    int num = 1234;

    reverse(num);
    return 0;
}

void reverse(int number)
{
    while (number != 0)
    {
        printf("%d",number % 10);
        number /= 10;
    }
    printf("\n");
    
}
8. 计算立方函数
#include <stdio.h>
/*
表达式(立方)	编写程序,计算该数的立方

@param number 用户提供的 double 类型数据
@return 返回值是 double 类型 
*/
double cube(double number);

/*
打印函数

@param ret double 类型数据
*/
void print_function(double ret);

int main(int argc, char const *argv[])
{
    double ret = 0;

    ret = cube(23);

    print_function(ret);

    return 0;
}
double cube(double number)
{
    return number * number * number;
}

void print_function(double ret)
{
    printf("结果为: %lf\n", ret);
}
9. 判断是否为闰年
#include <stdio.h>

/*
流程控制(闰年问题)	输入一个年份,判断该年份是平年还是闰年:
注: 闰年就是第二个月有29天的那一年, 能被4整除但是
    不能被100整除的是闰年, 或者能被400整除的也是闰年

@param year 用户提供的 int 类型数据
@return 如果是闰年返回 1 ,不是返回 0
*/
int is_leap(int year);

/*
打印函数

@param ret int 类型数据
*/
void print_function(int ret);

int main(int argc, char const *argv[])
{
    int ret = 0;

    ret = is_leap(2024);

    print_function(ret);

    return 0;
}

int is_leap(int year)
{
    return 0 == year % 4 && 0 != year % 100 || 0 == year % 400 ? 1 : 0;
}

void print_function(int ret)
{
    if (ret)
    {
        printf("true\n");
    }
    else
    {
        printf("false\n");
    }
    
}
10.判断是否为正数
#include <stdio.h>

/*
表达式(正数判断)传入一个数字, 
判断这个数是否是正数(是,打印YES,不是输出NO)

@param ret int 类型数据
*/
void is_positive_number(int num);

int main(int argc, char const *argv[])
{
    int num = -100;
    
    is_positive_number(num);
    
    return 0;
}
void is_positive_number(int num)
{
    if (num > 0)
    {
        printf("YES\n");
    }
    else
    {
        printf("NO\n");
    }
    
}
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值