chap07.key

Similar documents
C

C C

C

C 1

C/C++语言 - 运算符、表达式和语句

untitled

nooog

新・解きながら学ぶC言語

CC213

新版 明解C言語入門編

新・明解C言語入門編『索引』

C/C++ - 函数

untitled

2013 C 1 #include <stdio.h> 2 int main(void) 3 { 4 int cases, i; 5 long long a, b; 6 scanf("%d", &cases); 7 for (i = 0; i < cases; i++) 8 { 9 scanf("%

第3章.doc

C/C++ - 字符输入输出和字符确认

c_cpp

C/C++程序设计 - 字符串与格式化输入/输出

C 1 # include <stdio.h> 2 int main ( void ) { 4 int cases, i; 5 long long a, b; 6 scanf ("%d", & cases ); 7 for (i = 0;i < cases ;i ++) 8 { 9

書本介紹


C/C++ 语言 - 循环

C/C++语言 - C/C++数据

2013 C 1 # include <stdio.h> 2 int main ( void ) 3 { 4 int cases, a, b, i; 5 scanf ("%d", & cases ); 6 for (i = 0;i < cases ;i ++) 7 { 8 scanf ("%d %d

C++ 程式設計

C/C++ - 数组与指针

FY.DOC

C/C++语言 - 分支结构

C/C++ - 文件IO

新版 明解C++入門編

[改訂新版]C言語による標準アルゴリズム事典

プログラムの設計と実現II

新・解きながら学ぶJava

untitled

6 C51 ANSI C Turbo C C51 Turbo C C51 C51 C51 C51 C51 C51 C51 C51 C C C51 C51 ANSI C MCS-51 C51 ANSI C C C51 bit Byte bit sbit

Microsoft Word - 把时间当作朋友(2011第3版)3.0.b.07.doc

C/C++ - 字符串与字符串函数

C语言的应用.PDF

51 C 51 isp 10 C PCB C C C C KEIL

1 Project New Project 1 2 Windows 1 3 N C test Windows uv2 KEIL uvision2 1 2 New Project Ateml AT89C AT89C51 3 KEIL Demo C C File

Microsoft PowerPoint - Compiler-7 - Runtime Environment.ppt [兼容模式]

Ps22Pdf

第7章-并行计算.ppt

_汪_文前新ok[3.1].doc

CC213

3.1 num = 3 ch = 'C' 2

( CIP) /. :, ( ) ISBN TP CIP ( 2005) : : : : * : : 174 ( A ) : : ( 023) : ( 023)

