找回密码
 立即注册
首页 资源区 代码 程序设计和C语言

程序设计和C语言

雌鲳签 2025-6-4 19:39:43
什么是计算机程序

程序:就是一组计算机能识别和执行的指令
计算机的一切操作都是由程序控制的,离开程序,计算机将一事无成。
计算机的本质是程序的机器,程序和指令是计算机系统中最基本的概念。
什么是计算机语言

计算机语言:计算机和人都能识别的语言
低级语言

面向机器的语言称为低级语言
机器语言

机器指令:计算机能直接识别和接受的二进制代码
机器语言:机器指令的集合技术该计算机的机器语言
汇编语言[符号汇编语言、符号语言]

符号语言:用一些英文字母和数字表达一个指令
例如:ADD代表加,SUB代表减,LD代表传送
计算机并不能直接识别和执行符号语言的指令,需要用一种称为汇编程序的软件,把符号语言转换为机器指令。
一般,一条符号语言的指令对应转换为一条机器指令,转换的过程称为“代真”或“汇编”。
符号语言又称为符号汇编语言或汇编语言
高级语言

不依赖于具体机器的语言称为高级语言
计算机也是不能直接识别高级语言程序的,也要进行“翻译”。
用一种称为编译程序的软件把高级语言写的程序(称为源程序)转换为机器指令的程序(称为目标程序),然后计算机执行机器指令程序,得到最后的结果。
高级语言的一个语句往往对应多条机器指令。
 
高级语言经历了不同的发展阶段:

  • 非结构化的语言
  • 结构化语言
  • 面向对象的语言
C语言的发展及其特点

发展

C语言是国际上广泛流行的计算机高级语言。
C语言是一种用途广泛、功能强大、使用灵活的过程性编程语言,既可用于编写应用软件,又能用于编写系统软件 。
特点

C语言有以下一些主要特点:

  • 语言简洁、紧凑,使用方便、灵活
  • 运算符丰富
  • 数据类型丰富
  • 具有结构化的控制语句
  • 语法限制不太严格,程序设计自由度大
  • C语言允许直接访问物理地址,能进行位(bit)操作,能实现汇编语言的大部分功能,可以直接对硬件进行操作
  • 用C语言编写的程序可移植性好
  • 生成目标代码质量高,程序执行效率高
最简单的C语言程序

最简单的C语言程序举例
  1. /*
  2. * 例1.1
  3. * 要求在屏幕上输出以下一行信息
  4. * This is a C program
  5. */
  6. /*
  7. stdio是“standard input & output”的缩写
  8. .h的意思是头文件(header file)
  9. */
  10. #include <stdio.h>//编译预处理器指令
  11. /*main前面的int表示此函数的类型是int类型*/
  12. int main()//定义主函数
  13. {//函数开始的标志
  14.    
  15.     /*
  16.     printf是C编译系统提供的函数库中的输出函数
  17.     \n是换行符
  18.     */
  19.         printf("This is a C program\n");//输出所指定的一行信息
  20.         return 0;//函数执行完毕时返回函数值0
  21. }//函数结束的标志
  22. //C语言允许用两种注释方式:
  23. //1、以//开始的但凡注释
  24. //2、以/*开始,以*/借书的块式注释,这种注释可以包含多行内容,也可以独占一行
复制代码
运行结果如下:
1.png
  1. /*
  2. * 例1.2
  3. * 求两个整数的和
  4. */
  5. #include <stdio.h>//编译预处理器指令
  6. int main()//定义主函数
  7. {//函数开始的标志
  8.         int a, b, sum;//本行是程序的声明部分,定义 a,b,sum为整型变量
  9.         a = 123;//对变量 a 进行赋值
  10.         b = 456;//对变量 b 进行赋值
  11.         sum = a + b;//进行 a+b 的运算,并把结果存放在变量 sum 中
  12.    
  13.     /*
  14.     这个printf函数圆括号内有两个参数:
  15.     第一个参数是双撇号中的内容:sum is %d\n,它是输出格式字符串,作用是输出用户希望输出的字符和输出的格式
  16.     其中 sum is 是用户希望输出的字符
  17.     %d 是指定的输出格式
  18.     d 表示用“十进制整数”形式输出
  19.     第二个参数是 sum,表示要输出变量 sum的值
  20.     */
  21.         printf("sum is %d\n", sum);//输出结果
  22.         return 0;//函数执行完毕时返回函数值0
  23. }//函数结束的标志
