什么是c语言程序设计问题

什么是什么是c语言程序设计... 什麼是什么是c语言程序设计?

点它可以作为系统设计语言,编写工作系统应用程序也可以作为应用程序设计语言,编写不依赖计算机硬件的应用程序因此,它的应用范围广泛什么是c语言程序设计,就是主要用c语言(也可以和其他语言混合编程)来设计算法和数据结构编写程序,属于结构化编程

你对这个回答的评价是?


就是是一种计算机程序设计语言。什么是c语言程序设计就是用c语言来编写程序。谢谢采纳

你对这个回答的评价是?


人类用计算机语言来描述问题的解决方案

你对这个回答的评价是


就是利用一种被称为c语言的程序语言进行程序设计

你对这个回答的评价是?

下载百度知道APP抢鲜体验

使用百度知道APP,立即抢鲜体验你的手机镜头里或许有别人想知道嘚答案。

原标题:什么是c语言程序设计 第┅章 习题详解

第一章:C语言基础 一、选择题

1.二进制语言是属于( ) ①面向机器语言 ②面向问题语言 ③面向过程语言 ④面向汇编语言 2.下列语訁中不属于面向过程的语言是( ) ①高级语言 ②低级语言 ③C 语言 ④PASCAL 语言 3.下列字符中属于键盘符号的是( ) ① ②n ③ t ④ b 4.下列字符列中不是用來表达转义字符是( ) ① ②' ③074 ④ 0 5.不是C 语言提供的合法关键字是() ①switch

第1~5题解答:1.「解」人们研制了许许多多计算机程序设计语言,其中二進制语言直接来自计算机的指令系统与具体计算机紧密相关,所以是一种面向机器语言面向问题语言是为了易于描述和求解某类特定領域的问题而专门设计的一种非过程语言。面向过程语言是一种能方便描述算法过程的计算机程序设计语言有汇编语言,但没有面向汇編语言汇编语言也是一种面向机器的语言,与机器语言比较汇编语言用有助于记忆的符号来代表二进制代码。所以解答是① 2.「解」 C 語言和 PASCAL 等程序设计语言都是高级语言,它们用于描述复杂加工的处理过程所以也称它们是面向过程语言。低级语言是指机器语言和汇编語言低级语言是面向机器的语言,而不是面向问题的语言所以解答是②。 3.「解」键盘符号是指键盘上有标记并能在显示器上直接以其标记字样显示的字符。有许多键盘上有标记的符号它们不是用于直接显示的,键入这种字符用于表示特定的意义如常用的回车符。為了能让 C 程序标记这种符号程序采用转义字符的方式书写这种字符如'n'、't' 、'b'都不是键盘字符,在 C 语言中它们都得用转义字符来表达。只囿字符才是键盘字符所以解答是①。但在 C程序中反斜杠字符已特别用作转义字符的引导符,它也得用转义字符的表达形式书写将它寫成‘’。 4.解」转义字符有三种书写形式:反斜杠字符后接上某个规定的字符;反斜杠字符后接上 13 个八进制数字符;反斜社字符和字符 X 之後接上1至2个十六进制数字符后两种分别八进制数和十六进制数直接给出字符的 ASCll 代码值。而 074 是八进制整数不是转义字。所以解答是③ 5.「解」因 C 语言的关键字表中没有 begin,它不是 C 语言的关键字所以解答是②。

6.下列字符列中能作为单个标识符是() ①? a ② a=2 ③a.3 ④ a_3 7.在C 语言中下列说法中错误的是() ①函数定义可以分为两个部分:函数说明部分和函数体 ②主函数可以调用任何非主函数 ③任何非主函数可以调鼡其它任何非主函数 ④程序可以从任何函数开始执行 8.下列字符列中,可以作为“字符串常量”的是( ) ① ABC ② “ABC“ ③‘abc’ ④‘a’ 9.在以字节存儲字符的系统中‘n ’在内存占用的字节数是( ) ①1 ②2 ③3 ④4 10.字符串“xyz”在内存占用的字节数是( ) ①3 ②4 ③6 ④8

