首先介绍Turbo C程序的基本组成部分; 然后介绍Turbo C的数据类型、变 K_n%`5
量类型、变量的初始化和赋值; 最后介绍Turbo C的有关操作。通过本节的学习,可 \]%U?`A
以对Turbo C语言有一个初步认识。 =C)1NJx&~
vrbh+
1. Turbo C程序的一般组成部分 {hz:[
o7zfD94I
Turbo C 2.0 象其它语言一样按其规定的格式和提供的语句由用户编写应用程 6u7wfAf
序。 请看下面一段Turbo C源程序。 例1: lZ_k307
( mlc']F
fif<[Ax
@1@WB]mQQ
/*Example program of Turbo C*/ tO3 ;;%
#include /*包含文件说明*/ ^&HYnwk
void lgc(void);/*子函数说明*/ e,8-P-h~T
char answer;/*定义全程变量*/ cC.DBYV+-
int main()/*主函数定义*/ R0}%
{ sXu+F2O
char a;/*定义局部变量*/ I&Y(]S,cU
clrscr(); aa/9o]
gotoxy(12,3); ,qB081hPG
puts("Welcome to use Turbo C2.0!"); 8F1!9W7
gotoxy(15,13); e_TDO
printf("--Exit"); }}_l@5
gotoxy(15,15); &)-?=M
printf("--Continue"); H
#_Z6J
while(1) 7l3q~ dQ
{ q=6Y2Q
a=getch(); 7i.aZ2a%
if(a==27) sSUd;BYf
break; aDuanGC/V
if(a==13) B!@0(A
{ "#jKk6{I0
lgc(); *gVv74;;
if(answer=='y'||answer=='Y') Cq~Ir*"
{ =P{RHhWy;
gotoxy(23,14); UhK,H
puts("Please Write to the Company"); GWKefH
getch(); v<1;1m
break; NO^(D+9
} QUf_fe!,|
} gp=0;#4
4
} o1\8>Ew
return(0);}void lgc(void){ &bQ^J%\
clrscr(); 9"S3A EI
gotoxy(12,8); '! (`?
printf("The Excellent Selection!"); k
W ,|>
gotoxy(21,12); v0=~PN~E
printf("Do you have any question?(Y/N)"); ,dBI=D'
answer=getche();} m='OnTeOE
l<0V0R(
> R=YF*t
7[LC*nrr
由例子程序可以看出,Turbo C源程序主要有以下几个特点: :Kiu*&{
&kvVMnok
1. 程序一般用小写字母书写; qb&*,zN
t
At+5H
2. 大多数语句结尾必须要用";"作为终止符,否则Turbo C 不认为该语句 kWFR(J&R
结束; )Pq.kn{Sp
K4BMa]/U
3. 每个程序必须有一个而且只能有一个称作主函数的main()函数; S[M$>
\X!!(Z;6A
4. 每个程序体(主函数和每个子函数,如上例中的main()函数和sub()函数)必须用一对花括号" 0W> ",2|z
{"和"}"括起来; ;q Z2V
K#jm6Xh?E
5. 一个较完整的程序大致包括:包含文件(一组#include<*.h>语句)、 )1/O_N6C
用户函数说明部分、全程变量定义、主函数和若干子函数组成。在主函数和子函数 ^gG,}GTl
中又包括局部变量定义、 若干个Turbo C库函数、控制流程语句、用户函数的调用 3$Je,|bs
语句等; YC~+r8ME$j
F/8y p<_r
J$0*K+m
6. 注释部分包含在"/*"和"*/"之间,在编译时它被Turbo C编译器忽略。 ?W()Do1tR
v;SJgZK
说明: 8J} J;Ga
M4| L
Sc&_6}K
1. 象其它一些语言一样,Turbo C的变量在使用之前必须先定义其数据类 ;XT$rtuX
型,未经定义的变量不能使用。定义变量类型应在可执行语句前面,如上例main()函 r_G`#Z_5F
数中的第一条语句就是变量定义语句,它必须放在第一各执行语句clrscr()前面。 !SnpesTn
8Ex0[e
bTj,5,8i
2. eIJQ|p<v
在Turbo C中, 大、小写字母是有区别的,相同字母的大、小写代表不同的变量。 vJ!t.Vou
R-ci?7d t3
3. C}CX n X
Turbo C程序的书写格式非常灵活,没有严格限制。 R##O9BSI8Z
y03l_E,
例1的主函数可写成: HM/ qB^
;\h'A(
8g\.1<~
main(){char c;clrscr();gotoxy(12,3); _>s.V`N'
puts("Welcome to use Turbo C2.0!");gotoxy(15,13); eX\t]{\oC
printf("--Continue");gotoxy(15,15);...} j.o)!SA
9E5B.qlw$l
FE`J.aw^X
这样写语法上没有错误,但阅 XZhhr1-<a
读起来不方便, 同时也使得程序层次不明确。 uJQeZEe
HO"(eDW6z
% uKDcj
作者建议用Turbo C编程时,一行一条 =$MV3]
语句,遇到嵌套语句向后缩进,必要时对程序加上注释行。这样可以便程序结构清楚、
/9sUp}*
易于阅读、维护和修改。通过以上介绍,可以得出Turbo C源程序的一般形式为: m35G;
包含文件 )j](_kvK
子函数类型说明 V%))%?3x_
全程变量定义 @B+];lr/-
main() rVLA"x 9u
{ E)Dik`Ccl
局部变量定义 1*Z}M%
<程序体> .$Y[>9
} ^-DK<jZ^
sub1() 46b.= }
{ \>+gZc]an
局部变量定义 }+z}vb
<程序体> "QMHY\C
} Epx.0TA= t
sub2() t;'__">:q
{ =&vV$UtV
局部变量定义 YPN|qn(
<程序体> `|gCbs95
} GFvOrRlP\
. BP` UB
. yY}`G-)g~*
. 1UOFTI2S|
subN() Gb"PMai
{ ~!@a
局部变量定义 Xh?{%?2
<程序体> T+I|2HYqOj
} N7|ctO
MD%86m{Sg=
其中sub1() ,...,subN()代表用户定义的子函数,程序体指Turbo C 2.0提供的 NS\'o
)J
任何库函数调用语句、控制流程语句或其它用子函数调用语句等。 kM.zX|_
/Z^+K
Q~jUZ-qN
2. 数据类型 @rE>D
44!bwXz8
在Turbo C语言中, 每个变量在使用之前必须定义其数据类型。Turbo C有以下 E]bjI$j
几种类型:整型(int)、浮点型(float)、字符型(char)、指针型(*)、无值型(void) >scEdeM
以及结构(struct)和联合(union)。其中前五种是Turbo C的基本数据类型、后两种 tYnNOK*|
数据类型(结构和联合)将在第五章介绍。 xSw ^v6!2
Ax&+UxQ0|
2.1 整型(int) +?%huJYK,
W)\~T :Kn
一、整型数说明 (|W@p\Q
GZse8ng
K1Uur>Pk%
加上不同的修饰符,整型数有以下几种类型; 1g
*4e
J
9z\ qTI
signed short int 有符号短整型数说明。简写为short或int,字长为2 bEM-^SR
^*Sb)tu\ W
字节共16位二进制数,数的范围是-32768~32767。 j#29L"
gP`8hNwR
signed long int 有符号长整型数说明。简写为long,字长为4字节共 vuHqOAFNs
32位二进制数,数的范围是-2147483648~2147483647。 m/<7FU8
unsigned short int 无符号短整型数说明。简写为unsigned int,字长 Uc.K6%iI
为2字节共16位二进制数,数的范围是0~65535。 \ZXH(N*>2t
unsigned long int 无符号长整型数说明。简写为unsigned long,字长 ]2?t$"G8
为4字节共32位二进制数,数的范围是0~4294967295。 Z O&5C6qa
=YR/|9(
二、整型变量定义 `U)~fu/\2M
}yUZ(k#
b*7OIN5h
可以用下列语句定义整型变量 =^NR(:SaaU
int a,b;/*a、b被定义为有符号短整型变量*/ M5wj79'l"
unsigned long c;/*c被定义为无符号长整型变量*/ `C,47 9~J
#5F\zeo@F?
三、整型常数表示 h&&ufF]D
$Die~rPU
按不同的进制区分,整型常数有三种表示方法: O.}{s;
十进制数:以非0开始的数 ;'*"(F=D6
如:220,-560,45900 ~i(X{^,3
八进制数:以0开始的数 ~qs97'
如:06;0106,05788 4\>Cnc{
十六进制数:以0X或0x开始的数 O",:0<
如:0X0D,0XFF,0x4e 3#W>
另外, 可在整型常数后添加一个"L"或"l"字母表示该数为长整型数, 如22L, WJ8i,7
0773L,0Xae4l。 VGkwrS;+I
t=5K#SX}
2.2 浮点型(float) 5EM(3eY ^q
一、浮点数说明 2}K7(y!?u
awGI|d
2ACN5lyUS
Turbo C中有以下两种类型的浮点数: }Dm-Ibdg(
float 单浮点数。字长为4 个字节共32 位二进制数,数的范围是 Iell`;
3.4x10-38E~3.4x10+38E。 `|[Q]+Mx
double 双浮点数。字长为 8个字节共 64 位二进制数,数的范围是 Z%k)'%_
1.7x10-308E~1.7x10+308E。 V |)3l7IC<
) m[0,
}O-|b#Q
说明: h,45-#+
浮点数均为有符号浮点数,没有无符号浮点数。 uL`;KD
s7[du_)
二、浮点型变量定义 gh#9<
u?i_N0H
2eK!<Gj
可以用下列语句定义浮点型变量: ,E<(K8
float a,f;/*a,f被定义为单浮点型变量*/ h,"K+$
double b;/*b被定义为双浮点型变量*/ "k[-eFz/@M
qS:hv&~
三、浮点常数表示 |wZcVct~
v'mRch)d
Dyyf%'\M
例如:+29.56,-56.33,-6.8e-18,6.365 EBc_RpC/Z
说明: rOHU)2
1. 浮点常数只有一种进制(十进制)。 ]3nka$wA*
2. 所有浮点常数都被默认为double。 ErnjIx:
3. 绝对值小于1的浮点数, 其小数点前面的零可以省略。如:0.22可写为.22,- MOi.bHCQJP
0.0015E-3可写为-.0015E-3。 ge
%ytrst
4. Turbo C默认格式输出浮点数时,最多只保留小数点后六位。 ya.!zGH
AwN7/M~'
2.3 字符型(char) a\;Vly;
"^Y)&