3. 給 定 一 整 數 陣 列 a[0] a[1] a[99] 且 a[k]=3k+1, 以 value=100 呼 叫 以 下 兩 函 式, 假 設 函 式 f1 及 f2 之 while 迴 圈 主 體 分 別 執 行 n1 與 n2 次 (i.e, 計 算 if 敘 述 執 行 次 數, 不

untitled

Windows RTEMS 1 Danilliu MMI TCP/IP QEMU i386 QEMU ARM POWERPC i386 IPC PC104 uc/os-ii uc/os MMI TCP/IP i386 PORT Linux ecos Linux ecos ecos eco

Generated by Unregistered Batch DOC TO PDF Converter , please register! 浙江大学 C 程序设计及实验 试题卷 学年春季学期考试时间 : 2003 年 6 月 20 日上午 8:3

untitled

Microsoft Word - 01.DOC

1 LINUX IDE Emacs gcc gdb Emacs + gcc + gdb IDE Emacs IDE C Emacs Emacs IDE ICE Integrated Computing Environment Emacs Unix Linux Emacs Emacs Emacs Un

C++ 程序设计 告别 OJ1 - 参考答案 MASTER 2019 年 5 月 3 日 1

Microsoft Word - mei.doc

Microsoft PowerPoint - 3. 函数Functionl.ppt [兼容模式]

C PICC C++ C++ C C #include<pic.h> C static volatile unsigned char 0x01; static volatile unsigned char 0x02; static volatile unsigned cha

untitled

Microsoft Word - 第3章.doc

C

Microsoft PowerPoint - plan06.ppt

说 : 荀 子 极 偏 驳, 只 一 句 性 恶, 大 本 已 失 5 朱 熹 说 : 荀 扬 不 惟 说 性 不 是, 从 头 到 底 皆 不 识 6 采 取 的 都 是 这 种 理 论 框 架 另 一 种 理 论 框 架 始 于 20 世 纪 前 期, 这 便 是 诸 子 学 研 究 的 框 架

全国计算机技术与软件专业技术资格(水平)考试

WWW PHP

bingdian001.com

javaexample-02.pdf

Microsoft Word - CPE考生使用手冊 docx

CHAPTER VC#

2

untitled

获取 Access Token access_token 是接口的全局唯一票据, 接入方调用各接口时都需使用 access_token 开发者需要进行妥善保存 access_token 的存储至少要保留 512 个字符空间 access_token 的有效期目前为 2 个小时, 需定时刷新, 重复

static struct file_operations gpio_ctl_fops={ ioctl: gpio_ctl_ioctl, open : gpio_open, release: gpio_release, ; #defineled1_on() (GPBDAT &= ~0x1) #def

学习MSP430单片机推荐参考书

農 業 新 知 J 桃 園 區 建 f:! 訊 [ 草 花 專 輯 ] 第 6 3 期 2 番 茄 夜 蛾 長 桶 圓 形, 體 長 約 1 4 公 塵, 肥 胖 而 不 太 移 番 茄 夜 蛾 會 危 害 番 茄 等 果 菜 類 及 花 動 年 發 生 8-9 世 代, 初 孵 化 之 幼 蟲 群

Transcription:

#include <stdio.h> void two(); void three(); int main() printf("i'm in main.\n"); two(); return 0; void two() printf("i'm in two.\n"); three(); void three() printf("i'm in three.\n");

void, int 标识符逗号分隔, 可以为空 < 返回值类型 > < 函数名 >(< 参数列表 >) < 函数体 > 可以为空

int min(int a, int b) return a < b? a : b;

#include <stdio.h> int min(int a, int b) return a < b? a : b; int main() int x, y, c; scanf("%d%d", &x, &y); c = min(x, y); printf("%d\n", c); return 0; 被调函数 主调函数

#include <stdio.h> int min(int a, int b) return a < b? a : b; int main() int x, y, c; scanf("%d%d", &x, &y); c = min(x, y); printf("%d\n", c); return 0;

int gcd(int u, int v) int tmp; while (v = 0) tmp = u % v; u = v; v = tmp; return u;

#include <stdio.h> int main() int x, y, z; x = 145; y = 25; z = gcd(x, y); /* 1 */ printf("gcd(%d, %d) = %d\n", x, y, z); x = 16; y = 24; printf("gcd(%d, %d) = %d\n", x, y, gcd(x, y)); /* 2 */ z = gcd(x, x + y); /* 3 */ printf("gcd(%d, %d) = %d\n", x, x + y, z); return 0;

可以为空 return < 表达式 >;

int min(int x, int y); float max(float x, float y); double sin(double x);

y = sin(x); z = min(x, y); n = printf("hello, %d", x);

返回值类型函数名 ( 参数列表类型 );

#include <stdio.h> int min(int a, int b); int main() int x, y, c; scanf("%d%d", &x, &y); c = min(x, y); printf("%d\n", c); return 0; int min(int a, int b) return a < b? a : b; 声明 定义

#include <stdio.h> int min(int, int); int main() int x, y, c; scanf("%d%d", &x, &y); c = min(x, y); printf("%d\n", c); return 0; int min(int a, int b) return a < b? a : b; 声明 只需类型即可 定义

#include <stdio.h> int min(int a, int b) return a < b? a : b; int main() int x, y, c; scanf("%d%d", &x, &y); c = min(x, y); printf("%d\n", c); return 0; 声明 + 定义

include

#include <stdio.h> void swap(int x, int y) int tmp; tmp = x; x = y; y = x; int main() int a = 10; int b = 20; printf("a = %d, b = %d\n", a, b); swap(a, b); printf("a = %d, b = %d\n", a, b); 能交换成功吗? return 0;

#include <stdio.h> void swap(int x, int y) int tmp; tmp = x; x = y; y = x; int main() int a = 10; int b = 20; printf("a = %d, b = %d\n", a, b); swap(a, b); 能交换成功吗? 不能 printf("a = %d, b = %d\n", a, b); return 0;

#include <stdio.h> int fact(int n) int i, result; result = 1; for (i = 1; i <= n; i++) result *= i; return result; int main() int n; scanf("%d", &n); printf("%d\n", fact(n)); return 0;

#include <stdio.h> int fact(int n) if (n == 0) return 1; else return n * fact(n - 1); int main() int n; scanf("%d", &n); printf("%d\n", fact(n)); return 0;

int gcd(int u, int v) int tmp; while (v = 0) tmp = u % v; u = v; v = tmp; return u;

int gcd(int u, int v) if (v == 0) return u; else return gcd(v, u % v);

#include <stdio.h> #define N 10 int main() int a[n] = 99, 90, 75, 84, 17, 24, 10, 55, 58, 53; int i, max_val; max_val = a[0]; for (i = 1; i < N; i++) if (a[i] > max_val) max_val = a[i]; printf("%d\n", max_val); return 0;

#include <stdio.h> #define N 10 int max_element(int a[n]) int i, max_val; max_val = a[0]; for (i = 1; i < N; i++) if (a[i] > max_val) max_val = a[i]; return max_val; int main() int a[n] = 99, 90, 75, 84, 17, 24, 10, 55, 58, 53; printf("%d\n", max_element(a)); return 0;

#include <stdio.h> #define N 10 int max_element(int a[n]) int i, max_val; max_val = a[0]; for (i = 1; i < N; i++) if (a[i] > max_val) max_val = a[i]; return max_val; int main() int a[n] = 99, 90, 75, 84, 17, 24, 10, 55, 58, 53; printf("%d\n", max_element(a)); return 0;

#include <stdio.h> #define N 10 int max_element(int a[n]) int max_element(int a[]) int i, max_val; max_val = a[0]; for (i = 1; i < N; i++) if (a[i] > max_val) max_val = a[i]; return max_val; int main() int a[n] = 99, 90, 75, 84, 17, 24, 10, 55, 58, 53; printf("%d\n", max_element(a)); return 0;

#include <stdio.h> float average(???)??? int main() int a[100], n, i; scanf("%d", &n); for (i = 0; i < n; i++) scanf("%d", &a[i]); printf("average = %f\n",???); return 0;

#include <stdio.h> float average(int a[], int n) int i; float sum = 0.0f; for (i = 0; i < n; i++) sum += a[i]; return sum / n; int main() int a[100], n, i; scanf("%d", &n); for (i = 0; i < n; i++) scanf("%d", &a[i]); printf("average = %f\n", average(a, n)); return 0;

#include <stdio.h> float average(int a[][4]) int i, j; float sum = 0.0f; for (i = 0; i < 3; i++) for (j = 0; j < 4; j++) sum += a[i][j]; return sum / 12; int main() int a[3][4] = 31, 17, 82, 31, 77, 16, 10, 91, 31, 57, 16, 25; printf("average = %f\n", average(a)); return 0;

可 见性 存在性

块内部有效 全局有效

#include <stdio.h> void f() int i = 3; printf("i = %d\n", i); int main(void) int i = 1; printf("i = %d\n", i); printf("i = %d\n", i); int i = 2; printf("i = %d\n", i); printf("i = %d\n", i); f(); return 0;

#include <stdio.h> void f() int i = 3; printf("i = %d\n", i); int main(void) int i = 1; printf("i = %d\n", i); 局部变量作 用域从定义到块结束 printf("i = %d\n", i); int i = 2; printf("i = %d\n", i); 局部优先原则 i = 1 i = 1 printf("i = %d\n", i); f(); return 0; i = 2 i = 1 i = 3

#include <stdio.h> int a = 1; 全局变量 int b = 2; int max(int a, int b) return a > b? a : b; int main() int a = 3; printf("max = %d\n", max(a, b)); return 0;

auto int a; int a;

#include <stdio.h> int main() int a, b = 0; printf("a = %d, b = %d\n", a, b); if (a == b) int c = 2; printf("c = %d\n", c); return 0;

static int a;

#include <stdio.h> void f() int a = 1; static int b; printf("a = %d, b = %d\n", a, b); a++; b++; int main() f(); f(); f(); return 0;

/* main.c */ #include <stdio.h> int global = 3; void print_global(); void change_global(int value); int main() printf("global = %d\n", global); print_global(); change_global(5); print_global(); printf("global = %d\n", global); return 0;

/* global.c */ #include <stdio.h> extern int global; void print_global() printf("print global: %d\n", global); void change_global(int value) global = value;

/* main.c */ #include <stdio.h> static int global = 3; void print_global(); void change_global(int value); int main() printf("global = %d\n", global); print_global(); change_global(5); print_global(); printf("global = %d\n", global); return 0;

static void f() printf("hello\n");

extern void f() printf("hello\n");