C语言的历史:

c语言是在20世纪70年代初美国贝尔实验室开发的一种高级编程语言,由B语言发展来,最初是为了Unix操作系统开发的。在80年代中期,由ISO和ANSI C对它进行了一系列的标准化, 90年代末, c语言进行了一次重大更新和扩展,被称为c99,使得c语言更加强大和灵活

C语言的特点:

1,语言简洁、紧凑、使用方便、灵活。

2,运算符丰富。

3,数据类型丰富。

4,具有结构化的控制语句。

5,语法限制不太严格,程序设计自由度大。

6,C语言允许直接访问物理地址,能进行位操作,能实现汇编语言的大部分功能,可以直接对硬件进行操作。

7,用C语言编写的程序可移植性好。

8,生成目标代码质量高,程序执行效率高。

C程序的结构:

头文件,全局变量,函数声明,主函数,自定义函数,结束语句

C语言的运行环境:

翻译环境和运行环境;翻译环境里执行 预编译,编译,汇编,链接

运行一个C语言程序的过程:

编写 编译 链接 运行

C语言的结构特点:

一个源程序由一个或多个源程序文件组成

函数是C程序的主要组成部分

一个函数包括两个部分:函数首部和函数体

程序总是从main函数开始执行的

程序中要求计算机的操作是由函数中C语句完成的

在每个数据声明和语句的最后必须有一个分号

C语言本身不提供输入输出语句

程序应当包含注释

源程序文件包括:预处理指令,全局声明,函数定义

函数体包括:声明部分和执行部分

了解常量和变量的概念:

在运行过程中,其值不能被改变的量称为常量;

常量分为:

整型常量:如100,0,-1

实型常量:有十进制小数如0.0,12.0 ; 指数形式如12.3e4

字符常量:有普通字符如‘a’,‘?’ ;转义字符如’\t’

字符串常量:如“boy”

符号常量:用#define指令指定一个符号名称代表一个常量,如:#define PI 3.14

变量是在程序运行期间,其值可以被改变的量称为变量。

C语句、程序设计的基本步骤:

明确目标,设计程序,编写代码,编译,运行程序,测试和调试程序,维护和修改代码

程序的三种基本结构:

顺序结构,选择结构,循环结构

外循环和内循环的关系:

内循环和外循环是相互依存、相互促进的关系;内循环是外循环的基础和前提,而外循环则是内循环的拓展和延伸。

数组的种类的概念:

一维数组是由数字组成的以单纯的排序结构单一的数组,是计算机程序中最基本的数组。

二维数组本质上就是由多个一维数组摞在一起组成的数组。

字符数组就是由字符组合成的一个数组。

选择排序,冒泡排序,折半查找,顺序查找的基本思想:

选择排序的基本思想是:如果有N个元素需要排序,那么首先从N个元素中找到最小的那个元素与第0位置上的元素交换。

冒泡排序的基本思想是:每次比较两个相邻的元素,如果它们的顺序错误就把它们交换过来。

折半查找的基本思想:对于已按关键字排序的序列,经过一次比较,可将序列分割成 两部分,然后只在有可能包含待查元素的一部分中继续查找,并根据试探结果继续分割,逐步缩小查找范围,直至找到或找不到为止。

顺序查找的基本思想:从表的一端开始,顺序扫描线性表,依次将扫描到的关键字和给定值k相比较,若当前扫描到的关键字与k相等,则查找成功;若扫描结束后,仍未找到关键字等于k的记录,则查找失败。

结构化程序设计的基本概念:

结构化程序设计是进行以模块功能和处理过程设计为主的详细设计的基本原则。

结构化程序设计的基本特征:

模块化、抽象化、顺序性、选择性、循环性和模块独立性

形参(形式参数)

在函数定义中出现的参数可以看做是一个占位符,它没有数据,只能等到函数被调用时接收传递进来的数据,所以称为形式参数,简称形参。

实参(实际参数)

函数被调用时给出的参数包含了实实在在的数据,会被函数内部的代码使用,所以称为实际参数,简称实参。

形参和实参的功能是传递数据,发生函数调用时,实参的值会传递给形参。

形参和实参的区别和联系

  1. 形参变量只有在函数被调用时才会分配内存,调用结束后,立刻释放内存,所以形参变量只有在函数内部有效,不能在函数外部使用。
  2. 实参可以是常量、变量、表达式、函数等,无论实参是何种类型的数据,在进行函数调用时,必须有确定的值以便把这些值传送给形参,所以应该提前用赋值、输入等办法使实参获得确定值。
  3. 实参和形参在数量上、类型上、顺序上必须严格一致,否则会发生“类型不匹配”的错误。如果能够进行自动类型转换,或者进行了强制类型转换,那么实参类型也可以不同于形参类型。
  4. 函数调用中发生的数据传递是单向的,只能把实参的值传递给形参,而不能把形参的值反向地传递给实参,所以在函数调用过程中,形参的值发生改变并不会影响实参。

