c语言第六版第四章答案,C primer plus 第六版 第6版 003章 第三章 复习题 答案 中文...

本文详细介绍了C语言中不同数据类型如整型、浮点型、字符型的适用场景,并给出了常量的类型及其在`printf()`函数中的格式化输出说明。此外,还通过示例分析了程序中的错误和正确用法,包括变量声明、运算符使用以及格式化输入输出。
摘要由CSDN通过智能技术生成

1.指出下面各种数据使用的合适的数据类型(有些可使用多种数据类型)?

a.East Simpletion的人口        int\short int\unsigned short

b.DVD光盘的价格                float\double\

c.本章出现次数最多的字母          char\

d.本章出现次数最多的字母的次数   int \unsigned int

2.在什么情况下要用long类型的变量代替int类型的变量?

在系统中要表示的数超过了int可表示的范围,这是要使用long类型。

如果要处理更大的值,那么使用一种在所有系统上都保证至少是32位的类型,可提高程序的可移植性。

3.使用哪些可移植的数据类型可以获得32位有符号整数?选择的理由是什么?

如果正好要获得32位的整数,可以使用int32_t类型。

要获得可存储至少32位整数的最小类型,可以使用int_least32_t类型。

如果要为32位整数提供最快的计算速度,可以选择int_fast32_t类型

4.指出下列常量的类型和含义(如果有的话):

'\b' char类型常亮 但是存储位int类型

1066 int类型

99.44 double类型

0XAA 16进制int类型

2.0e30  double类型

5.Dittue Cawm编写了一个程序,请找出程序中的错误。

#include

(int) main {

float g, h;

float tax, rate;

g = 1.e21   e前面至少要有一个数字;

tax = rate*g;

return 0;

}

6.写出下列常量在声明中使用的数据类型和在printf()中对应的转换说明:

Constant                 Type                    Specifier

12                         int                            %d

0x3                     unsigned int                %#x

'c'                     char                        %c

2.34E07                 double                        %e

'\040'                     char                        %c

7.0                     double                        %f

6L                         long int                    %ld

6.0f                     float                        %f

0x5.b6p12                 float                        %a

7.写出下列常量在声明中使用的数据类型和在printf()中对应的转换说明(假设int为16位)

Constant                 Type                    Specifier

012                     int                        %#o

2.9e05L                 long double                %le

's'                     char                    %c

100000                     long int                %ld

'\n'                     char                    %c

20.0f                     float                    %f

0x44                     unsigned                %x

-40                     int                        %d

8.假设程序的开头有下列声明:

int imate = 2;

long short = 53456;

char grade = 'a';

float log = 2.71828;

print("The odds against the %d were %ld to 1.\n",imagte, short);

print("A score of %f is not an %c grade.\n",log, grade);

9.假设ch是char类型的变量,分别使用转义序列、十进制值、八进制字符常量和十六进制字符常量把回车字符赋值给ch(假设使用ASCII编码值)

转义字符 char ch=    '\r';

十进制值 char ch='13'

八进制 char ch='\015'

十六进制 char ch='\xd'

10.修正下列程序

void main(int) /* this program is perfect */

{

int cows, legs;

printf("How many cow legs did you count?\n");

scanf("%d", legs);

cows = legs / 4;

printf("That implies there are %d cows.\n", cows)

}

11.指出下列转义序列的含义

a. \n  换行

b. \\  反斜杠

c. \"  双引号

d. \t  制表符

  • 2
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值