函数的定义
int add(int a, int b) { return a + b; }
|
函数名: add
参数: a
和 b
返回值: int
函数体: return a + b;
函数的调用
int main() { int x = 10, y = 20; int z = add(x, y); printf("The sum is: %d", z); return 0; }
|
函数名: main
参数: 无
返回值: int
函数体: 调用 add
函数并将 x
和 y
作为参数,将结果赋值给 z
,然后输出 z
的值。
数组作为函数参数
void printArray(int arr[], int size) { for (int i = 0; i < size; i++) { printf("%d ", arr[i]); } }
int main() { int arr[] = {1, 2, 3, 4, 5}; int size = sizeof(arr) / sizeof(arr[0]); printArray(arr, size); return 0; }
|
函数名: printArray
参数: arr
和 size
返回值: void
函数体: 打印数组 arr
中的元素。
全局变量和局部变量的比较
从两方面分析两者的差异
:
作用域: 全局变量的作用域是整个程序,而局部变量的作用域是函数内部。
生命周期: 全局变量的生命周期是整个程序的运行期间,而局部变量的生命周期则是函数的执行期间。
课后习题第9题
编写一个函数,由实参传来一个字符串,统计此字符串中字母,数字,空格和其他字符的个数,在主函数中输入字符串以及输出上述的结果
。
代码呈现:
#define _CRT_SECURE_NO_WARNINGS #include<stdio.h>
int letter, digit, space, other;
int main() { void count(char[]);
char text[80];
printf("请输入一个字符串:\n"); gets(text);
printf("string:\n"); puts(text);
letter = 0; digit = 0; space = 0; other = 0;
count(text);
printf("该字符串中有,数字:%d个,空格%d个,字母%d个,其他字符%d个", digit, space, letter, other);
return 0; }
void count(char str[]) { int i; for (i = 0; str[i] != '\0'; i++) { if (str[i] >= '0' && str[i] <= '9') { digit++; } else if (str[i] == ' ') { space++; } else if ((str[i] >= 'a' && str[i] <= 'z') || (str[i] >= 'A' && str[i] <= 'Z')) { letter++; } else { other++; } } }
|