C语⾔名词解释
⽂章⽬录
1.什么是程序?什么是程序设计?
程序:就是⼀组能**识别和执⾏的指令,**每⼀条指令使计算机执⾏特定的操作
程序设计:是指从确定任务到得到结果、写出⽂档的全过程
2.为什么需要计算机语⾔?⾼级语⾔有哪些特点?
为什么需要计算机语⾔:计算机语⾔解决了⼈和计算机交流是的语⾔问题,使得计算机和⼈都能识别
⾼级语⾔有哪些特点:
2.1 ⾼级语⾔的数据结构要⽐汇编和机器语⾔丰富;
2.2 ⾼级语⾔与具体机器结构的关联没有汇编以及机器语⾔密切;
2.3 ⾼级语⾔更接近⾃然语⾔更容易掌握;
2.4 ⾼级语⾔编写的程序要经过编译或解释计算机才能执⾏;
3.正确理解以下名词及其含义:
(1)源程序,⽬标程序,可执⾏程序。
源程序:指未编译的按照⼀定的程序设计语⾔规范书写的⽂本⽂件,是⼀系列⼈类可读的计算机语⾔指令
申世京男友⽬标程序:为源程序经编译可直接被计算机运⾏的机器码集合,在计算机⽂件上以**.obj作扩展名**
可执⾏程序:将所有编译后得到的⽬标模块连接装配起来,在与函数库相连接成为⼀个整体,⽣成⼀个可供计算机执⾏的⽬标程序,成为可执⾏程序
(2)程序编辑,程序编译,程序连接。
程序编辑:上机输⼊或者编辑源程序。
程序编译:
先⽤C提供的“预处理器”,对程序中的预处理指令进⾏编译预处理
对源程序进⾏语法检查, 判断是否有语法错误,直到没有语法错误未知
编译程序⾃动把源程序转换为⼆进制形式的⽬标程序
程序连接:将所有编译后得到的⽬标模块连接装配起来,在与函数库相连接成为⼀个整体的过程称之为程序连接
(3)程序,程序模块,程序⽂件。
程序:⼀组计算机能识别和执⾏的指令,运⾏于电⼦计算机上,满⾜⼈们某种需求的信息化⼯具
程序模块:可由汇编程序、编译程序、装⼊程序或翻译程序作为⼀个整体来处理的⼀级独⽴的、可识别的程序指令
程序⽂件:程序的⽂件称为程序⽂件,程序⽂件存储的是程序,包括源程序和可执⾏程序
(4)函数,主函数,被调⽤函数,库函数。
函数:将⼀段经常需要使⽤的代码封装起来,在需要使⽤时可以直接调⽤,来完成⼀定功能
主函数:⼜称main函数,是程序执⾏的起点
被调⽤函数:由⼀个函数调⽤另⼀个函数,则称第⼆个函数为被调⽤函数
库函数:⼀般是指编译器提供的可在c源程序中调⽤的函数。可分为两类,⼀类是c语⾔标准规定的库函数,⼀类是 编译器特定的库函数
(5)程序调试,程序测试。
程序调试:是将编制的程序投⼊实际运⾏前,⽤⼿⼯或编译程序等⽅法进⾏测试,修正语法错误和逻辑错误的过程
程序测试:是指对⼀个完成了全部或部分功能、模块的计算机程序在正式使⽤前的检测,以确保该程序能按预定的⽅式正确地运⾏
什么是算法?试从⽇常⽣活中3个例⼦,描述它们的算法
算法:简⽽⾔之就是求解问题的步骤,对特定问题求解步骤的⼀种描述。
什么叫结构化的算法?为什么要提倡结构化的算法?
结构化算法:由⼀些**顺序、选择、循环等基本结构按照顺序组成,**流程的转移只存在于⼀个基本的范围之内。
结构化算法便于编写,可读性⾼,修改和维护起来简单,可以减少程序出错的机会,提⾼了程序的可靠性,保证了程序的质量,因此提倡结构化的算法。
试述3种基本结构的特点,请另外设计两种基本结构(要符合基类结构的特点)。
结构化程序设计⽅法主要由以下三种基本结构组成:
顺序结构:顺序结构是⼀种线性、有序的结构,它依次执⾏各语句模块
淘宝注册
选择结构:选择结构是根据条件成⽴与否选择程序执⾏的通路。
循环结构:循环结构是重复执⾏⼀个或⼏个模块,直到满⾜某⼀条件位置
只有⼀个⼊⼝
只有⼀个出⼝
结构内的每⼀部分都有机会执⾏到
结构内不存在死循环
什么叫结构化程序设计?它的主要内容是什么?
结构化程序设计(structured programming,简称SP)是进⾏以模块功能和处理过程设计为主的详细设计的基本原则。其概念最早由E.W.Dijikstra在1965年提出的。结构化程序设计思想确实使程序执⾏效率提⾼ ,是软件发展的⼀个重要的⾥程碑,它的主要观点是采⽤⾃顶向下、逐步求精的程序设计⽅法;各个模块通过“顺序、选择、循环”的控制结构进⾏连接,并且只有⼀个⼊⼝、⼀个出⼝ 。
什么是算术运算?什么是关系运算?什么是逻辑运算?提前批什么时候出结果
【答案解析】
算术运算:
算术运算即“四则运算”,是加法、减法、乘法、除法、乘⽅、开⽅等⼏种运算的统称。凉生我们可不可以不忧伤小说结局
其中加减为⼀级运算,乘除为⼆级运算,乘⽅、开⽅为三级运算。在⼀道算式中,如果有多级运算存在,则应先进⾏⾼级运算,再进⾏低⼀级的运算。
C语⾔中的算熟运算符包括:+、-、*、/、++、–、% 等种类。
如果只存在同级运算;则从左⾄右的顺序进⾏;如果算式中有括号,则应先算括号⾥边,再按上述规则进⾏计算。
于谦的微博
⽰例:$ (1 + 1)^{2} * 4+5 * 3$
解析:
先进⾏括号内运算1+1,然后进⾏乘⽅运算得到结果4.
接下来与4相乘,得到结果16
因为乘法优先级⼤于加法,因此先进⾏5*3,得到结果15
最终相加得到结果31
结果:31
关系运算:
关系的基本运算有两类:⼀类是传统的集合运算(并、差、交等),另⼀类是专门的关系运算(选择、投影、连接、除法、外连接等),⽽在C语⾔中,关系运算通常被认为是⽐较运算,将两个数值进⾏⽐较,判断⽐较结果是否符合给定的条件。
常见的关系运算符包括:<、<=、>、>=、==、!= 等种类。
其中,前4种关系运算符(<、<=、>、>= )的优先级别相同,后2种(==、!=)也相同。⽽前4种⾼于后2种。
例如, > 优先于 == 。⽽ > 与 < 优先级相同。
并且,关系运算符的优先级低于算术运算符,关系运算符的优先级⾼于赋值运算符(=)。
逻辑运算:
在逻辑代数中,有与、或、⾮三种基本逻辑运算。表⽰逻辑运算的⽅法有多种,如语句描述、逻辑代数式、真值表、卡诺图等。⽽在C语⾔中,逻辑运算通常⽤于使⽤逻辑运算符将关系表达式或其它逻辑量连接起来组成逻辑表达式⽤来测试真假值。
常见的逻辑运算符包括:&&、||、! 等种类
&&: 与是双⽬运算符,要求有两个运算对象,表⽰两个运算对象都成⽴,则结果为真,否则结果为假。
例如:(a<b) && (x>y),表⽰(a<b)和(x>y)同时成⽴则为真。
||:是双⽬运算符,要求有两个运算对象,表⽰两个运算对象只要任意⼀个成⽴,则结果为真,否则结果为假。
例如:(a<b) && (x>y),表⽰(a<b)和(x>y)两个对象中任意⼀个成⽴则结果为真。
**!**是单⽬运算符,只要求有⼀个运算对象,表⽰取运算对象反义,运算对象为真则结果为假,运算对象结果为假则结果为真。
例如:!(a>b),表⽰(a>b)成⽴时结果为假,不成⽴时结果为真。
若在⼀个逻辑表达式中包含多个逻辑运算符,则优先次序为**: ! > && > ||。**当然若⼀个逻辑表达式中包含括号括起来的⼦逻辑,则优先括号内的⼦逻辑判断。
⽰例:
(1>2)||(2>3)&&(4>3) 结果为0
!(1>2)||(2>3)&&(4>3)结果为1
注:&&优先级⼤于||,((2>3)&&(4>3))⽆法同时成⽴,则结果为假,然后与(1>2)结果进⾏逻辑或运算,
两者都为假因此第⼀次结果为假。 ⽽第⼆次!优先级最⾼,先对(1>2)的结果取逻辑⾮,得到结果为真,因此结果为真。
詹姆斯3万分1万篮板1万助攻C语⾔中如何表⽰“真”和“假”?系统如何判断⼀个量的“真”和“假”?
答案:
在C语⾔中逻辑常量只有两个,即0和1,⽤来表⽰两个对⽴的逻辑状态,其中0表⽰假,1表⽰真。
逻辑变量与普通代数⼀样,也可以⽤字母、符号、数字及其组合成为的逻辑表达式表⽰。
对于系统来说,判断⼀个逻辑量的值时,系统会以0作为假,以⾮0作为真。例如3&&5的值为真,系统给出3&&5的值为1。
3. 写出下⾯各逻辑表达式的值。设a=3,b=4,c=5。
(1)a + b > c && b == c
(2)a || b + c && b - c
(3)!(a > b) && !c || 1
(4)!(x = a) && (y = b) && 0
(5)!(a + b) + c - 1 && b + c / 2
解题思路:
关系运算符的优先级⾼于赋值运算符,但是低于算术运算符;
&&表⽰两边条件同为真则成⽴,||表⽰两边条件任意⼀个为真则成⽴,!取条件反义。 逻辑运算符优先级: ! > && > ||有括号优先括号。