12c语言程序设计基础new

12c语言程序设计基础new

ID:34438650

大小:172.18 KB

页数:7页

时间:2019-03-06

12c语言程序设计基础new_第1页
12c语言程序设计基础new_第2页
12c语言程序设计基础new_第3页
12c语言程序设计基础new_第4页
12c语言程序设计基础new_第5页
资源描述:

《12c语言程序设计基础new》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、2C语言程序设计基础一、选择填空2.1答案:CBBDA分析:在一般微机系统中,int和unsigned类型数据在内存中占2个字节;long和unsignedlong类型数据在内存中占4个字节;short和unsignedshort类型数据占2个字节;一个float类型数据在内存中占4个字节;一个double类型数据占8个字节;一个char类型数据占1个字节。2.2答案:D分析:C语言对有符号和无符号整型数据的处理的区别,就在于对数据最高位的解释。对于一个有符号整数,C编译程序将把该值(二进制代码)的最高位作为符号标志位(符号标志位是0,表示正数;若为1,则表示负数);而

2、对于一个无符号整数,该数的最高位将被作为数值位处理。设int型数据占2个字节,则-1在内存中应以16位全1来表示,如下图所示:k=-11111111111111111↑符号位因此,当把k值按%d格式输出(即按有符号整数处理)时,仍为-1;而按%u格式输出(即16按无符号整数处理)时为65535(2-1=65535)。2.3答案:C分析:通过本题应当明确以下几点。(1)在本题的格式字符串中的“

3、”将按原样输出。(2)若用格式描述%6d输出k值,则输出占六格;右对齐;左边用空格填满。(3)若用格式描述%06d输出k值,输出同上;只是左边用0填满。(4)若用格式描述%-06d

4、,输出将为左对齐,右边用空格填满。2.4答案:B分析:根据C语言规则,当用户使用f格式描述符输出浮点数时,可以指定输出项的字段宽度,并规定小数点后面的位数。一般形式为%m.nf或%-m.nf。其中,用m指定输出数据所占的总列数;n指定小数点后的位数;“-”的含义是使输出数据左对齐。当输出数据宽度大于m时,数据的整数部分将按实际位数输出。本题中输出项x值的实际宽度应占9列,大于格式说明中规定的输出宽度,因此按照C语言规则,x值的整数部分(213)应按原样输出,小数部分只保留两位(且要四舍五入)。此外,还应注意到,在本题中,输出项x的实际宽度大于格式说明中所指定的输出宽度,

5、因此%后面的字符“-”对输出格式无影响。本题的最终输出为213.83。2.5答案:C分析:在使用e格式描述符输出浮点数时(浮点数将以指数形式输出),用户也可指定输出数据的宽度和小数部分的位数,其一般形式为:%m.ne或%-m.ne,其中,m,n和字符“-”的含意均与上题所述相同。需要指出的是,在不同的计算机系统中,虽然对指数部分应占宽度的规定不同,但是数值部分均按标准化指数形式输出(即小数点前必须有而且仅有1一位非零数字)。本题中,输出项x的实际宽度为9列,而格式说明中所给定的域宽为6,因此只能按标准化指数形式输出x值的整数部分,截去小数部分并四舍五入,即输出结果为2.

6、14e+002。2.6答案:C分析:在C语言中,字符数据既可以用字符形式输出,也可以用整数形式输出。例如,字符a的ASCII十进制代码为97,若按十六进制形式输出为61,若按八进制形式输出则为141。因此,按照本题第一个printf()函数调用语句的格式说明,输出应当是:61,141(多余的输出项k将不予输出)。对于第二个printf()函数调用语句,由于其格式说明中包含两个连续的%字符,则根据C语言的规定,%%不再作为格式描述字符使用,而是处理成字符“%”的原样输出。因此本语句中的输出项k仍没有对应的格式描述符,也将不予输出。2.7答案:B分析:本题的目的是要读者弄清

7、C语言中转义字符的正确表示形式。C语言中的字符常量允许用两种形式表示,一种是用单引号括起来的一个字符;另一种则是以一个“”开头的字符序列——转义字符序列。由于本题中的转义字符序列包含了不正确的八进制数9,因此该说明语句是不合法的。2.8答案:C分析:根据C语言的有关规则,使用scanf()函数输入数据时,可以指定域宽,但是不能规定小数点后的位数。因此,本题答案A中的格式描述符%6.2f是不合法的。对于答案B,由于格式控制字符串中的%n是非格式描述符,因此该输入函数不能为变量b输入数据。对于答案D,由于在C语言中,只能用%d,%o或%x格式描述符为unsigned类型变

8、量输入数据,因此答案D中的输入函数也是错误的。2.9答案:D分析:本题的关键是要弄清在执行scanf()函数时,如何从键盘上正确地输入数据。首先要注意,在输入数值数据时,两个数据项之间至少要以一个空格相隔(也可以用回车键或跳格键Tab来相隔),因此答案A和C中的输入方式是错误的。此外,根据C语言规定,如果在scanf()函数的格式控制字符串中,包含了非格式描述符,则输入数据时应在对应位置上输入与这些字符相同的字符。例如,本题的第二个scanf()函数的格式控制串中包含了一个非格式描述符“,”,则从键盘输入数据时,在数据项10和20之间必须

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。