C语言入门实践:函数与运算符示例解析
需积分: 10 44 浏览量
更新于2024-11-05
1
收藏 17KB TXT 举报
"C语言语法相关的实例代码,包含计算最大值、判断闰年、字符转换、基本算术运算、自增自减操作符以及优先级等知识点。"
这些C语言的例子涵盖了多个基础概念,对初学者理解C语言的语法结构非常有帮助。以下是各个函数的详解:
1. `max` 函数:这是一个简单的函数,用于计算两个整数中的最大值。通过if-else语句判断哪个数值更大并返回。
```c
int max(int a, int b) {
if (a > b) {
return a;
} else {
return b;
}
}
```
2. `year` 函数:这个函数用于判断输入的年份是否为闰年。闰年的条件是能被4整除但不能被100整除,或者能被400整除。如果满足条件,打印年份,否则打印“ƽ”(非闰年标记)。
```c
void year() {
int n;
printf("input number:\n");
scanf("%d", &n);
for (int i = 2000; i <= 2500; i++) {
if (((n % 4 == 0) && (n % 100 != 0)) || (n % 400 == 0)) {
printf("%d", n);
break;
} else {
printf("%dƽ", n);
break;
}
}
getch();
}
```
3. `ch` 函数:该函数将两个小写字母转换为大写字母并打印。这里使用ASCII码,小写字母比大写字母大32。
```c
void ch() {
char a, b;
a = 'a';
b = 'b';
a = a - 32;
b = b - 32;
printf("%c,%c\n%d,%d\n", a, b, a, b);
}
```
4. `c` 函数:展示了如何声明和操作变量,以及打印它们的值。
```c
void c() {
int a = 3, b, c = 5;
b = a + c;
printf("a=%d,b=%d,c=%d\n", a, b, c);
}
```
5. `s` 函数:计算圆的面积,其中`PI`是圆周率,`r`是半径。注意,这里的结果因为类型是`float`,但打印时用了`%d`,可能导致错误的输出。
```c
void s() {
float PI = 3.14159;
int r = 5;
float s = r * r * PI;
printf("s=%f\n", s); // 应该使用%f打印浮点数
}
```
6. `d` 函数:演示了浮点数到整数的转换,并展示了浮点数的打印。
```c
void d() {
float f = 5.75;
printf("(int)f=%d,f=%f\n", (int)f, f);
}
```
7. `e` 函数:展示了整数除法和浮点数除法的区别,以及 `%` 操作符的用法(求余数)。
```c
void e() {
printf("\n\n%d,%d\n", 20 / 7, -20 / 7);
printf("%f,%f\n", 20.0 / 7, -20.0 / 7);
printf("%d\n", 100 % 3);
}
```
8. `f` 函数:展示了自增自减操作符`++`和`--`的前缀和后缀形式及其用法。
```c
void f() {
int i = 8;
printf("%d\n", ++i); // 前缀自增
printf("%d\n", --i); // 后缀自减
printf("%d\n", i++); // 后缀自增
printf("%d\n", i--); // 前缀自减
printf("%d\n", -i++); // 自增在后,先取负再自增
printf("%d\n", -i--); // 自减在后,先取负再自减
}
```
9. `g` 函数:展示了自增操作符的复杂用法,涉及到运算符的优先级。
```c
void g() {
int i = 5, j = 5, p, q;
p = (i++) + (i++) + (i++);
q = (++j) + (++j) + (++j);
printf("%d,%d,%d,%d", p, q, i, j);
}
```
这些例子覆盖了C语言的基本语法元素,包括变量声明、运算符、流程控制、函数定义和调用,以及输入输出操作。对于初学者,理解和分析这些例子有助于巩固C语言的基础知识。
2009-01-03 上传
2014-05-29 上传
2008-05-07 上传
2023-03-31 上传
2008-10-08 上传
2014-06-15 上传
2007-10-25 上传
2007-08-12 上传
zhengyijiandemama
- 粉丝: 0
- 资源: 4
最新资源
- 黑板风格计算机毕业答辩PPT模板下载
- CodeSandbox实现ListView快速创建指南
- Node.js脚本实现WXR文件到Postgres数据库帖子导入
- 清新简约创意三角毕业论文答辩PPT模板
- DISCORD-JS-CRUD:提升 Discord 机器人开发体验
- Node.js v4.3.2版本Linux ARM64平台运行时环境发布
- SQLight:C++11编写的轻量级MySQL客户端
- 计算机专业毕业论文答辩PPT模板
- Wireshark网络抓包工具的使用与数据包解析
- Wild Match Map: JavaScript中实现通配符映射与事件绑定
- 毕业答辩利器:蝶恋花毕业设计PPT模板
- Node.js深度解析:高性能Web服务器与实时应用构建
- 掌握深度图技术:游戏开发中的绚丽应用案例
- Dart语言的HTTP扩展包功能详解
- MoonMaker: 投资组合加固神器,助力$GME投资者登月
- 计算机毕业设计答辩PPT模板下载