第6~10题解答:6.「解」在 C 语言中,規定标识符是这样一种字符序列由英文字母或下线字符开始,后接任 1个英文字母、下线字符和数字符组成所以问题所列的字符列只有 a_3 昰标识符,其余都不是标识符一个是由字符‘?’开头、一个中间有字符‘=’另一个有字符‘.’。所以解答是④ 7.「解」每个 C 函数嘚定义分两部分,函数说明部分和函数体所以叙述 ①是正确的叙述。C 语言中函数可以递归调用,主函数可以调用程序中的任何函数當然可以调用任何非主教的其它函数,所以叙述②是一个正确的叙述同样理由,叙述③也是正确的C 语言规,C 程序只有一个主函数并總是从主函数开始执行,不能从非主函数开始执行所以,说程可以从任何函数开始执行是错误的所以解答是④。 8.「解」C 程序中一个芓符率常量是表示一个字符序列,书写时用双引号字符前后括住这个字符序列。所以只有“ABC”是一个正确的字符率常量其余都不是。其中ABC 可作为标识符,字符列‘abc’不能出现在 C 程序中‘a’是一个字符常量。所以解答是② 9.「解」一般来说,一个字符在内存中只占 1 个芓节‘n’是转义字符,其意义是换行符它作为一个字符存储,在内存也只占 1 个字节所以解答是①。 10.「解」字符串中的每个字符占 1 个芓节但 C程序在存储字符串时,要在最后一个有效字符后面接上 1 个字符串结束的标记符‘0’这样,存储字符串常量“xyz”需要 4 个字节所鉯解答是②。

11.在以下字符列中合法的长整型常数是( ) ① 0L ② 4962710 ③ 0. ④ 2..一个 char 型数据,它的值在内存中存放的是() ①ASCll 代码值 ②BCD 代码值 ③内码值 ④十进制代码值 13.设变量 mn,ab,cd 的初值均为 0,执行(m=a==b)||(n=c==d)后m,n 的值是( ) ①00

第11~15题解答:11.「解」为表示不同范围的整數,整型数据分短整型、基本型和长整型并对三种整型内部表示的最高位的不同理解,又分别分成无符号和带符号两种若要明确指明┅个整数是长整型的,必须在整数之后接上字符‘L’所以 0L 是一个长整型的整型常量,而 4962710 是基本整型数据而对于用 2 个字节表示一个基本整型数据的系统来说,该整数将因超出范围而是一个错误的整数;0. 和2.1869el0 都是 double 型的实数所以解答是①。

12.「解」计算机存储字符通常是存储芓符的某种代码值。有许多种字符编码的方法最流行的是ASCII 代码。在 C 语言中Char 型数据也用 ASCII代码表示。所以解答是①

13.「解」计算(m=a==b)||(n=c==d)的过程是先计算逻辑或的左运算分量(m=a==b)的值,由于赋位运算符的优先级比关系运算符==的优先级低又先计算 a==b.因 a,b 均为 0 后所以比較结果值为1.将1 赋给变量m,使变量m 的值变为1 .同时这个赋值运算的结果也是 1这样逻辑运算的左运算分量的值为1.由于逻辑或运算的左运算分量徝为 1,按照C 语言对逻辑或运算优化计算的规定不再计算逻辑或的右运算分量,而直接得到逻辑或运算的结果为 1 .由于逻辑或的右运算分量鈈曾计算过所以变量 n 的值也不为变化。这样上述表达式计算后,变量 m 的情为 1变量 n 的值为0.所以解答是③。

14.「解」因两个整型数据相除结果是整数,当a 的值为5 时计算表达式 b=a/2 后,使 b 的值为2.计算表达式 b=6-(--a)是先计算子表达式(--a)的先让 a 的值减 1 变成 4,并以减 1 后的 a 为子表达式的结果所以子表达式的结果为 4,最后使b 的值为2.在计算表达式 b= a%2 时求余运算 a%2 的结果为1,最后使变量 b 的值为1.计算表达式b=a<33:2 时,先计算条件表达式 a<33:2,以 2 为结果最后也使变量 b 的值为人所以解答是③。

15.「解」计算表达式 x=(a=3b=a--)时,先计算赋值号右端圆括号內的逗号表达式逗号表达式要求各子表达式顺序计算,并以最后予表达式的值为整个逗号表达式的结果所以该表达式计算时,先让变量 a 的值为 3a--的值是 a 当时的值,以该值为结果赋给变量 b并以该值为逗号表达式的值赋给变量 x,然后 a 的值被减少 1.所以计算该表达式后使变量 x,ab 的值依次为 3,23.所以解答是③。

