菜单
×
   ❮   
HTML CSS JAVASCRIPT SQL PYTHON JAVA PHP HOW TO W3.CSS C C++ C# BOOTSTRAP REACT MYSQL JQUERY EXCEL XML DJANGO NUMPY PANDAS NODEJS R TYPESCRIPT ANGULAR GIT POSTGRESQL MONGODB ASP AI GO KOTLIN SASS VUE DSA GEN AI SCIPY AWS CYBERSECURITY DATA SCIENCE
     ❯   

C 实际示例


实践示例

此页面包含实际项目中使用的实践示例列表。


变量和数据类型

示例

使用变量存储大学生的不同数据

// 学生数据
int studentID = 15;
int studentAge = 23;
float studentFee = 75.25;
char studentGrade = 'B';

// 打印变量
printf("Student id: %d\n", studentID);
printf("Student age: %d\n", studentAge);
printf("Student fee: %f\n", studentFee);
printf("Student grade: %c", studentGrade);
自己动手试一试 »

示例

计算矩形的面积(通过乘以长度和宽度)

// 创建整数变量
int length = 4;
int width = 6;
int area;

// 计算矩形的面积
area = length * width;

// 打印变量
printf("Length is: %d\n", length);
printf("Width is: %d\n", width);
printf("Area of the rectangle is: %d", area);
自己动手试一试 »

示例

使用不同的数据类型来计算和输出物品总成本

// 创建不同数据类型的变量
int items = 50;
float cost_per_item = 9.99;
float total_cost = items * cost_per_item;
char currency = '$';

// 打印变量
printf("Number of items: %d\n", items);
printf("Cost per item: %.2f %c\n", cost_per_item, currency);
printf("Total cost = %.2f %c\n", total_cost, currency);
自己动手试一试 »

示例

计算用户在游戏中分数占最高分的百分比

// 将游戏中可能获得的最大分数设置为 500
int maxScore = 500;

// 用户的实际分数
int userScore = 423;

// 计算用户分数占最大可用分数的百分比
float percentage = (float) userScore / maxScore * 100.0;

// 打印百分比
printf("User's percentage is %.2f", percentage);
自己动手试一试 »

有关 C 语言中变量和数据类型的教程,请访问我们的变量章节数据类型章节


布尔值

示例

判断一个人是否足够大可以投票

int myAge = 25;
int votingAge = 18;

printf("%d", myAge >= votingAge); // 返回 1 (true),表示 25 岁的人可以投票!
自己动手试一试 »

您也可以将上面的代码包装在 if...else 中,根据结果执行不同的操作

示例

如果 myAge 大于或等于 18,则输出 "Old enough to vote!"。否则输出 "Not old enough to vote."。

int myAge = 25;
int votingAge = 18;

if (myAge >= votingAge) {
  printf("Old enough to vote!");
} else {
  printf("Not old enough to vote.");
}
自己动手试一试 »

有关 C 语言中布尔值的教程,请访问我们的布尔值章节


条件(If..Else)

示例

使用 if..else 语句根据当前时间输出一些文本

int time = 20;
if (time < 18) {
  printf("Good day.");
} else {
  printf("Good evening.");
}
自己动手试一试 »

示例

检查用户是否输入了正确的代码

int doorCode = 1337;

if (doorCode == 1337) {
  printf("Correct code.\nThe door is now open.");
} else {
  printf("Wrong code.\nThe door remains closed.");
}
自己动手试一试 »

示例

找出数字是正数还是负数

int myNum = 10;

if (myNum > 0) {
  printf("The value is a positive number.");
} else if (myNum < 0) {
  printf("The value is a negative number.");
} else {
  printf("The value is 0.");
}
自己动手试一试 »

示例

判断一个人是否足够大可以投票

int myAge = 25;
int votingAge = 18;

if (myAge >= votingAge) {
  printf("Old enough to vote!");
} else {
  printf("Not old enough to vote.");
}
自己动手试一试 »

示例

判断一个数字是偶数还是奇数

int myNum = 5;

if (myNum % 2 == 0) {
  printf("%d is even.\n", myNum);
} else {
  printf("%d is odd.\n", myNum);
}
自己动手试一试 »

