首先介绍Turbo C程序的基本组成部分; 然后介绍Turbo C的数据类型、变 CuPZ0
量类型、变量的初始化和赋值; 最后介绍Turbo C的有关操作。通过本节的学习,可 $b;9oST
以对Turbo C语言有一个初步认识。 }p0|.Qu 9
]}R\[F (_%
1. Turbo C程序的一般组成部分 |`9POl=
n~\"W
Turbo C 2.0 象其它语言一样按其规定的格式和提供的语句由用户编写应用程 BnH<-n_
序。 请看下面一段Turbo C源程序。 例1: ?DEj|
i8
ml7]sN(
5nIm7vlQm
$L>tV='
/*Example program of Turbo C*/ e!*d(lHKos
#include /*包含文件说明*/ fU_itb(
void lgc(void);/*子函数说明*/ [QA@XBy6
char answer;/*定义全程变量*/ 2.O;
int main()/*主函数定义*/ i'|rx2]e
{ Ji SJi?
char a;/*定义局部变量*/ hKb-l`KO
clrscr(); 9J_lxy}
gotoxy(12,3); X
b-q:{r1h
puts("Welcome to use Turbo C2.0!"); I,D24W4l
gotoxy(15,13); G"0YCi#I|
printf("--Exit"); `,~I*}T>5W
gotoxy(15,15); \{L!hAw
printf("--Continue"); WE\912j
while(1) Px&*&^Gf[b
{ [Y.3miE
a=getch(); [gFpFz|b<
if(a==27) P6*IR|
break; yhQv $D,^f
if(a==13) g*Nc+W](P>
{ t {tcy$bw
lgc(); 9mkt.>$
if(answer=='y'||answer=='Y') ,EW-21
{ HjKj.fV
gotoxy(23,14); s"`uE$6N
puts("Please Write to the Company"); 9vT@ mqKu
getch(); pZz?c/h-
break; "exph$
} hZ!N8nWwNR
} >5)E\4r-
} A!&p,KfT5+
return(0);}void lgc(void){ A-r-^S0\
clrscr(); @#Jc!p7)
gotoxy(12,8); OOS(YP@b
printf("The Excellent Selection!"); ! FbW7"yE
gotoxy(21,12); F>E'/r*
printf("Do you have any question?(Y/N)"); &!#,p{}ccU
answer=getche();} 0 } uEM_a
W}V L 3s
T(K~be
?B@(W(I
由例子程序可以看出,Turbo C源程序主要有以下几个特点: Z8+{ -
^Fgmwa'
1. 程序一般用小写字母书写; m5r65=E
.)|r!X
2. 大多数语句结尾必须要用";"作为终止符,否则Turbo C 不认为该语句 =Y>_b
2
结束; ['j_W$8n
]&w>p#_C
3. 每个程序必须有一个而且只能有一个称作主函数的main()函数; si,fs%D&
3{ i'8
4. 每个程序体(主函数和每个子函数,如上例中的main()函数和sub()函数)必须用一对花括号" ,TaaX I
{"和"}"括起来; -qz;
-m)N~>{qS
5. 一个较完整的程序大致包括:包含文件(一组#include<*.h>语句)、 R"#DR^.;
用户函数说明部分、全程变量定义、主函数和若干子函数组成。在主函数和子函数 5an#,vCn{
中又包括局部变量定义、 若干个Turbo C库函数、控制流程语句、用户函数的调用 L31B:t^
语句等; :%Na-j9hV)
#r M/
4ihv|%@
6. 注释部分包含在"/*"和"*/"之间,在编译时它被Turbo C编译器忽略。 LL@VR#n"V
J4!Om&\@
说明: iZ2|/hnw
&S9Sl
9cud CF
1. 象其它一些语言一样,Turbo C的变量在使用之前必须先定义其数据类 ,2S w6u
型,未经定义的变量不能使用。定义变量类型应在可执行语句前面,如上例main()函 j+NOT`&
数中的第一条语句就是变量定义语句,它必须放在第一各执行语句clrscr()前面。 C4e3Itc9X
)| @'}k+
Ol3$!x9
2. B;?)
在Turbo C中, 大、小写字母是有区别的,相同字母的大、小写代表不同的变量。 X(kyu,w
O0Y/y2d
3. @SeE,<
Turbo C程序的书写格式非常灵活,没有严格限制。 j4Ppn
We%-?l:"
例1的主函数可写成: )B.NV<m
lR_ 4iyqb
DZKVZ_q
main(){char c;clrscr();gotoxy(12,3); O?|opD
puts("Welcome to use Turbo C2.0!");gotoxy(15,13); q\*",xZxwz
printf("--Continue");gotoxy(15,15);...} ;*ebq'D([
U,S&"`a
:{?8rA5
这样写语法上没有错误,但阅 cN_e0;*Ua
读起来不方便, 同时也使得程序层次不明确。 \xJTsdd
/Ps}IW
pfsRV]
作者建议用Turbo C编程时,一行一条 fl>*>)6pm
语句,遇到嵌套语句向后缩进,必要时对程序加上注释行。这样可以便程序结构清楚、 @/i{By^C
易于阅读、维护和修改。通过以上介绍,可以得出Turbo C源程序的一般形式为: cLR02
包含文件 3OTq
子函数类型说明 FC+K2Yf1=0
全程变量定义 {t`UV,
main() (cJb/|?3
{ GY 4?}T^s
局部变量定义 {` Bgxejf
<程序体> N)G.^9
} \tE2@
sub1() n}X)a-=
{ JVE]Qb_
局部变量定义 +ou5cQ^
<程序体> Yoi4R{9c
} "MZj}}l
sub2() ;Q>(%"z};
{ m:A7*r[
局部变量定义 !~PLW] Z4
<程序体> 1^rODfY 0
} .PBma/w
W
. ?zp@HSa9
. xo/[,rR
. :c%vl$
subN() //*>p
{ _D7MJT
局部变量定义 ~jMdM~}
<程序体> wZN<Og+;
} J'B6l#N
j4RM'_*G
其中sub1() ,...,subN()代表用户定义的子函数,程序体指Turbo C 2.0提供的 'zV/4iE=
任何库函数调用语句、控制流程语句或其它用子函数调用语句等。 K~8;wDN`b
Rr+Y::E
{<%zcNKl^L
2. 数据类型 Qag@#!&n
E8#r<=(m
在Turbo C语言中, 每个变量在使用之前必须定义其数据类型。Turbo C有以下 @*jd.a`
几种类型:整型(int)、浮点型(float)、字符型(char)、指针型(*)、无值型(void) 7RNf)nz
以及结构(struct)和联合(union)。其中前五种是Turbo C的基本数据类型、后两种 i9fK`:)
数据类型(结构和联合)将在第五章介绍。 "pTyQT9P
"Wd?U[[
2.1 整型(int) C'3/B)u}l
4jEPh{q
一、整型数说明 j&) "a,f
J/Ki]T9
d54(6N%
加上不同的修饰符,整型数有以下几种类型; 4h wUH
n|
=k9z<y8
signed short int 有符号短整型数说明。简写为short或int,字长为2 &qqS'G*
Uv'.]#H<
字节共16位二进制数,数的范围是-32768~32767。 $>zLa_cn|
=BO} hk
signed long int 有符号长整型数说明。简写为long,字长为4字节共 13(JW
32位二进制数,数的范围是-2147483648~2147483647。 >i=^Mh-bm
unsigned short int 无符号短整型数说明。简写为unsigned int,字长 oyV@BHJO@
为2字节共16位二进制数,数的范围是0~65535。 +`g&J
unsigned long int 无符号长整型数说明。简写为unsigned long,字长 Z7?C^m
为4字节共32位二进制数,数的范围是0~4294967295。 $$+6=r}
ukBj@.~
二、整型变量定义 hp?hb-4l
>!:uVS
. _JM3o}F
可以用下列语句定义整型变量 ZZqImB.Cz6
int a,b;/*a、b被定义为有符号短整型变量*/ )u~LzE]{_
unsigned long c;/*c被定义为无符号长整型变量*/ ]l.y/pRP5[
:=x-b3U
三、整型常数表示 PK^{WF}L;
^Z]1Z
按不同的进制区分,整型常数有三种表示方法: $'!r/jV
十进制数:以非0开始的数 Z'iXuI49
如:220,-560,45900 WF#eqU*&
八进制数:以0开始的数 ka3Jqy4[
如:06;0106,05788 sS#Lnj^`%
十六进制数:以0X或0x开始的数 2@WF]*Z
如:0X0D,0XFF,0x4e `h+ia/
另外, 可在整型常数后添加一个"L"或"l"字母表示该数为长整型数, 如22L, qXO@FW]
0773L,0Xae4l。 @WVpDhG
ImQ?<g8$
2.2 浮点型(float) `Cy-*$$
一、浮点数说明 Enr8"+.(
)HWf`;VQ
@mM'V5_#
Turbo C中有以下两种类型的浮点数: ek6PMZF:'
float 单浮点数。字长为4 个字节共32 位二进制数,数的范围是 7kapa59
3.4x10-38E~3.4x10+38E。 <wV?B9j
double 双浮点数。字长为 8个字节共 64 位二进制数,数的范围是 ]F
kLtq
1.7x10-308E~1.7x10+308E。 3]Rb2$p[=
J{c-'Of2yi
`[x`#irD
说明: NFpR jC?
浮点数均为有符号浮点数,没有无符号浮点数。 ~*R"WiDtI
b#cXn4<