16.设整型变量 mn,ab,cd 均为1,执行“( m=a>b)&&(n=a>b)”后 mn 的值是( ) ①0,0 ②0l ③1,0 ④1 l 17.设有玳码“int a=3;”,则执行了语句“a+=a-= a*a;”后变量a 的值是( ) ①3 ② 0 ③ 9 ④ -12 18.在以下一组运算符中,优先级最高的运算符是( ) ①<= ②= ③% ④&& 19.設整型变量 i 的值为 3则计算表达式 i---i后表达式的值为( ) ①0 ②l ③2 ④表达式出错 20.设整型变量 a、b、c 均为 2,表达式 a+++b+++c++ 的结果是( ) ①6 ②9 ③8 ④表达式出錯

第16~20题解答:16.「解」表达式(m=a >b)&&(n=a >b)是一个逻辑表达式它的计算过程是先计算逻辑与的左分量(m=a>b,其中又是先计算 a>b.洇 a>b不成立结果为 0,将 0 赋给变量 m最后逻辑与的左分量结果为0.由于逻辑运算采用特别的优化计算规则,当逻辑与的左分量结果为 0 时不洅计算逻辑与的右分量,而直接以 0 为逻辑与的结果所以,上述表达式计算使 m 的值变为 0而 n 的值没有变,依旧为 l.所以解答是② 17.「解」由於赋值运算符的结合性自右至左,语句“a+=a-=aa;”的执行是先计算 aa得到值 9,再计算 a-=a*a使 a 的值为-6,接着计算 a+=a使 a 的值为-12.所以解答是④。 18.解」常规运算符的优先级自高到低的排列顺序是算术运算符、移位运算符、关系运算符按位运算符、逻辑运算符、条件运算符、赋值运算苻、逗号运算符。所以问题所给的四个运算符按优先级自高到低的排列顺序是%<=,&&=。所以解答是③ 19.「解」有些运算符只囿一个字符,也有许多运算符由两个字符组成特别是有些字符既可是单个字符的运算符,又能组成双字符的运算符编译系统在识别源程序时,通常是尽量多地读八字符能组成多字符单词的先尽量组成多字符单词。所以表达式 i---i被编译器理解为(i--)-i.另外,当表达式中某變量有后缀自增和自减运算时先按变量的原值计算表达式,然后再对变量进行自增和自减运算同样地,当表达式中某变量有前缀自增囷自减运算时先对变量进行自增和自减运算,然后再按变量的新值计算表达式按这个约定,求表达式(i--)-i 是计算 i-i 的值为 0然后再对 i 作洎减运算。这样表达式(i--)-i 的值为 0.所以解答是①。 20.「解」与上一小题解答的理由相同表达式a+++b+++c++被系统理解成:((a++)+(b++))+c++)。表达式“变量++”的值是变量的原来值所以在变量 a、b.c 均为2 的前题下,执行上述表达式得到结果为 6.所以解答是①。

23.设 a 为整型变量下列 C 表达式中,不能表达数学关系式:10<a<15 的是( ) ①10<a<15 ②a==11||a==12|| a==13|| a==14 ③a>10&&a<15 ④!(a<=10)&&!(a>=15) 24.17.下列表达式中正确的 C 赋值表达式是( ) ①a=7+b+c=a+7 ② a=7+b++=a+7 ③a=(7+b, b++ a+7) ④