有关 C 语言中条件的教程,请访问我们的If..Else 章节


Switch

示例

使用星期几的数字来计算和输出星期几的名称

int day = 4;

switch (day) {
  case 1
    printf("Monday");
    break;
  case 2
    printf("Tuesday");
    break;
  case 3
    printf("Wednesday");
    break;
  case 4
    printf("Thursday");
    break;
  case 5
    printf("Friday");
    break;
  case 6
    printf("Saturday");
    break;
  case 7
    printf("Sunday");
    break;
}
自己动手试一试 »

有关 C 语言中 switch 的教程,请访问我们的Switch 章节


While 循环

示例

使用 while 循环创建一个简单的“倒计时”程序

int countdown = 3;

while (countdown > 0) {
  printf("%d\n", countdown);
  countdown--;
}

printf("Happy New Year!!\n");
自己动手试一试 »

示例

使用 while 循环玩“五子棋”游戏

int dice = 1;

while (dice <= 6) {
  if (dice < 6) {
    printf("No Yatzy\n");
  } else {
    printf("Yatzy!\n");
  }
  dice = dice + 1;
}
自己动手试一试 »

示例

使用 while 循环反转一些数字

// 一个包含一些特定数字的变量
int numbers = 12345;

// 一个存储反转后数字的变量
int revNumbers = 0;

// 反转并重新排序数字
while (numbers) {
  // 获取 'numbers' 的最后一个数字并将其添加到 'revNumber'
  revNumbers = revNumbers * 10 + numbers % 10;
  // 从 'numbers' 中移除最后一个数字
  numbers /= 10;
}
自己动手试一试 »

有关 C 语言中 while 循环的教程,请访问我们的While Loop 章节


For 循环

示例

使用 for 循环创建一个仅打印 0 和 10 之间 **偶数** 值的程序

int i;

for (i = 0; i <= 10; i = i + 2) {
  printf("%d\n", i);
}
自己动手试一试 »

示例

使用 for 循环创建一个以 10 为步长计数到 100 的程序

for (i = 0; i <= 100; i += 10) {
  printf("%d\n", i);
}
自己动手试一试 »

示例

使用 for 循环打印 2 的幂直到 512

for (i = 2; i <= 512; i *= 2) {
  printf("%d\n", i);
}
自己动手试一试 »

示例

使用 for 循环创建一个打印指定数字(本例中为 2)的乘法表的程序

int number = 2;
int i;

// 打印数字 2 的乘法表
for (i = 1; i <= 10; i++) {
  printf("%d x %d = %d\n", number, i, number * i);
}

return 0;
自己动手试一试 »

有关 C 语言中 for 循环的教程,请访问我们的For Loop 章节


数组

示例

创建一个计算不同年龄平均值的程序

// 一个存储不同年龄的数组
int ages[] = {20, 22, 18, 35, 48, 26, 87, 70};

float avg, sum = 0;
int i;

// 获取数组的长度
int length = sizeof(ages) / sizeof(ages[0]);

// 遍历数组元素
for (int i = 0; i < length; i++) {
  sum += ages[i];
}

// 通过将总和除以长度来计算平均值
avg = sum / length;

// 打印平均值
printf("The average age is: %.2f", avg);
自己动手试一试 »

示例

创建一个程序,查找不同年龄中的最低年龄

// 一个存储不同年龄的数组
int ages[] = {20, 22, 18, 35, 48, 26, 87, 70};

// 获取数组的长度
int length = sizeof(ages) / sizeof(ages[0]);

// 创建一个变量并将 ages 的第一个数组元素赋给它
int lowestAge = ages[0];

// 遍历 ages 数组的元素以查找最小年龄
for (int i = 0; i < length; i++) {
  if (lowestAge > ages[i]) {
    lowestAge = ages[i];
  }
}
自己动手试一试 »

有关 C 语言中数组的教程,请访问我们的Arrays 章节


字符串

示例

使用字符串创建一个简单的欢迎消息

char message[] = "Good to see you,";
char fname[] = "John";

printf("%s %s!", message, fname);
自己动手试一试 »

