鱼C论坛

 找回密码
 立即注册
查看: 223|回复: 0

[学习笔记] 每日一学12

[复制链接]
发表于 2024-12-6 17:17:02 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
本帖最后由 6bingame 于 2024-12-6 17:16 编辑

复习函数


什么是函数?
函数(function)是完成特定任务的独立程序代码单元。语法规则定义了函数的结构和使用方式。虽然C中的函数和其他语言中的函数、子程序、过程作用相同,但是细节上略有不同。一些函数执行某种动作,如printf()把数据打印到屏幕上;一些函数找出一个值供程序使用,如strlen()把指定字符串的长度返回给程序。一般而言,函数可以同时具备以上两种功能。

为什么要使用函数?
首先,使用函数可以省去编写重复代码的苦差。如果程序要多次完成某项任务,那么只需编写一个合适的函数,就可以在需要时使用这个函数,或者在不同的程序中使用该函数,就像许多程序中使用putchar()一样。其次,即使程序只完成某项任务一次,也值得使用函数。因为函数让程序更加模块化,从而提高了程序代码的可读性,更方便后期修改、完善。

书本例题
题1:创建一个在一行打印40个星号的函数,并在一个打印表头的程序中使用该函数。

解:
#include<stdio.h>

#define NAME "GIGATHINK, INC."

#define ADDRESS "101 Megabuck Plaza"

#define PLACE "Megapolis, CA 94904"

#define WIDTH 40

void starbar(void) ;                //函数类型

int main()
{
        starbar();

        printf("%s\n", NAME);

        printf("%s\n", ADDRESS);

        printf("%s\n", PLACE);

        starbar();                                //使用函数
        
        return 0; 
} 

void starbar()                                //定义函数
{
        int count;
        
        for (count = 1; count <= WIDTH; count++)

                putchar('*');

        putchar('\n'); 
        
} 


题2:找出两个整数中较小的一个

解:
        
#include<stdio.h>
int imin(int, int);

int main()
{
        int evil1, evil2;
        
        printf("Enter a pair of integer (q to quit):\n");
        
        while(scanf("%d %d", &evil1, &evil2) == 2)
        {
                printf("The lesser of %d and %d is %d.\n",evil1,evil2,imin(evil1,evil2));
                
                printf("Enter a pair of integers (q to quit):\n");
        }
        printf("Bye.\n");
        
        return 0;
}

int imin(int n,int m)
{
        int min;
        
        if (n<m)
                
                min = n;
                
        else
        
                min = m;
                
        return min;
}
                 
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2025-2-23 20:48

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表