C 教程

C 教程 C 语言简介 C 下载安装和环境配置 C 快速入门 C 语法 C 输出 C 注释 C 变量 C 数据类型 C 常量 C 运算符 C 布尔值 C If...Else 语句 C Switch 语句 C While 循环 C For 循环 C Break/Continue 语句 C 数组 C 字符串 C 用户输入 C 内存地址 C 指针

C 函数

C 函数 C 函数参数 C 作用域 C 函数声明 C 递归 C 数学函数

C 文件

C 创建文件 C 写入文件 C 读取文件

C 结构体

C 结构体 C 嵌套结构体 C 结构体和指针 C 联合体 C typedef

C 枚举

C 枚举

C 内存

C 内存管理

C 错误

C 错误 C 调试 C 空值 C 错误处理 C 输入验证

C 更多

C 日期 C 随机数 C 宏 C 代码组织 C 存储类 C 位运算符 C 固定宽度整数

C 项目

C 项目

C 参考资料

C 参考资料 C 关键词 C <stdio.h> C <stdlib.h> C <string.h> C <math.h> C <ctype.h> C <time.h>

C 标准库参考

C 标准库 - 参考手册 C 标准库 - <assert.h> C 标准库 - <ctype.h> C 标准库 - <errno.h> C 标准库 - <float.h> C 标准库 - <limits.h> C 标准库 - <locale.h> C 标准库 - <math.h> C 标准库 - <setjmp.h> C 标准库 - <signal.h> C 标准库 - <stdarg.h> C 标准库 - <stddef.h> C 标准库 - <stdio.h> C 标准库 - <stdlib.h> C 标准库 - <string.h> C 标准库 - <time.h>

C 实例

C 语言实例 C 经典100例 C 编译器 C 测验


C 项目

项目与实际应用

学习如何将你的 C 语言知识应用于实际项目。

在本节中,我们将使用你在整个教程中学到的功能构建小型应用程序。

s

为什么要构建项目?

项目是学习 C 语言的重要组成部分。从小处着手,逐步添加更多功能:

  • 了解实际程序的结构
  • 练习组合各种概念(例如,函数、循环、文件处理)
  • 提升调试和问题解决能力
  • 为求职面试和相关练习做好准备

提示: 构建得越多,理解得越透彻。


项目示例

您可以从使用简单输入输出的小型项目开始。例如,编写一个程序,实现以下功能:

  • 询问您的姓名
  • 询问您的年龄
  • 输出:Hi <name>! You will turn <age+1> next year.

熟练之后,可以尝试一些稍微复杂一些的项目,结合循环、条件语句和数组:

  • 创建一个简单的购物清单程序(存储并打印商品)
  • 猜数字游戏
  • 计算学生的平均分

随着你的 C 语言技能不断提高,你可以尝试更高级的项目,这些项目会涉及到函数、结构和文件处理:

  • 简易计算器
  • 通讯录
  • 待办事项清单
  • 趣味问答游戏

项目:计算学生平均分

让我们创建一个程序,根据多个成绩计算学生的平均分。

程序会要求用户输入 1 到 5 个成绩,并计算平均分。然后显示平均分和对应的字母等级(A 到 F):

示例

// This function returns a letter grade based on the average
char gradeFunction(double avg) {
  if (avg >= 90) return 'A';
  else if (avg >= 80) return 'B';
  else if (avg >= 70) return 'C';
  else if (avg >= 60) return 'D';
  else return 'F';
}

int main(void) {
  int count;
  double sum = 0, grade;

  // Ask the user to enter total grades between 1 to 5
  printf("How many grades (1 to 5)? ");
  scanf("%d", &count);

  // Validate that count is between 1 and 5
  if (count < 1 || count > 5) {
    printf("Invalid number. You must enter between 1 and 5 grades.");
    return 1;  // Exit
  }

  // Loop to collect each grade
  for (int i = 1; i <= count; i++) {
    printf("Enter grade %d: ", i);
    scanf("%lf", &grade);
    sum += grade;
  }

  // Calculate the average score
  double avg = sum / count;

  // Display numeric average
  printf("Average: %.2f", avg);

  // Display letter grade
  printf("Letter grade: %c", gradeFunction(avg));

  return 0;
}

示例输出:

How many grades (1 to 5)? 3
Enter grade 1: 85
Enter grade 2: 91
Enter grade 3: 78
Average: 84.6667
Letter grade: B
运行示例 »

主要概念:循环、函数、条件语句、输入处理和基本逻辑。


练习挑战

编写你自己的小项目。例如,编写一个程序,实现以下功能:

  • 提示用户输入最多 5 件需要购买的商品
  • 将商品存储在一个数组中
  • 打印完整的购物清单
  • 统计用户输入的商品数量

额外挑战: 添加一个功能,允许用户搜索某个项目,并告知他们该项目是否在列表中。

打开 CodeBlocks 或任何类似的 C 语言集成开发环境 (IDE),自行尝试!

从小处着手。一次添加一个功能。记住要经常测试!

提示:我们还在真实案例页面收集了一系列简单的项目。