示例

创建一个程序来计算特定单词中找到的字符数

char word[] = "Computer";
printf("The word '%s' has %d characters in it.", word, strlen(word));
自己动手试一试 »

有关 C 语言中字符串的教程,请访问我们的Strings 章节


用户输入

示例

获取用户名并打印

char fullName[30];

printf("Type your full name: \n");
fgets(fullName, sizeof(fullName), stdin);

printf("Hello %s", fullName);
运行示例 »

有关 C 语言中用户输入的教程,请访问我们的User Input 章节


函数

示例

使用函数创建一个将华氏度转换为摄氏度的程序

// 将华氏度转换为摄氏度的函数
float toCelsius(float fahrenheit) {
  return (5.0 / 9.0) * (fahrenheit - 32.0);
}

int main() {
  // 设置一个华氏度值
  float f_value = 98.8;

  // 使用华氏度值调用函数
  float result = toCelsius(f_value);

  // 打印华氏度值
  printf("Fahrenheit: %.2f\n", f_value);

  // 打印结果
  printf("Convert Fahrenheit to Celsius: %.2f\n", result);

  return 0;
}
自己动手试一试 »

有关 C 语言中函数的教程,请访问我们的Functions 章节


结构体

示例

使用结构体存储和输出汽车的不同信息

struct Car {
  char brand[50];
  char model[50];
  int year;
};

int main() {
  struct Car car1 = {"BMW", "X5", 1999};
  struct Car car2 = {"Ford", "Mustang", 1969};
  struct Car car3 = {"Toyota", "Corolla", 2011};

  printf("%s %s %d\n", car1.brand, car1.model, car1.year);
  printf("%s %s %d\n", car2.brand, car2.model, car2.year);
  printf("%s %s %d\n", car3.brand, car3.model, car3.year);

  return 0;
}
自己动手试一试 »

有关 C 语言中结构体的教程,请访问我们的Structures 章节


内存管理

示例

struct list {
  int *data; // 指向存储列表项的内存
  int numItems; // 指示列表中当前有多少项
  int size; // 指示已分配内存中可以容纳多少项
};

void addToList(struct list *myList, int item);

int main() {
  struct list myList;
  int amount;

  // 创建一个列表,并为 10 个项目分配空间
  myList.numItems = 0;
  myList.size = 10;
  myList.data = malloc(myList.size * sizeof(int));

  // 查找内存分配是否成功
  if (myList.data == NULL) {
    printf("Memory allocation failed");
    return 1; // 以错误代码退出程序
  }

  // 将指定数量的项目添加到列表中
  amount = 44;
  for (int i = 0; i < amount; i++) {
    addToList(&myList, i + 1);
  }

  // 显示列表内容
  for (int j = 0; j < myList.numItems; j++) {
    printf("%d ", myList.data[j]);
  }

  // 在不再需要时释放内存
  free(myList.data);
  myList.data = NULL;

  return 0;
}

// 此函数向列表中添加一个项目
void addToList(struct list *myList, int item) {

  // 如果列表已满,则将内存大小调整为可容纳另外 10 个项目
  if (myList->numItems == myList->size) {
    myList->size += 10;
    myList->data = realloc( myList->data, myList->size * sizeof(int) );
  }

  // 将项目添加到列表末尾
  myList->data[myList->numItems] = item;
  myList->numItems++;
}
自己动手试一试 »

有关 C 语言中内存管理的教程,请访问我们的Memory Management 章节



×

联系销售

如果您想将 W3Schools 服务用于教育机构、团队或企业,请发送电子邮件给我们
sales@w3schools.com

报告错误

如果您想报告错误,或想提出建议,请发送电子邮件给我们
help@w3schools.com

W3Schools 经过优化,旨在方便学习和培训。示例可能经过简化,以提高阅读和学习体验。教程、参考资料和示例会不断审查,以避免错误,但我们无法保证所有内容的完全正确性。使用 W3Schools 即表示您已阅读并接受我们的使用条款Cookie 和隐私政策

版权所有 1999-2024 Refsnes Data。保留所有权利。W3Schools 由 W3.CSS 提供支持