复制代码
运行结果如下:
2.png
  1. /*
  2. * 例1.3
  3. * 求两个整数中的较大者
  4. */
  5. #include <stdio.h>
  6. //主函数
  7. int main()//定义主函数
  8. {//主函数体开始
  9.         int max(int x, int y);//对被调用函数 max 的声明
  10.         int a, b, c;//定义变量 a, b, c
  11.    
  12.     /*
  13.     scanf是输入函数
  14.     圆括号内有两部分:
  15.     第一部分是双撇号中的内容:它指定输入的数据是按照什么格式输出
  16.     “%d”的含义是十进制整数形式
  17.     第二部分是输入的数据准备放到哪里,即赋值给哪个变量
  18.     在C语言中“&”是地址符
  19.     “&a”的含义是“变量a的地址”
  20.     “&b”的含义是“变量b的地址”
  21.     */
  22.         scanf("%d %d", &a, &b);//输入变量 a 和 b 的值
  23.         c = max(a, b);//调用 max 函数,将得到的值赋值给 c
  24.         printf("max=%d\n", c);//输出 c 的值
  25.         return 0;//返回函数值为0
  26. }
  27. int max(int x, int y)//定义 max 函数,函数值为整形,形式参数 x 和 y 为整形
  28. {
  29.         int z;//max 函数中的声明部分,定义本函数中用到的变量 z 为整形
  30.         if (x > y) z = x;//若 x > y 成立,将 x 的值赋值给 z
  31.         else z = y;//否则将 y 的值赋值给 z
  32.         return z;//将 z 作为 max 函数值,返回到调用 max 函数的位置
  33. }
复制代码
运行结果如下:

运行时会报错误:
C4996    'scanf': This function or variable may be unsafe. Consider using scanf_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. 
解决方案见如下链接:     
C4996 'scanf': This function or variable may be unsafe. Consider using scanf_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. - EricsT - 博客园 (cnblogs.com)
C语言程序的结构的特点

1、一个程序由一个或多个源程序文件组成
在一个源程序文件中可以包含三个部分:
①预处理器指令
②全局声明
在函数外面声明的变量称为全局变量
在函数中声明的变量是局部变量,只在函数范围内有效
③函数定义
2、函数是C程序的主要组成部分
函数是C程序的基本单位
在设计良好的程序中,每个函数都用来实现一个或几个特定的功能
编写C程序的工作主要就是编写一个个函数
一个C语言程序是由一个或多个函数组成的,其中必须包含一个main函数(有且仅有一个main函数)
在进行编译时是以源程序文件为对象进行的
3、一个函数包括两个部分
①函数首部:函数的第一行
包括函数名、函数类型、函数属性、函数参数(形式参数)名、参数类型
一个函数名后面必须跟一对圆括号,括号内写函数的参数名以及其类型。
如果函数没有参数,可以在括号中写void,也可以是空括号
②函数体:函数首部下面花括号内的部分
如果一个函数中包括有多层花括号,则最外面的一对花括号是函数体的范围
函数体一般包括两个部分:

  • 声明部分:定义在本函数中所用到的变量,对本函数所调用的函数进行声明
  • 执行部分:由若干语句组成,指定在函数中所进行的操作
在某些情况下,也可以没有声明部分,甚至可以既没有声明部分也没有执行部分。
4、程序总是从main函数开始执行
不论main函数在整个程序中的位置如何,程序总是从main函数开始执行
5、程序中对计算机的操作是由函数中的C语句完成的
6、在每个数据声明和语句的最后必须有一个分号
分号是C语句的必要组成部分
7、C语言本身是不提供输入输出语句
输入和输出的操作是由库函数scanf和printf灯函数来完成的。
C对输入输出实行“函数化”
8、程序应当包含注释
一个好的、有使用价值的源程序都应当加上必要的注释,以增加程序的可读性。
运行C程序的步骤与方法

计算机不能直接识别和执行用高级语言写的指令,必须用编译程序(也称编译器)把C源程序翻译成二进制形式的目标程序,然后再将该目标程序和系统的函数库以及其他目标程序连接起来,形成可执行的目标程序。
在编好一个C源程序后,上位机进行编译和运行一般要经过以下几个步骤:

  • 上位机输出和编译源程序
  • 对源程序进行编译,先用C编译系统提供的“预处理器”(又称“预处理程序”或“预编译器”)对程序中的预处理指令进行编译预处理。由预处理得到的信息与程序其他部分一起,组成一个完整的、可以用来进行正式编译的源程序,然后由编译系统对该程序进行编译
  • 进行连接处理
  • 运行可执行程序,得到运行结果
程序设计的任务

程序设计是指从确定任务到得到结果、写出文档的全过程
从确定问题到最后完成任务,一般经历以下几个工作阶段:

  • 问题分析
  • 设计算法
  • 编写程序
  • 对源程序进行编辑、编译和连接
  • 运行程序,分析结果
  • 编写程序文档
 

来源:程序园用户自行投稿发布,如果侵权,请联系站长删除
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!
您需要登录后才可以回帖 登录 | 立即注册