【C语言必知必会 | 第三篇】顺序结构入门,这一篇就够了

简介: 【C语言必知必会 | 第三篇】顺序结构入门,这一篇就够了

引言

C语言是一门面向过程的、抽象化的通用程序设计语言,广泛应用于底层开发。它在编程语言中具有举足轻重的地位。

此文为【C语言必知必会】系列之第三篇,介绍C语言的顺序结构,结合专题优质题目,带领读者从0开始,深度掌握知识点。



1️⃣ 概念介绍

C语言的顺序结构是指程序按照代码的书写顺序依次执行,从上到下逐行执行,没有跳过或重复执行的情况。 顺序结构是C语言中最基本的控制流程,也是程序默认的执行方式。

在顺序结构中,每一行代码都按照顺序执行,前面的代码执行完毕后才会执行后面的代码。

这种顺序执行的特性使得程序能够按照我们编写的逻辑顺序执行操作,逐步实现我们期望的功能。

顺序结构基本要素:输入、输出、赋值。


2️⃣前期准备

在正式开始顺序结构的代码实现之前,我们需要掌握C语句的分类。

C语句主要分为两类,声明语句和执行语句。

其中,执行语句又分为空语句复合语句控制语句表达式语句 等。各个语句也有不同的分支。

以下代码就是一个经典的C代码,其中声明语句与执行语句的结构十分清晰:

#include <stdio.h>
int main( )
{ 
  int  a=23, b=77, sum;  /*声明语句 , 变量定义*/
  sum=a+b;     /* 执行语句: 表达式, 赋值语句 */
   printf("sum=%d\n",  sum); /* 函数调用语句 */
  return 0;
}

这个程序的作用是计算a与b的值。步骤如下:首先,程序会打印出提示信息,等待用户输入两个整数。然后, 通过 scanf 函数将用户输入的值赋给 number1 和 number2 变量。接下来,两个数的和被计算并保存在 sum 变量中。最后, 通过 printf 函数将结果输出到屏幕上。


3️⃣代码解惑

对于上面这个代码,为什么要有 #include、int main 呢?scanf、printf 的作用又是什么呢?

在C语言中,#include <stdio.h> 是一个预处理指令,它告诉编译器包含了标准输入输出库(stdio.h)。stdio.h 包含了一些用于输入和输出的函数定义,如 printfscanf

  • int main():这是C程序的入口函数,也就是程序的起点。所有的C程序都必须从这个函数开始执行。main() 函数返回一个整数值(通常为0),表示程序的退出状态。
  • int:这是C语言的关键字,用于声明一个整型变量。上面的程序声明了一个整型变量a,并把23赋值给a
  • scanf("%d %d", &number1, &number2);:这是一个输入函数,用于从用户处获取输入。scanf 函数按照指定的格式读取用户输入的数据,并将其存储到变量 number1number2 中。

以下是 scanf 函数的基本语法:

scanf("格式化字符串", &变量列表);

在 scanf 函数的语法中,包含两个主要部分:

格式化字符串:指定输入的格式和变量的类型。
它由格式控制符组成,用于指定要读取的数据类型和对应的变量。
例如,%d 表示整数、%f 表示浮点数、%c 表示字符等。
变量列表:通过 & 操作符将要接收输入值的变量传递给 scanf 函数。
变量列表可以包含一个或多个变量,并且用逗号进行分隔。
  • printf("两个数的和为:%d", sum);:这是一个输出函数,用于在屏幕上显示文本或计算结果。printf 函数可以根据指定的格式输出数据,其中 %d 表示要打印的整数。

以下是 printf 函数的基本语法:

printf("格式化字符串", 表达式列表);

在 printf 函数的语法中,包含两个主要部分:

格式化字符串:指定输出的格式和变量的类型。
它由普通字符和格式控制符组成。
格式控制符以 % 开头,用于指定要输出的数据类型,并且可以包含一些修饰符来指定输出的格式。
例如,%d 表示输出整数、%f 表示输出浮点数、%c 表示输出字符等。
对于单精度浮点型或双精度浮点型,%.nf—显示指定的小数位数。
例如%.7f表示将输出的数控制为包含小数点后七位的数。 
表达式列表:通过逗号分隔的表达式列表,提供要作为参数传递给 printf 函数的值。
这些表达式的值将替换格式化字符串中对应的格式控制符位置。

一个简单的输入输出函数是这样的:

#include <stdio.h>
int main() {
    int number1, number2, sum;  
    //声明3个整型变量
    printf("请输入两个整数:");
    //系统自动输出“请输入两个整数:”
    scanf("%d %d", &number1, &number2);
    //用户使用键盘输入两个整数    
    sum = number1 + number2;
    //执行计算语句
    printf("两个数的和为:%d\n", sum);
    //系统输出sum的值
    return 0;
}


4️⃣编程实例

综上所述,顺序结构是一种自上而下的编程方法,我们可以通过构建流程图,更好地实现代码的功能实现。

