//
// main.c
// 函数练习
//
// Created by xiaomage on 15/6/7.
// Copyright (c) 2015年 xiaomage. All rights reserved.
// #include <stdio.h>
/*
【理解】写一个函数打印一朵玫瑰花
【理解】写一个函数打印N朵玫瑰花
【理解】写一个函数从键盘输入三个整型数字,找出其最大值
【理解】写一个函数求三个数的平均值
*/
void printRose()
{
printf(" {@}\n");
printf(" |\n");
printf(" \\|/\n");// 在C语言中\有特殊的函数, 它是一个转义字符
printf(" |\n");
} void printRoses(int value)
{
for (int i = ; i < value; i++) {
/*
printf(" {@}\n");
printf(" |\n");
printf(" \\|/\n");// 在C语言中\有特殊的函数, 它是一个转义字符
printf(" |\n");
*/
printRose();
}
} int getMax(int v1, int v2, int v3)
{
int temp = v1 > v2 ? v1 : v2;
int max = temp > v3 ? temp : v3;
return max;
} int average(int v1, int v2, int v3)
{
int average = (v1 + v2 + v3) / ;
return average;
}
int main(int argc, const char * argv[]) {
/*
// printRose();
int number = 5;
printRoses(number);
*/
/*
printf("请输入三个整数, 用逗号隔开, 以回车结束\n");
int num1, num2, num3;
scanf("%i,%i,%i", &num1, &num2, &num3);
int result = getMax(num1, num2, num3);
printf("result = %i\n", result);
*/ printf("请输入三个整数, 用逗号隔开, 以回车结束\n");
int num1, num2, num3;
scanf("%i,%i,%i", &num1, &num2, &num3);
int result = average(num1, num2, num3);
printf("result = %i\n", result);
return ;
}
//
// main.c
// 函数的调用过程
//
// Created by xiaomage on 15/6/7.
// Copyright (c) 2015年 xiaomage. All rights reserved.
// #include <stdio.h>
/*
4个确定:
1.确定函数名称
2.确定形参列表
3.确定返回值
4.确定返回值类型
*/
// 注意: 形参列表中的变量只有当函数被调用时才会分配存储空间
// 形参列表中的每一个变量我们称之为, 形式参数, 简称形参
int average(int v1, int v2) //调用函数会分配一个内存空间,函数执行结束形参销毁,函数内存空间销毁。
{
int average = (v1 + v2) / ;
return average;
}
int main(int argc, const char * argv[]) {
// 需求: 求两个数的平均值
int a = ;
int b = ;
// 调用函数时传入的参数, 我们称之为实际参数, 简称实参
int result = average(a, b); //调用函数会分配一个内存空间
printf("result = %i\n", result);
return ;
}
//
// main.c
// main函数分析
//
// Created by xiaomage on 15/6/7.
// Copyright (c) 2015年 xiaomage. All rights reserved.
// #include <stdio.h> // main是函数的名称, 是系统规定的名称, 系统启动程序就会调用名称叫做main的函数
// main函数只能由系统调用 ,不能手动调用 // 其实系统在启动程序的时候, 会给我们的程序传递一些参数
// argc : 就是系统传递进来的参数个数, 默认是1
// argv : 就是系统传递进来的参数实际的值, 默认是程序的名称,可以通过xcode编辑器来更改传进来的值,让程序启动就有一个默认的值,
int main(int argc, const char * argv[]) { printf("argc = %i\n", argc);
printf("argv = %s\n", argv[]);//代码的全路径
printf("argv = %s\n", argv[]); // return 结束函数
// 0 : 返回给操作系统, 如果返回0, 代表程序整除结束, 如果返回其它值代表程序非正常结束
return ;
}