C语言简答题的更多相关文章

  1. 考研计算机复试笔试(数据结构/C语言简答题篇)

    1.比较顺序存储结构和链式存储结构的优缺点,什么情况下链表比顺序表好? 顺序存储时相邻元素的存储单元的地址也相连,可以随机存取.优点是存储密度大,空间利用率高:缺点是插入或删除时不方便. 链式存储时相 ...

  2. 他答对一半(打一字)asp.net开源简答题项目

    先出个字谜: 他答对一半(打一字) 你猜出来了没? 可以到这个网址答题:http://m.hovertree.com/miyu/bjae/4fpmm2td.htm 看你的答案是否正确. 这是ASP.N ...

  3. 《web前端设计基础——HTML5、CSS3、JavaScript》 张树明版 简答题简单整理

    web前端设计基础——HTML5.CSS3.JavaScript 简答题整理 第一章 (1)解释一下名词的含义:IP地址.URL.域名   iP定义了如何连入因特网,以及数据如何在主机间传输的标准. ...

  4. 『Python题库 - 简答题』 Python中的基本概念 (121道)

    ## 『Python题库 - 简答题』 Python中的基本概念 1. Python和Java.PHP.C.C#.C++等其他语言的对比? 2. 简述解释型和编译型编程语言? 3. 代码中要修改不可变 ...

  5. JAVA常见简答题

    一.基础知识 1.简述使用文本编辑器和 JDK 创建并运行 Java 应用程序的基本步骤. 答:①打开文本编辑器输入 Java 源程序: ②保存文件,文件名为源程序中 public 修饰类的类名,扩展 ...

  6. Java课后简答题

    1.简述Java的特点. 面向对象.跨平台性.健壮性.安全性.可移植性.多线程性.动态性等. 2.简述JRE与JDK的区别. JRE(Java Runtime Environment,Java运行时环 ...

  7. Java简答题附答案

    1. Java有没有goto? 有, Goto语句在java中作为保留字, 并没有实现它. 带标号的break, continue局限于循环体中跳转 带标号的goto可以在一个函数(c语言)中任意跳转 ...

  8. 大数据R语言简析

    R语言是用于统计分析.画图的语言和操作环境.R是属于GNU系统的一个自由.免费.源码开放的软件.它是一个用于统计计算和统计制图的优秀工具. R是统计领域广泛使用的诞生于1980年左右的S语言的一个分支 ...

  9. OS——进程简答题(1)

    1,叙述进程和程序的主要区别. 解:进程和程序是两个既有联系又有区别的两个概念,它们的主要区别如下: (1)程序是指令的有序集合,其本身没有任何运行的含义,它是一个静态的概念.而进程是程序在处理机上的 ...

  10. 面试java简答题

    1.  sleep() 和 wait() 有什么区别? 答:1.这两个方法来自不同的类分别是Thread和Object      2.最主要是sleep方法没有释放锁,而wait方法释放了锁,使得其他 ...

随机推荐

  1. C++设计模式 - 职责链模式(Chain of Resposibility)

    数据结构模式 常常有一-些组件在内部具有特定的数据结构,如果让客户程序依赖这些特定的数据结构,将极大地破坏组件的复用.这时候,将这些特定数据结构封装在内部,在外部提供统一的接口,来实现与特定数据结构无 ...

  2. 小师妹学JavaIO之:try with和它的底层原理

    目录 简介 IO关闭的问题 使用try with resource try with resource的原理 自定义resource 总结 简介 小师妹是个java初学者,最近正在学习使用java I ...

  3. el-table设置列属性fixed导致滚动条无法拖动-骨灰级

    一.前言说明 网上一搜索,千篇一律的设置el-table__fixed,如: .el-table__fixed { // 左固定列 height: auto !important; bottom: 1 ...

  4. 《苏丹的复仇》携手华为HMS生态,实现用户、收入双增长

    中国出海中东和北非地区的策略类手游<苏丹的复仇>(Revenge of Sultans,ROS)和华为HMS生态深度合作,为本地用户带来创新游戏体验,成为当地广受欢迎的游戏之一,下载量居应 ...

  5. 在linux上使用Qt开发动态库项目,怎么只生成一个so文件

    背景: 在linux系统上,我们使用 Qt 开发动态库项目时,会默认生成四个文件:x.so  .x.so.1 .x.so.1.0.x.so.1.0.0 四个文件,只有一个真实的so库,剩下的三个都是链 ...

  6. openGauss每日一练第三天

    openGauss 每日一练第三天 本文出处:https://www.modb.pro/db/193083 学习目标 学习 openGauss 创建数据库.修改数据库属性和删除数据库 课后作业 1.分 ...

  7. 高并发报错too many clients already或无法创建线程

    高并发报错 too many clients already 或无法创建线程 本文出处:https://www.modb.pro/db/432236 问题现象 高并发执行 SQL,报错"so ...

  8. TensorFlow2数据类型

    1.1 数值类型 数值类型的张量是 TensorFlow 的主要数据载体,分为: 1.标量(Scalar) 单个的实数,如 1.2, 3.4 等,维度数(Dimension,也叫秩)为 0, shap ...

  9. 玩转HarmonyOS专项测试,轻松上架“五星”高品质应用

      作者:David,华为测试服务专家 随着信息技术的高速发展,移动应用与人们生活日益紧密,面向各类场景的应用层出不穷,什么样的应用更受用户青睐呢?在满足用户功能需求之上,一个好的应用要能运行稳定.流 ...

  10. 【未测试】CentOS 6.5快速部署HTTP WEB服务器和FTP服务器

    CentOS 6.5快速部署HTTP WEB服务器和FTP服务器 [题记]本文使用CentOS 6.5minimal快速搭建HTTP服务器和仅供授权用户登陆的FTP服务器.意在使用授权FTP用户通过登 ...