理论教育 C语言程序设计:基本类型修饰符及转换

C语言程序设计:基本类型修饰符及转换

时间:2023-10-20 理论教育 版权反馈
【摘要】:类型修饰符可以改变基本类型的含义,以更加精确地适合特定环境的需要。当类型修饰符独自使用时,则认为是修饰int型的。表2-3ANSI标准定义的整数类型2.不同数据类型间的转换在表达式中使用不同类型的常量及变量时,它们要转换成同一类型后才能运算。

C语言程序设计:基本类型修饰符及转换

1.基本类型修饰符

对于基本类型,其前面还可以通过添加修饰符实现基本类型的“范围扩充”。类型修饰符可以改变基本类型的含义,以更加精确地适合特定环境的需要。C语言提供的修饰符主要有signed(有符号)、unsigned(无符号)、long(长型)、short(短型)。

以上修饰符均可修饰int基本类型,其中部分也可修饰char和double类型,关于修饰符的用法这里只研究它与int的搭配(表2-3),其他用法也是一样。有需要了解其他类型修饰用法的读者可参阅相关C语言书籍。当类型修饰符独自使用时,则认为是修饰int型的。长整型常量的表示形式是在数值后加上字母L或l,如数据45235L表示长整型数据,长整型数据的输出格式为%ld。

表2-3 ANSI标准定义的整数类型

2.不同数据类型间的转换

在表达式中使用不同类型的常量及变量时,它们要转换成同一类型后才能运算。运算时,C语言编译程序会把所有操作数转换成参加运算的操作数中表示范围最大的那种类型,称为类型提升。例如,若a是int型,b是long int型,则表达式10+a*b的类型应该是long int型。所以,弄清楚不同类型的数据运算的结果类型是必要的。

(1)自动类型转换

C语言规定,不同类型的数据在参加运算前会自动转换成相同的类型,再进行运算。转换规则是:

①所有char和short int型将自动提升为int型。

②若参加运算的数据有float型或double型,则转换成double型再运算,结果为double型。

③如果运算的数据中无float型或double型,但有long型,数据自动转换成long型再运算,结果为long型。

一句话,转换时,所有数据都向该表达式中数据表示范围宽的那种类型自动转换,不过,若有float类型,系统将自动转换成double类型。

(2)强制类型转换

使用强制类型转换,可以把表达式的结果硬性转换为指定类型,其一般形式为:

(类型)表达式

其中,“类型”是将要转换的有效C数据类型。例如,为确保表达式x/2的值为float型,可以书写成(float)x/2。

综合案例引入和本节C语言数据类型知识,理解和掌握各种数据类型及其使用规则是学好C语言的关键。总结如下:

1.科研工作需要认真务实,一丝不苟的态度,每一项工作都需要精确的计算和反复的验证,小小的误差都将会带来巨大的损失。

2.做任何事情都要遵循事物的客观规律,掌握好分寸,切忌过犹不及。在日常的学习生活中要学会调整好自己的状态,使自己的情感、情绪、理智处在平衡状态。

(www.daowen.com)

1.C语言的标识符只能由大小写字母,数字和下画线三种字符组成,而且第一个字符必须为(  )。

2.字符常量使用一对(  )界定单个字符,而字符串常量使用一对(  )来界定若干个字符的序列。

3.设int a;float f;double i;则表达式10+'a'+i*f值的数据类型是(  )。

4.已知:char a='a',b='b',c='c',i;则表达式i=a+b+c的值为(  )。

5.C语言提供的合法的数据类型关键字是(  )。

A.Float      B.Signed      C.integer      D.char

6.合法的字符常量是(  )。

A.'\084' B.'\84' C.'ab' D.'\x4A'

7.在C语言中,数字029是一个(  )。

A.进制数 B.十六进制数 C.十进制数 D.非法数

8.假定x和y为double型,则表达式x=2,y=x+3/2的值是(  )。

A.3.500 000 B.3 C.2.000 000 D.3.000 000

9.在C语言中,字符型数据在计算机内存中,以字符的(  )形式存储。

A.原码 B.反码 C.ASCII码 D.BCD码

10.字符串“ABC”在内存占用的字节数是(  )。

A.3 B.4 C.6 D.8

11.写出以下程序运行的结果。

12.垃圾分类是对垃圾收集处置传统方式的改革,是对垃圾进行有效处置的一种科学管理方法。人们面对日益增长的垃圾产量和环境状况恶化的局面,如何通过垃圾分类管理,最大限度地实现垃圾资源利用,减少垃圾处置的数量,改善生存环境状态,是当前世界各国共同关注的迫切问题。

从城市垃圾的分类回收处理现状来看,市民普遍存在垃圾分类意识薄弱和对城市垃圾分类的知识掌握不足,把垃圾分类认为是政府部门的职责,与其无关。虽然市民的环保意识逐渐增强,也逐渐参与到城市垃圾分类回收处理事业中,但由于缺乏相应的垃圾分类专业知识,错误分类的现象较为普遍,导致垃圾分类效果不够理想。

请同学们以小组为单位,上网查找垃圾分类的相关知识,设计一个小程序,可以输出垃圾分类的具体标准,给身边的同学普及一下垃圾分类的知识。

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