首先介绍Turbo C程序的基本组成部分; 然后介绍Turbo C的数据类型、变 o,)?!{k}
量类型、变量的初始化和赋值; 最后介绍Turbo C的有关操作。通过本节的学习,可 RNe^;
B
以对Turbo C语言有一个初步认识。 dUhY\v oQ
ajEjZ6
1. Turbo C程序的一般组成部分 BBev<
,LnII
Turbo C 2.0 象其它语言一样按其规定的格式和提供的语句由用户编写应用程 aJ>65RJ^=
序。 请看下面一段Turbo C源程序。 例1: lz?$f4TzA
\RG8{G,
|AozR ~
N(Tz%o4
/*Example program of Turbo C*/ @"^0%/2-
#include /*包含文件说明*/ WHj'dodS
void lgc(void);/*子函数说明*/ tIuCct-
char answer;/*定义全程变量*/ .?loO3 m
int main()/*主函数定义*/ :s7m4!EF
{ M
r5v<
char a;/*定义局部变量*/ c_4[e5z
clrscr(); ^y<<>Y'I
gotoxy(12,3); xjKR R?
puts("Welcome to use Turbo C2.0!"); GU( _
gotoxy(15,13); sG92XJ
printf("--Exit"); 6;ixa
hZV
gotoxy(15,15); TOB]IrW
printf("--Continue"); G6$kv2(k`@
while(1) ;5659!;
{ <4HDZ{"M
a=getch(); gMzcTmbc8
if(a==27) zdYy^8V|z
break; =\H!GT
if(a==13) PoxK{Y
{ ^rifRY-,yO
lgc(); xe^Gs]fm
if(answer=='y'||answer=='Y') ,X`)ct
{ 6">+
~
G
gotoxy(23,14); ,g2ij
puts("Please Write to the Company"); e,W%uH>X
getch(); NTYg[VTr
break; [PNT\ElT
} ?#}N1k\S
} =A83W/4
} e&&53?
return(0);}void lgc(void){ BRgXr
clrscr(); JvVWG'Z"
gotoxy(12,8); iKX-myCz
printf("The Excellent Selection!"); ]&lY%"U$i
gotoxy(21,12); ^hZ0IM
printf("Do you have any question?(Y/N)"); )b)-ZS7
answer=getche();} xc=b
|:A
n>BkTaI
MkfBuW;)
zh8nc%X{
由例子程序可以看出,Turbo C源程序主要有以下几个特点: Vex{.Vh,"
Cv6'`",Yzm
1. 程序一般用小写字母书写; ;DFSzbF`
21K>`d\
2. 大多数语句结尾必须要用";"作为终止符,否则Turbo C 不认为该语句 `4=^cyt+
结束; 1_PoqD!q
&,{fw@#)_
3. 每个程序必须有一个而且只能有一个称作主函数的main()函数;
<G|(|E1
fF7bBE)L/|
4. 每个程序体(主函数和每个子函数,如上例中的main()函数和sub()函数)必须用一对花括号" `d5%.N
{"和"}"括起来; 1Q<^8N)pf
9]f!'d!5
5. 一个较完整的程序大致包括:包含文件(一组#include<*.h>语句)、 tX_R_]v3
用户函数说明部分、全程变量定义、主函数和若干子函数组成。在主函数和子函数 a7r%X -
中又包括局部变量定义、 若干个Turbo C库函数、控制流程语句、用户函数的调用 D1zBsi94D
语句等; p@xf^[50k
_m5uDF?[
2mVD_ s[`
6. 注释部分包含在"/*"和"*/"之间,在编译时它被Turbo C编译器忽略。 Enum/O5
%4et&zRC
说明: ZX9T YN
J;.wXS_U8
<
$J>9k
1. 象其它一些语言一样,Turbo C的变量在使用之前必须先定义其数据类 49GkPy#]L=
型,未经定义的变量不能使用。定义变量类型应在可执行语句前面,如上例main()函 .F
数中的第一条语句就是变量定义语句,它必须放在第一各执行语句clrscr()前面。 JTSlWq4
RP[{4Q8
le/,R@]B9
2. hI]Hp3S
在Turbo C中, 大、小写字母是有区别的,相同字母的大、小写代表不同的变量。 B-ngn{Yc
^o3"#r{:+
3. Ve}(s?hU5
Turbo C程序的书写格式非常灵活,没有严格限制。 _(%d(E2?
w$zu~/qV2
例1的主函数可写成: 3x{t(
oM2l-[-
KL1/^1
main(){char c;clrscr();gotoxy(12,3); \^L`7cBL
puts("Welcome to use Turbo C2.0!");gotoxy(15,13); 8 OY 3A
printf("--Continue");gotoxy(15,15);...} EofymAi%
>,gg5<F-E
x@P y>f2
这样写语法上没有错误,但阅 R!\_rc1/
读起来不方便, 同时也使得程序层次不明确。 uwzvb gup?
UO0{):w>
-JMdE_h
作者建议用Turbo C编程时,一行一条 {XR6>]
语句,遇到嵌套语句向后缩进,必要时对程序加上注释行。这样可以便程序结构清楚、 x+Ttl4
易于阅读、维护和修改。通过以上介绍,可以得出Turbo C源程序的一般形式为: H?<N.Dq
包含文件 C'\-
@/
子函数类型说明 t<#mP@Mz=N
全程变量定义 UQ)W%Y;[0
main() 4|buk]9
{ >7lx=T
x
局部变量定义 60P#,o@G
<程序体> ]R h#g5X
} zM bN;tu
sub1() i
UCXAWP
{ D!{Y$;
局部变量定义 "& ])lz[u
<程序体> ~
{E'@MU
} wvO|UP H\
sub2() MLw7}[
{ l~c@^!
局部变量定义 sGyeb5c
<程序体> b LlKe50
} G_;)a]v8)
. Sj]T
. GPkmf%FJ
. 2D75:@JL}|
subN() xHL( !PF
{ 7!@-*/|!S9
局部变量定义 EYtL_hNp}I
<程序体> cii_U=
} -~s!73pDY
Isvx7$Vu+
其中sub1() ,...,subN()代表用户定义的子函数,程序体指Turbo C 2.0提供的 6h|q'.Y
任何库函数调用语句、控制流程语句或其它用子函数调用语句等。 z.7cy@N6
f[<m<I
EN$2,qf
2. 数据类型 K-bD<X
*W.C7=
在Turbo C语言中, 每个变量在使用之前必须定义其数据类型。Turbo C有以下 <;vbsksZeH
几种类型:整型(int)、浮点型(float)、字符型(char)、指针型(*)、无值型(void) f,h J~
以及结构(struct)和联合(union)。其中前五种是Turbo C的基本数据类型、后两种 q*U*Fu+
数据类型(结构和联合)将在第五章介绍。 $Z.7zH
@Z*W
2.1 整型(int) Dd'm U
pWy=W&0~qf
一、整型数说明 YLqGRE`W
$bW3_rl%X
L^E[J`
加上不同的修饰符,整型数有以下几种类型; _,p/l&<
$+P>~X)
signed short int 有符号短整型数说明。简写为short或int,字长为2 ?oVx2LdD|
M2
,YsHt
字节共16位二进制数,数的范围是-32768~32767。 OVm\
X &uTSgN
signed long int 有符号长整型数说明。简写为long,字长为4字节共 AJh w
32位二进制数,数的范围是-2147483648~2147483647。 }+)fMZz
unsigned short int 无符号短整型数说明。简写为unsigned int,字长 wT;0w3.Z
为2字节共16位二进制数,数的范围是0~65535。 (}{G`N>.{
unsigned long int 无符号长整型数说明。简写为unsigned long,字长 uD\?(LM
为4字节共32位二进制数,数的范围是0~4294967295。 8J:}%DaxL
sF|5XjQ
二、整型变量定义 DgUT5t1
;XF:\<+
cJ{ Nh;"
可以用下列语句定义整型变量 I;e=0!9U
int a,b;/*a、b被定义为有符号短整型变量*/ &ib5*4!
unsigned long c;/*c被定义为无符号长整型变量*/ ,5i` -OI
`bFff%_
三、整型常数表示 I KqQ>Z-q~
dCE0$3'5
按不同的进制区分,整型常数有三种表示方法: < vL,*.zd
十进制数:以非0开始的数 1;C+$
如:220,-560,45900 =Q+;=-1
八进制数:以0开始的数 @Ws*Q TlV
如:06;0106,05788 n,jKmA
十六进制数:以0X或0x开始的数 hlV=qfc
如:0X0D,0XFF,0x4e igkYX!0#8O
另外, 可在整型常数后添加一个"L"或"l"字母表示该数为长整型数, 如22L, Wi*.TWz3
0773L,0Xae4l。 Gr7=:+0n|P
e5* ni/P
2.2 浮点型(float) S]bmS6#
一、浮点数说明 gW^VVbB'L
Yk)."r&