接着我们根据两个编程实例,进行实战讲解。

题目要求:求2个实型数除法运算的程序,结果保留2位小数.

解题步骤:

1.构建流程图

首先,定义三个double型的实数变量,其中两个做被除数和除数,剩下一个做输出数

然后,使用scanf输入两个实数

计算两个数相除得到的得数

最后输出得数,保留两位小数

2.代码实现

首先 ,double x,y,z

然后 ,scanf(“%lf %lf”, &x, &y);

z=x/y;

最后 printf(“z=%.2f\n”, z);

3.添加预处理命令等,将代码格式化

#include <stdio.h>
int main() {
double  x,  y, z; 
printf("输入2个实数:"); 
scanf("%lf  %lf", &x, &y); 
z=x/y;
printf("z=%.2f\n", z);
    return 0;
}

编译运行结果:

接着我们看下一题:

题目要求:分别输出1个3位正整数的3位数字

解题思路:题目的意思是说,假设一个数为123,我们需要使系统输出1,2和3

解题步骤:

1.构建流程图

2.代码实现

取余是除法中的术语,取余数是指整数除法中被除数未被除尽部分,且余数的取值范围为0到除数之间(不包括除数)的整数。

所以我们可以结合使用除号➗和取余号%实现题目要求

求个位上的数字:三位数%10 例如123%10=3

求十位上的数字:三位数除以10后再%10 例如(123/10)%10=12%10=2

求百位上的数字:三位数除以100 例如123/100=3

格式化代码:

#include <stdio.h>
int main( )
{ 
 int  m, m0, m1, m2; /* m表示三位数, m0表示个, m1表示十, m2表示百*/
 scanf("%d", &m); /* 输入一个三位数并赋值给m */ 
 m0=m%10;   //计算m0
 m1=(m/10)%10;  //计算m1
 m2=m/100;    //计算m2
 printf("%d,%d,%d\n",  m0, m1, m2); //分别输出m0,m1,m2
 return 0;
}

编译运行结果:


5️⃣总结

此文为 【C语言必知必会】系列之第三篇 ,带领读者掌握C语言顺序结构,带领读者从0开始,深度掌握知识点。以题代练对于C语言的学习是十分重要的,所以专栏将提供优质C语言编程题,带领读者全方位掌握C语言。

后续将发布 【C语言必知必会】系列之第四篇:一文带你精通顺序结构,读者可订阅专栏持续跟进专栏更新。

