C语言入门教程:程序结构与算法举例

开启自今日起,会对着C语言给出一系列教程,要是各位正处于学习C语言阶段,那就赶忙来关注【零基础玩嵌入式】一块儿学习哟!

一、程序

把为达成特定目标或者解决特定问题,以计算机语言编写而成的命令序列集合称作程序,它是为实现预期目的而去操作的一系列语句与指令,用于编写得让计算机能够执行的程序的语言被叫做程序设计语言,程序设计语言可以分作:

plaintext 复制代码
机器语言
汇编语言
高级语言
完成两数相加的操作:
机器语言:1011111000100110011 ......
汇编语言:add ax, bx 
高级语言:C=A+B

即便高级语言程序(即源程序)编写起来挺便利,然而计算机没办法直接去执行它,非得经过一番加工之后才能够被计算机执行。而这种加工过程能够划分成:

编译

源程序以逐句翻译、逐句执行的方式进行,解释过程不会产生目标程序,大概是翻译掉一格就执行一格,一边翻译一边执行。

二、算法举例

那有两个杯子,一个是A杯,另一个是B杯,A杯本来是放着酒的,B杯本来是放着醋的,现在需要把它们进行交换一番,就是让A杯原来放酒的现在改成放醋,而B杯原本放醋的现在改成放酒。

plaintext 复制代码
自然语言:
根据常识,必须增加一个空杯C作为过渡,其操作步骤如下:
步骤1:将A杯中的酒倒在C杯中。
步骤2:将B杯中的醋倒在A杯中。
步骤3:将C杯中的酒倒在B杯中。
这就是以后要用到的交换两个变量的值的方法

伪代码表示的算法如下:

plaintext 复制代码
input A and B
  C←A
  A←B
  B←C
  print A and B

C语言程序

plaintext 复制代码
#include   
int main(void)         
{
  int a, b, c;          
  printf("Please input a and b:\\n");  
  scanf("%d%d", &a, &b);      /*输入变量a和b的值*/
  c = a;           /*交换a和b*/
  a = b;        
  b = c;  
              /*输出a和b的值*/
  printf("a = %d  b = %d", a, b)  
  return 0;
}

三、C语言结构

那种用"/ "以及" /"括起来的内容,被称作注释,它具备的作用是针对程序予以说明,进而提高程序的可读性,在编译这个行为发生时,注释是将会被忽略掉的。

四、执行过程

五、书写规则

C程序由一个或多个函数构成,其中必定有一个且仅有一个main( )函数,不管这个函数处于何种位置,程序皆从它起始执行,main( )函数能够调用别的函数,然而别的函数无法调用main( )函数。

在一个函数内,语句的执行顺序是从上到下的。

C语言写程序,书写形式超自由,一行能写好多条语句,每条语句都以分号完毕,为了程序格式清晰,最好一行就写一条语句。程序里的所有标点符号全是英文符号。

C语言,对大小写进行严格区分,也就是说,大写字母"A",与小写字母"a",会被当作是不一样的符号。

六、开发过程

plaintext 复制代码
要根据实际问题确定解题思路
根据思路或数学模型编写程序
编辑源程序
调试与测试
运行

这篇文章暂且介绍到这儿,下一篇文章,我们着手讲解C语言那用于编译的环境,以及VC的运用方法。

相关推荐
一只齐刘海的猫17 分钟前
【Leetcode】找到字符串中所有字母异位词
算法·leetcode·职场和发展
海清河晏11140 分钟前
数据结构 | 八大排序
数据结构·算法·排序算法
6v6-博客1 小时前
PyCharm 中调用项目内文件夹的 Python 文件方法
教程·6v6博客网
AI科技星1 小时前
数术工坊第八卷:算力革命
c语言·开发语言·网络·量子计算·agi
IronMurphy2 小时前
【算法五十七】146. LRU 缓存
算法·缓存
凌波粒2 小时前
LeetCode--108.将有序数组转换为二叉搜索树(二叉树)
算法·leetcode·职场和发展
liulilittle2 小时前
KCC:在 BBR 思路上的一次探索
网络·tcp/ip·算法·bbr·通信·拥塞控制·kcc
浦信仿真大讲堂3 小时前
达索系统SIMULIA Abaqus 2026接触和约束的增强新功能介绍
人工智能·python·算法·仿真软件·达索软件
点云侠3 小时前
PCL 生成三棱锥点云
c++·算法·最小二乘法
兰令水3 小时前
leecodecode【面试150】【2026.6.13打卡-java版本】
java·算法·leetcode