当前位置: 首页 > news >正文

C程序设计-01程序设计和C语言

目录

1.指令、程序、软件

2.计算机语言

3.高级语言的发展

5.注释

6.C程序语言的结构

7.程序设计的任务

8.C程序执行的步骤

9.问题来一波


1.指令、程序、软件

  • 指令:可以被计算机理解并执行的基本操作命令。
  • 程序:一组计算机能识别和执行的指令。 一个特定的指令序列用来完成一定的功能。
  • 软件:与计算机系统操作有关的计算机程序、规程、规则,以及可能有的文件、文档及数据。

2.计算机语言

计算机语言是用于人与计算机之间通信的语言,分为机器语言,汇编语言,高级语言三类。,C语言属于高级语言。

机器语言汇编语言高级语言

计算机能直接识别和接受的二进制代码称为机器指令。机器指令的集合就是该计算机的机器语言。

特点:难学,难记,难检查,难修改,难以推广使用。依赖具体机器难以移植。

机器语言的符号化。用英文字母和数字表示指令的符号语言

特点:相比机器语言简单好记,但仍然难以普及。汇编指令需通过汇编程序转换为机器指令才能被计算机执行。依赖具体机器难以移植。

高级语言更接近于人们习惯使用的自然语言和数学语言。 特点:功能强大,不依赖于具体机器。用高级语言编写的源程序需要通过编译程序转换为机器指令的目标程序。
5F  01MOV S=1+2

3.高级语言的发展

  发展:非结构化的语言→结构化语言→面向对象的语言

   结构化语言的规定: 程序必须由具有良好特性的基本结构(顺序结构、选择结构、循环结构),程序中的流程不允许随意跳转,程序总是由上而下顺序执行各个基本结构。

特点: 程序结构清晰,易于编写、阅读和维护。

4.c语言程序