目录
相关文章
|
1月前
|
存储 安全 C语言
【C语言程序设计——选择结构程序设计】预测你的身高(头歌实践教学平台习题)【合集】
分支的语句,这可能不是预期的行为,这种现象被称为“case穿透”,在某些特定情况下可以利用这一特性来简化代码,但在大多数情况下,需要谨慎使用。编写一个程序,该程序需输入个人数据,进而预测其成年后的身高。根据提示,在右侧编辑器补充代码,计算并输出最终预测的身高。分支下的语句,提示用户输入无效。常量的值必须是唯一的,且在同一个。语句的作用至关重要,如果遗漏。开始你的任务吧,祝你成功!,程序将会继续执行下一个。常量都不匹配,就会执行。来确保程序的正确性。
71 10
|
1月前
|
小程序 C语言
【C语言程序设计——基础】顺序结构程序设计(头歌实践教学平台习题)【合集】
目录 任务描述 相关知识 编程要求 测试说明 我的通关代码: 测试结果: 任务描述 相关知识 编程编写一个程序,从键盘输入3个变量的值,例如a=5,b=6,c=7,然后将3个变量的值进行交换,使得a=6,b=7,c=5。面积=sqrt(s(s−a)(s−b)(s−c)),s=(a+b+c)/2。使用输入函数获取半径,格式指示符与数据类型一致,实验一下,不一致会如何。根据提示,在右侧编辑器补充代码,计算并输出圆的周长和面积。
40 10
|
1月前
|
存储 编译器 C语言
【C语言程序设计——入门】C语言入门与基础语法(头歌实践教学平台习题)【合集】
本文档介绍了C语言环境配置和编程任务,主要内容包括: - **C语言环境配置**:详细讲解了在Windows系统上配置C语言开发环境的步骤。 - **第1关:程序改错**:包含任务描述、相关知识(如头文件引用、基本语法规则)、编程要求、测试说明及通关代码。 - **第2关:scanf函数**:涉及`scanf`和`printf`函数的格式与使用方法,提供编程要求、测试说明及通关代码。 文档结构清晰,涵盖从环境搭建到具体编程任务的完整流程,适合初学者学习和实践。
51 4
|
1月前
|
C语言
【C语言程序设计——入门】基本数据类型与表达式(头歌实践教学平台习题)【合集】
这份文档详细介绍了编程任务的多个关卡,涵盖C语言的基础知识和应用。主要内容包括: 1. **目录**:列出所有关卡,如`print函数操作`、`转义字符使用`、`数的向上取整`等。 2. **各关卡的任务描述**:明确每关的具体编程任务,例如使用`printf`函数输出特定字符串、实现向上取整功能等。 3. **相关知识**:提供完成任务所需的背景知识,如格式化输出、算术运算符、关系运算符等。 4. **编程要求**:给出具体的代码编写提示。 5. **测试说明**:包含预期输入输出,帮助验证程序正确性。 6. 文档通过逐步引导学习者掌握C语言的基本语法和常用函数,适合初学者练习编程技能。
45 1
|
1月前
|
存储 编译器 C语言
【C语言程序设计——选择结构程序设计】求一元二次方程的根(头歌实践教学平台习题)【合集】
本任务要求根据求根公式计算并输出一元二次方程的两个实根,精确到小数点后两位。若方程无实根,则输出提示信息。主要内容包括: - **任务描述**:使用求根公式计算一元二次方程的实根。 - **相关知识**:掌握 `sqrt()` 函数的基本使用方法,判断方程是否有实根。 - **编程要求**:根据输入的系数,计算并输出方程的根或提示无实根。 - **测试说明**:提供两组测试数据及预期输出,确保代码正确性。 - **通关代码**:包含完整的 C 语言代码示例,实现上述功能。 通过本任务,你将学会如何处理一元二次方程的求解问题,并熟悉 `sqrt()` 函数的使用。
32 5
|
1月前
|
存储 算法 安全
【C语言程序设计——选择结构程序设计】按从小到大排序三个数(头歌实践教学平台习题)【合集】
本任务要求从键盘输入三个数,并按从小到大的顺序排序后输出。主要内容包括: - **任务描述**:实现三个数的排序并输出。 - **编程要求**:根据提示在编辑器中补充代码。 - **相关知识**: - 选择结构(if、if-else、switch) - 主要语句类型(条件语句) - 比较操作与交换操作 - **测试说明**:提供两组测试数据及预期输出。 - **通关代码**:完整代码示例。 - **测试结果**:展示测试通过的结果。 通过本任务,你将掌握基本的选择结构和排序算法的应用。祝你成功!
36 4
|
1月前
|
存储 算法 安全
【C语言程序设计——选择结构程序设计】求阶跃函数的值(头歌实践教学平台习题)【合集】
本任务要求输入x的值,计算并输出特定阶跃函数的结果。主要内容包括: 1. **选择结构基本概念**:介绍if、if-else、switch语句。 2. **主要语句类型**:详细解释if、if-else、switch语句的使用方法。 3. **跃迁函数中变量的取值范围**:说明如何根据条件判断变量范围。 4. **计算阶跃函数的值**:通过示例展示如何根据给定条件计算函数值。 编程要求:在右侧编辑器Begin-End之间补充代码,实现阶跃函数的计算和输出。测试说明提供了多个输入及其预期输出,确保代码正确性。最后提供通关代码和测试结果,帮助理解整个过程。
33 0
|
1月前
|
存储 算法 安全
【C语言程序设计——选择结构程序设计】判断一个数是不是5和7的倍数(头歌实践教学平台习题)【合集】
本任务要求输入一个正整数,判断其是否同时是5和7的倍数,若是输出&quot;Yes&quot;,否则输出&quot;No&quot;。内容涵盖选择结构的基本概念、主要语句类型(if、if-else、switch)及条件判断逻辑,帮助理解编程中的分支执行与条件表达式。测试用例包括正数、负数及非倍数情况,确保代码逻辑严谨。通关代码示例如下: ```cpp #include &quot;stdio.h&quot; int main(){ int a; scanf(&quot;%d&quot;, &a); if (a &lt;= 0){ printf(&quo
48 0
|
1月前
|
编译器 C语言 C++
【C语言程序设计——选择结构程序设计】求输入的日期是该年的第几天(头歌实践教学平台习题)【合集】
本任务要求编写程序,根据用户输入的年月日(以空格或回车分隔),计算并输出该天是该年的第几天,需注意判断闰年。主要内容包括: 1. **任务描述**:实现从键盘输入年月日,计算该天是当年的第几天。 2. **相关知识**: - `switch` 结构的基本语法及使用注意事项。 - 判断闰年的条件:能被4整除但不能被100整除,或能被400整除的年份为闰年。 3. **编程要求**:根据提示补充代码,确保程序正确处理输入并输出结果。 4. **测试说 示例代码展示了如何使用 `switch` 语句和闰年判断逻辑来完成任务。通过此练习,掌握 `switch` 语句的应用及闰年判断方法。
32 0
|
2月前
|
存储 NoSQL 编译器
【C语言】指针的神秘探险:从入门到精通的奇幻之旅 !
指针是一个变量,它存储另一个变量的内存地址。换句话说,指针“指向”存储在内存中的某个数据。
124 3
【C语言】指针的神秘探险:从入门到精通的奇幻之旅 !

热门文章

最新文章