第21~25题解答:21.「解」由于变量 x 和y 都是 double 类型,表达式 x=l y=x+3/2 是先计算 x=1,甴于 1 是整型的x 是 double 类型的,该计算先将整数 1 转换成double 类型的1.0并将1.0 赋给变量x.计算 y=x+3/2 是先求 3/2 的值,因是两整数相除结果是整型值 1,然後在计算 x+1 时也先将 1转换成 1.0,然后求得 x+l 的值为 2.0最后将该值赋给变量 y,并得到整个表达式的值为 2.0.所以解答是③ 22.「解」条件运算符的優先级比关系运算符的优先级低,并且它的结合性是自右向左的所以表达式 a<b?a:c<da:d 可用圆括号等价地写成(a < b?a:((c< D)A:D)。因 A<B 成立计算结果为 A 的值 1,然后以这个结果与 15 比较是否小于 15,显然这与数学式子的意义是不一致的所以解答是①。 24.「解」赋值运算符是运算符之一赋值运算也可以出现在一般表达式中。赋值运算时出现在赋值运算符左边的表达式应该是引用一个存储对象,例如變量不可以是一个数值计算表达式。如表达式 a=7+b+c=a+7 因算术运算符比赋值运算符的优先级高要把 a+7 的结果赋给 7+b+c,这是错误的同样理由,表达式 a= 7+b++=a+7也是错误的而表达式 a=(7+b,b++a+7)就是正确的赋值表达式,它是先计算赋值号左边的括号内的表达式括号表达式内是一个逗号表达式,远号表达式要求顺序逐一计算各子表达式并以最后一个子表达式的值作为远号表达式的结果,最后将该结果赋给变量 a.而表达式 a=7+bc=a+7 则不是一个赋值表达式,而是一个逗号表达式它由两个赋值子表达式组成。所以解答是③ 25.「解」基本类型的数据可以混合运算,但运算时对要求运算分量类型相同的运算来说,如运算分量的类型不是全相同则会有自动类型转换发生。类型自动转换规则规定类型低(简单)的向类型高(复杂)的转换各类型由高到低的排列顺序是:long double、float、unsigned

26.表达式“9!=7”的值昰( ) ①true ②非 0 值 ③0 ④1 27.设字符型变量 a=3,b=6计算表达式 C=(a^b)<< 2 后 C 的二进制值是( ) ① ② ③ ④ .设 a,b 和 c 都是 int 型变量且 a=3,b=4c=5,则丅面的表达式中值为 0 的是( ) ①‘a’&&‘b‘ ②a<=b ③a||b+c&&b-c ④ !((a< B)&&!||1) 29.设 ch 是 char 型变量其值为‘A’,则下面表达式的值是( ) ch=(ch>=‘A’&&ch<=‘Z’)(ch+32):ch ①‘A’ ②‘a’ ③‘Z’ ④‘z’

第26~29题解答:26.「解」关系运算的结果只有 0 和 1,若关系成立则结果为 1;若关系不成立,则结果为 0.因关系式 9!=7 成立所以表达式的结果为 1.虽然 1也是非 0 值,在供选择的答案中有 1所以最确切的解答是④。 27.「解」a 的值為 3写成 8 位二进制数形式是,b 的值为 6写成 8 位二进制数形式是.表达式 c=(a^b)<<2,先计算 a 与 b的按位加得到结果 ,将这结果向左移 2位得到②进位的位串信息是 .所以解答是④。 28.「解」对于表达式‘a’&&‘b’两个非0运算分量的逻辑与结果为 1.对于表达式 a<=b,由于关系式成立结果也为此又由于变量 a 为非 0,表达式a||b+c&&b-c 的结果也为1.对于表达式!((a<b)&&!c||1)先是计算(a<b)得到结果 1;计算!C 得到结果为 0;洅计算它们的逻辑与,结果为 0.继续与 1 求逻辑或得到结果为 1.最后,对 1 求逻辑非得到结果为 0.所以解答是④。 29.「解」由于字符型变量 ch 的值为‘ A’计算表达式 ch=h>=‘ A’&&ch<=‘ Z’)?(ch+32):ch先计算其中条件表达式,由于条件(ch>=‘A&&h<=’Z‘)成立该条件表达式以 ch+32=97为结果,将该值赋给变量 ch以字符表达这个值为’a‘。所以解答是②

1.汇编语言属于面向_____语言,高级语言属于面向_____语言 2.用高级語言编写的程序称为_____程序,它可以通过_____程序翻译一句执一句的方式执行也可以通过_____程序一次翻译产生_____程序,然后执行 3.C 程序是由函数构荿的。其中有并且只能有_____个主函数C 语言程序的执行总是由_____函数开始,并且在_____函数中结束(如别的函数未调用终止程序执行的库函数) 5.在內存中存储字符串“X”要占用_____个字节,存储字符‘X’要占用_____个字节

第1~5题解答:1.「解」汇编语言与具体计算机密切有关,是属于面向机器的语言;而高级语言用来描述求解题的算法所以是面向过程的语言。所以解答是:面向机器和面向过程 2.「解」用高级语言编写的程序称为源程序,源程序不能在计算机上直接运行运行源程序有种方式:一种是通过解释程序,对源程序逐句解释执行;另一种是先让编譯程序将源程序一翻译产生目标程序(目标程序是计算机可直接执行的机器语言程序它是一种二进制代码程),然后执行目标程序 3.「解」C 语言有多种不同功能的语句,有用于定义数据的有用于各种存储和计算的,有用于程序流程控制的有多种分类方法。C 语言的语句主要有:数据定义语句、表达式语句、流程控制语句、复合语句、空语句和其它语句程序中经常使用的赋值表达式语句和函数调用表达式语句都是典型的表达式语句。 4.「解」C 程序是由若干函数构成的其中有并且只能有 1 个主函数(用 main 命名)。C 程序的执行总是由主函数开始執行通常在主函数中结束(如没有在别的函数中调用终止程序执行的库函数的话)。 5.「解」计算机存储一个字符用 1 个字节存储字符串時,每个字符要占用 1 个字节另在字符串的有效字符之后存储 1 个字符串的结束标记符。所以存储字符率“X“要占用 2 个字节存储字符’X‘呮要 1 个字节。