c7---函数的更多相关文章

  1. 【逆向篇】分析一段简单的ShellCode——从TEB到函数地址获取

    其实分在逆向篇不太合适,因为并没有逆向什么程序. 在http://www.exploit-db.com/exploits/28996/上看到这么一段最简单的ShellCode,其中的技术也是比较常见的 ...

  2. [汇编与C语言关系]2. main函数与启动例程

    为什么汇编程序的入口是_start,而C程序的入口是main函数呢?以下就来解释这个问题 在<x86汇编程序基础(AT&T语法)>一文中我们汇编和链接的步骤是: $ as hell ...

  3. 关于在用curl函数post网页数据时,遇上表单提交 type为submit 类型而且没有name和id时可能遇到的问题及其解决方法

    curl函数库实现爬网页内容的链接在 http://www.cnblogs.com/linguanh/p/4292316.html 下面这个是没有name和id 标识的 <input type= ...

  4. linux下实现在程序运行时的函数替换(热补丁)

    声明:以下的代码成果,是参考了网上的injso技术,在本文的最后会给出地址,同时非常感谢injso技术原作者的分享. 但是injso文章中的代码存在一些问题,所以后面出现的代码是经过作者修改和检测的. ...

  5. Python函数讲解

    Python函数

  6. C语言学习020:可变参数函数

    顾名思义,可变参数函数就是参数数量可变的函数,即函数的参数数量是不确定的,比如方法getnumbertotal()我们即可以传递一个参数,也可以传递5个.6个参数 #include <stdio ...

  7. PHP文件操作系统----主要的文件操作函数

    一.文件操作系统概述 1.概述: php中的文件操作系统主要是对文件和目录的操作.文件在windows系统下分为3种不同:文件.目录.未知,在linux/unix系统下分为7种不同:block.cha ...

  8. 【228】◀▶ Excel 函数说明

    官方帮助:Excel 函数(按字母顺序列出) 官方帮助:Excel 函数(按类别列出) 参考:EXCEL常用函数大全 01   N_ELEMENTS 表达式或者变量的元素个数. 02   DEFSYS ...

  9. 浏览器内置Console函数使用详解

    浏览器内置Console函数比较好用:Chrome 和 FireFox(Firebug插件) 利用此功能可以像直接在面板里面运行JS一样(写法不同而已) 一.显示信息的命令 Firebug内置一个co ...

  10. etrace 跟踪程序函数动态执行流程

    https://github.com/elcritch/etrace 窗口1: 监控窗口,执行监控程序,显示监控结果 [root@monitor example]# pwd /root/etrace- ...

随机推荐

  1. 爬虫中之Requests 模块的进阶

    requests进阶内容 session处理cookie proxies参数设置请求代理ip 基于线程池的数据爬取 引入 有些时候,我们在使用爬虫程序去爬取一些用户相关信息的数据(爬取张三“人人网”个 ...

  2. Install opencv on Centos

    研究centos 有很长一段时间了,一直没有写过这方面的感觉,今天在看到网友的一篇文章时,结合亲身体会就下面安装opencv的一些步骤与大家共享. CentOS OpenCV已被广泛应用但是也在不断的 ...

  3. Android媒体解码MediaCodec,MediaExtractor

    Android提供了MediaPlayer播放器播放媒体文件,其实MediaPlyer只是对Android Media包下的MediaCodec和MediaExtractor进行了包装,方便使用.但是 ...

  4. C#中null、""、string.empty区别

    (1)NULLnull 关键字是表示不引用任何对象的空引用的文字值.null 是引用类型变量的默认值.那么也只有引用型的变量可以为NULL,如果int i=null,的话,是不可以的,因为Int是值类 ...

  5. win7/win10 未分配磁盘怎样创建扩展分区 也就是逻辑分区(转截)

    我们有时候用windows7的磁盘管理工具对windows7系统分区管理的时候,我们可能会不小心把我们的电脑硬盘扩展分区都删除了,扩展分区变为了未分配的空间,这时候如果我们新建分区的话,建立的都是主分 ...

  6. AppScan用来进行漏洞扫描

    https://www.cnblogs.com/mawenqiangios/p/8573525.html

  7. [Ynoi2019模拟赛]Yuno loves sqrt technology II

    题目大意: 给定一个长为\(n\)的序列,\(m\)次询问,每次查询一个区间的逆序对数. 32MB. 解题思路: 出题人题解 众所周知lxl是个毒瘤,Ynoi道道都是神仙题 二次离线莫队. 对于每个区 ...

  8. 新人--使用layui做的表格,复杂表头,固定列,操作单元格数据计算,点击查询重载表格,可以选择部分或者全部导出

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  9. 运用cat EOF添加文件

    [root@fyc14 nginx1]# cat <<EOF > /etc/yum.repos.d/nginx.repo> [nginx]> name=nginx rep ...

  10. J2EE异常问题总结

    http://blog.csdn.net/rchm8519/article/details/41624381 http://www.51testing.com/html/49/240349-14393 ...