#include <stdio.h>	    //编译预处理指令
int main()				//定义主函数 
{				        //函数开始标志 printf("This is a C program.\n");	//输出所指定的一行信息 return 0;			//函数执行完毕时返回 函数值0
}				        //函数结束标志
    • main是函数的大名,它是  主函数! 当家人!;每一个C语言程序都必须有一个 main 函数
    • main前的int:此函数的类型是int类型(整型),在执行主函数后会得到一个值(函数值),其值为整型,也是需要返回值的类型!
    • return 0;的作用是当main函数执行结束前将整数0作为函数值,返回到调用函数处;
    • 函数体由花括号{}括起来;
    • printf是C编译系统提供的函数库中的输出函数。printf函数中双引号内的字符串″This is a C program.″按原样输出。\n是换行符,即在输出″This is a C program.″后,显示屏上的光标位置移到下一行的开头;
    • 每个语句最后都有一个分号,表示语句结束;
    • //  是“注释”,用来对程序有关部分进行必要的说明;方便人理解程序各部分的作用,是给人看的,而非计算机执行。
    • 在使用函数库中的输入输出函数时,编译系统要求程序提供有关函数的信息,“#include <stdio.h>”的作用就是用来提供这些信息的。
    • stdio.h是系统提供的一个文件名,stdio是standard input & output的缩写,文件后缀.h的意思是头文件(header file),因为这些文件都是放在程序各文件模块的开头的。输入输出函数的相关信息已事先放在stdio.h文件中。

    5.注释

    // :单行注释

    /*开始,以*/结束 : 块式注释

    在字符串中的//和/*都不作为注释的开始。而是作为字符串的一部分

    6.C程序语言的结构

    •  一个程序由一个或多个源程序文件组成 ,其中源程序文件包括:预处理指令( #include <stdio.h>    )、全局声明(int ..)、函数定义(int max(int a,int b)    )
    • 函数时C程序的主要组成部分

              一个C语言程序是由一个或多个函数组成的,其中必须包含唯1 一个main函数

              程序中被调用的函数可以是系统提供的库函数,也可以是用户根据需要自己设计的函数

    • 一个函数包括两个部分:函数首部和函数体,函数体一般包括声明部分和执行部分
    • 程序总是从main函数开始执行
    • 程序中的操作是由函数中的C语句完成的
    • 在每个数据声明和语句的最后必须有一个分号
    • C语言本身不提供输入输出语句,输入输出操作由函数完成
    • 程序应当包含注释

    7.程序设计的任务

    1. 问题分析
    2. 设计算法
    3. 编写程序
    4. 对源程序进行编辑、编译和连接
    5. 运行程序 分析结果
    6. 编写程序文档

    8.C程序执行的步骤

      注意每个阶段对应的后缀

       编辑---对应源程序     .c

       编译 --对应目标程序 .obj

       连接--库函数和其他目标程序 可执行目标程序.exe

       执行--可执行目标程序 .exe

    9.问题来一波

    1. 程序是什么? 是一组计算机能识别和执行的指令集合,每一条指令使计算机执行特定的操作。 计算机(who )能识别和执行( do )的一组指令集合,(aim)每条指令都能让计算进行执行特定的操作。
    2. 程序设计是什么?它是指从确定任务到得到结果最后写出文档的全部过程。
    3. 为什么需要计算机语言?高级语言有哪些特点 ? 

             计算机语言解决了人与计算机交流的语言问题

            高级语言更加接近自然语言人更能理解和掌握。高级语言需要编译才能成为语言。高级语言和计算机结构关系不大而机器语言和计算机结构关系较大。

        4.

    源程序

    #include int main()

    { printf("hello!"); return 0; }

    目标程序源程序通过编译器编译,形成一个文件里面包含机器码集合,可以进行机器直接执行,该文件 以.obj作为扩展名,这就是目标程序。
    可执行程序可执行程序是将所有得到的目标程序模块连接起来再与函数库连接为一个整体,生成一个可供计算机执行的总的目标程序,成为可执行程序。
    程序编辑,程序编译,程序连接

    程序编辑:上机输入或者编辑源程序 .c

    程序编译∶先用C提供的“预处理器”,对程序中的预处理指令进行编译预处理。对源程序进行语法检查,判断是否有语法错误,直到没有语法错误未知,编译程序自动把源程序转换为二进制形式
    的目标程序  .obj

    程序链接∶将所有编译后得到的目标模块连接装配起来,在与函数库相连接成为一个整体的过程称 之为程序连接

    程序模块,程序文件

    程序模块∶可由汇编程序、编译程序、装入程序或翻译程序作为一个整体来处理的一级独立的、可识别的程序指令

    程序文件:程序的文件称为程序文件,程序文件存储的是程序,包括源程序和可执行程序

    函数,主函数,被调用函数,库函数
    • 函数∶将一段经常需要使用的代码封装起来,在需要使用时可以直接调用,来完成一定功能;
    • 主函数 ︰又称main函数,是程序执行的起点
    • 被调用函数︰由一个函数调用另一个函数,则称第二个函数为被调用函数
    • 库函数︰一般是指编译器提供的可在c源程序中调用的函数。可分为两类,一类是c语言标准规定的库函数,一类是编译器特定的库函数
    程序调试,程序测试
    • 程序调试∶是将编制的程序投入实际运行前,用手工或编译程序等方法进行测试,修正语法错误和 逻辑错误的过程
    • 程序测试︰是指对一个完成了全部或部分功能、模块的计算机程序在正式使用前的检测以确保该程序能按预定的方式正确地运行

    http://www.dtcms.com/a/398373.html

    相关文章:

  1. 为何上不了建设银行网站网络营销工程师前景
  2. 设计模式的几个准则
  3. python+nodejs+springboot在线车辆租赁信息管理信息可视化系统
  4. 计算机毕业设计 基于Python的音乐推荐系统 Python 大数据毕业设计 Hadoop毕业设计选题【附源码+文档报告+安装调试】
  5. 《人机分工重塑开发:遗留系统重构的AI实践指南》
  6. 从0死磕全栈第十天:nest.js集成prisma完成CRUD
  7. 网站开发做什么科目网页设计与网站建设连接数据库
  8. 如何看网站是html几代做的加拿大pc网站搭建
  9. C#的MVVM架构中的几种数据绑定方式
  10. Jmeter接口测试:jmeter组件元件介绍,利用取样器中http发送请求
  11. Apache Tomcat 部署与配置
  12. 网站建设详细合同范本西部数码网站管理助手破解版
  13. 权限提升专项训练靶场:hacksudo: L.P.E.
  14. 工作笔记----lwip的数据管理结构pbuf源码解析
  15. 生产环境实战:Spring Cloud Sleuth与Zipkin分布式链路追踪实践
  16. 学习React-15-useImperativeHandle
  17. 响应式网站案列小学生做电子小报的网站
  18. 【AskAI系列课程】:P4.将AI助手集成到Astro网站前端
  19. 自注意力机制(Self-Attention)简介
  20. App 代上架全流程解析 iOS 应用代上架服务、苹果应用发布步骤、ipa 文件上传与 App Store 审核经验
  21. 学习日报 20250921|MQ (Kafka)面试深度复盘
  22. 趣味学Solana(启航)
  23. 期权末日论效应怎么来的?
  24. iOS 混淆与反调试反 Hook 实战,运行时防护、注入检测与安全加固流程
  25. 建设工程管理网站邹平建设网站
  26. wordpress英文下主题怎么换苏州seo专家教优化网站结构
  27. 《灼灼韶华》还原民国上海滩,虎鲸文娱虚拟拍摄让创作突破时空束缚
  28. Redo Log 与 Crash Recovery:MySQL 事务持久化的核心技术
  29. 金乡网站建设公司云南企业网站
  30. 设计模式(C++)详解——职责链模式 (Chain of Responsibility)(1)