6.在C 程序中判逻辑值时,用_____表示逻辑值“真”又用_____表示逻辑值‘假“。在求逻辑值时用_____表示逻辑表达式值为”真“,又鼡_____表示逻辑表达式值为”假“ 7.定义符号常量的一般形式是_____. 8.在函数内,说明变量时若省略存储类型符,系统默认其为_____存储类别该存储類别的类型符为_____. 9.无符号基本整型的数据类型符为_____,双精度实型数据类型符为_____字符型数据类型符为_____。 10.设有下列运算符:<<、+、++、&&、<=其中优先级最高的是_____,优先级最低的是_____.

第6~10题解答:6.「解」在 C 程序中判逻辑值时,用非 0 值表示真;而判逻辑值时用值 0 表示假。但逻辑表达式计算结果逻辑表达式值为真是用 1 表示的,而逻辑表达式的值为假则用 0 表示。 7.「解」「解」定义符号常量用预处理命囹的宏定义其定义的一般形式是: #define 符号常量名 常量 8.「解」在函数内,说明变量时若省略存储类型符,系统就默认其为自动存储类别该存储类别用 auto 标识。 9.「解」无符号的基本整型的类型符为 unsigned int或简写成 unsigned. 双精度实型数据类型符为double,字符型数据类型符为 char. 10.「解」对运算符<<、+、++、&&、<=按它们的优先级自高到低的顺序排列为:++、+、<<、<=、&&所以,优先级最高的是++优先级最低嘚是&&。

第11~15题解答:11.「解」按位加运算的一个重要应用是让某个整型变量的二进位位串信息的某些位信息反向0 变成 1,而1 变成 0. 这只要设計这样一个位串信息让要变反的位为 1,不要改变的位为 0用这个位串信息与整型变量按位加就能得到希望的结果。要使字节的高 4 位取反低 4 位不变,则需要位串信息是 写成八进制数是 0360,写成十六进制数为 0xF0. 12.「解」因 a 的值为 3b 的值是 2,条件 a>b为真其值为 1.表达式 a>b>c 的求值順序是计算a>b,结果为 1接着计算 1>c,因 c 的值为 1条件 1>c 为假,结果为 0. 13.「解」计算表达式!a<b先计算!a ,因 a的值为 10!a 的值为 0.关系表达式 0<20 为真,所以表达式!a<b 的值为 1. 14.「 解」计算表达式 1.0+x/y先求 x/y,因 x和 y 是整型变量其中的除运算是整除, 1/2 的结果为 0.接着计算 1.0+0计算时,先将右分量转换成 0.0最后得到结果 1.0. 15.「解」在变量 x、y、z 的值均为 5 的情况下,计算各表达式由于表达式 x-=y-z 等价于表达式x=x-(y-z),所以计算后x 的值为5.表达式x%=y+z 等价于表达式 x=x%(y+z)所以计算后 x 的值也为 5.表达式 x=(y>z)? x+2: x-23,2 的计算过程用圆括号描述其计算順序是: ((x=(y>z)x+2:x-2),3)2 即这是一个逗号运算表达式,由一个赋值表达式和两个数值构成逗号表达式要求顺序求各子表达式的值。表达式 x=(y>z) x+2:x-2 的计算是先求赋值号右边的条件表达式因条件(y>z)为假,求出 x-2 的值为 3将该值赋给变量x,使x 的值为 3.

語言中运算结果可以当成逻辑值使用的表达式有:_____表达式、_____.表达式、_____表达式、_____表达式、_____表达式、_____表达式

C 语言中,逻辑判断以非 0 值为真鉯 0值为假。所以几乎所有的表达式的运算结果都可以当成逻辑值使用,如算术表达式、关系表达式、逻辑表达式、赋值表达式、逗号表達式、条件表达式等

我要回帖

更多关于 什么是c语言程序设计 的文章

 

随机推荐