Студопедия

Главная страница Случайная страница

Разделы сайта

АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника






Ch­ng 4






CÊ u tró c c b¶n cñ a ch­ng tr× nh

4.1. Lê i chó thÝ ch:

C¸ c lê i b× nh luË n, c¸ c lê i gi¶i thÝ ch cã thÓ ®­a vµo ë bÊ t kú chç nµo cñ a ch­ng tr× nh ®Ó cho ch­ng tr× nh dÔ hiÓ u, dÔ ®ä c hn mµ kh«ng lµm ¶nh h­ë ng ®Õ n c¸ c phÇ n kh¸ c. Lê i gi¶i thÝ ch ®­î c ®Æ t gi÷ a hai dÊ u /* vµ */.

Trong mé t ch­ng tr× nh cÇ n (vµ lu«n lu«n cÇ n) viÕ t thª m nh÷ ng lê i gi¶i thÝ ch ®Ó ch­ng tr× nh thª m râ rµng, thª m dÔ hiÓ u.

 

VÝ dô:

#include " stdio.h"

#include " string.h"

#include " alloc.h"

#include " process.h"

int main()

{

char *str;

/* CÊ p ph¸ t bé nhí cho x©u ký tù */

if ((str = malloc(10)) == NULL)

{

printf(" Not enough memory to allocate buffer\n");

exit(1); /* KÕ t thó c ch­ng tr× nh nÕ u thiÕ u bé nhí */

}

/* copy " Hello" vµo x©u */

strcpy(str, " Hello");

/* HiÓ n thÞ x©u */

printf(" String is %s\n", str);

 

/* Gi¶i phã ng bé nhí */

free(str);

return 0;

}

4.2. LÖ nh vµ khè i lÖ nh:

4.2.1. LÖ nh:

Mé t biÓ u thø c kiÓ u nh­ x=0 hoÆ c ++i hoÆ c scanf(...) trë thµnh c©u lÖ nh khi cã ®i kÌ m theo dÊ u;

VÝ dô:

x=0;

++i;

scanf(...);

Trong ch­ng tr× nh C, dÊ u; lµ dÊ u hiÖ u kÕ t thó c c©u lÖ nh.

4.2.2. Khè i lÖ nh:

Mé t d·y c¸ c c©u lÖ nh ®­î c bao bë i c¸ c dÊ u { } gä i lµ mé t khè i lÖ nh. VÝ dô:

{

a=2;

b=3;

printf(" \n%6d%6d", a, b);

}

TURBO C xem khè i lÖ nh cò ng nh­ mé t c©u lÖ nh riª ng lÎ. Nã i c¸ ch kh¸ c, chç nµo viÕ t ®­î c mé t c©u lÖ nh th× ë ®ã cò ng cã quyÒ n ®Æ t mé t khè i lÖ nh.

 

Khai b¸ o ë ®Ç u khè i lÖ nh:

C¸ c khai b¸ o biÕ n vµ m¶ng ch¼ ng nh÷ ng cã thÓ ®Æ t ë ®Ç u cñ a mé t hµm mµ cß n cã thÓ viÕ t ë ®Ç u khè i lÖ nh:

{

int a, b, c[50];

float x, y, z, t[20][30];

a==b==3;

x=5.5; y=a*x;

z=b*x;

printf(" \n y= %8.2f\n z=%8.2f", y, z);

}

Sù lå ng nhau cñ a c¸ c khè i lÖ nh vµ ph¹ m vi ho¹ t ®é ng cñ a c¸ c biÕ n vµ m¶ng:

Bª n trong mé t khè i lÖ nh l¹ i cã thÓ viÕ t lå ng khè i lÖ nh kh¸ c. Sù lå ng nhau theo c¸ ch nh­ vË y lµ kh«ng h¹ n chÕ.

Khi m¸ y b¾ t ®Ç u lµm viÖ c ví i mé t khè i lÖ nh th× c¸ c biÕ n vµ m¶ng khai b¸ o bª n trong nã mí i ®­î c h× nh thµnh vµ ®­î c h× nh thµnh vµ ®­î c cÊ p ph¸ t bé nhí. C¸ c biÕ n nµy chØ tå n t¹ i trong thê i gian m¸ y lµm viÖ c bª n trong khè i lÖ nh vµ chó ng lË p tø c biÕ n mÊ t ngay sau khi m¸ y ra khá i khè i lÖ nh. VË y:

Gi¸ trÞ cñ a mé t biÕ n hay mé t m¶ng khai b¸ o bª n trong mé t khè i lÖ nh kh«ng thÓ ®­a ra sö dô ng ë bÊ t kú chç nµo bª n ngoµi khè i lÖ nh ®ã.

ë bÊ t kú chç nµo bª n ngoµi mé t khè i lÖ nh ta kh«ng thÓ can thiÖ p ®Õ n c¸ c biÕ n vµ c¸ c m¶ng ®­î c khai b¸ o bª n trong khè i lÖ nh

NÕ u bª n trong mé t khè i ta dï ng mé t biÕ n hay mé t m¶ng cã tª n lµ a th× ®iÒ u nµy kh«ng lµm thay ®æ i gi¸ trÞ cñ a mé t biÕ n kh¸ c cò ng cã tª n lµ a (nÕ u cã) ®­î c dï ng ë ®©u ®ã bª n ngoµi khè i lÖ nh nµy.

NÕ u cã mé t biÕ n ®· ®­î c khai b¸ o ë ngoµi mé t khè i lÖ nh vµ kh«ng trï ng tª n ví i c¸ c biÕ n khai b¸ o bª n trong khè i lÖ nh nµy th× biÕ n ®ã cò ng cã thÓ sö dô ng c¶ bª n trong cò ng nh­ bª n ngoµi khè i lÖ nh.

VÝ dô:

XÐ t ®o¹ n ch­ng tr× nh sau:

{

int a=5, b=2;

{

int a=4;

b=a+b;

printf(" \n a trong =%3d b=%3d", a, b);

}

printf(" \n a ngoai =%3d b=%3d", a, b);

}

Khi ®ã ®o¹ n ch­ng tr× nh sÏ in kÕ t qu¶ nh­ sau:

a trong =4 b=6

a ngoµi =5 b=6

Do tÝ nh chÊ t biÕ n a trong vµ ngoµi khè i lÖ nh.

4.3. CÊ u tró c c b¶n cñ a ch­ng tr× nh:

CÊ u tró c ch­ng tr× nh vµ hµm lµ mé t trong c¸ c vÊ n ®Ò quan trä ng cñ a C. VÒ hµm ta sÏ cã mé t ch­ng nã i tØ mû vÒ nã. ë ®©y ta chØ ®­a ra mé t sè qui t¾ c chung:

Hµm lµ mé t ®n vÞ ®é c lË p cñ a ch­ng tr× nh. TÝ nh ®é c lË p cñ a hµm thÓ hiÖ n ë hai ®iÓ m:

Kh«ng cho phÐ p x©y dù ng mé t hµm bª n trong c¸ c hµm kh¸ c.

Mç i hµm cã c¸ c biÕ n, m¶ng.. riª ng cñ a nã vµ chó ng chØ ®­î c sö dô ng né i bé bª n trong hµm. Nã i c¸ ch kh¸ c hµm lµ ®n vÞ cã tÝ nh chÊ t khÐ p kÝ n.

Mé t ch­ng tr× nh bao gå m mé t hoÆ c nhiÒ u hµm. Hµm main() lµ thµnh phÇ n b¾ t bué c cñ a ch­ng tr× nh. Ch­ng tr× nh b¾ t ®Ç u thù c hiÖ n c¸ c c©u lÖ nh ®Ç u tiª n cñ a hµm main() vµ kÕ t thó c khi gÆ p dÊ u } cuè i cï ng cñ a hµm nµy. Khi ch­ng tr× nh lµm viÖ c, m¸ y cã thÓ ch¹ y tõ hµm nµy sang hµm kh¸ c.

C¸ c ch­ng tr× nh C ®­î c tæ chø c theo mÉ u:

.....

hµm 1

.....

hµm 2

.....

 

.....

hµm n

 

Bª n ngoµi c¸ c hµm ë c¸ c vÞ trÝ (.....) lµ chç ®Æ t: c¸ c to¸ n tö #include... (dï ng ®Ó khai b¸ o sö dô ng c¸ c hµm chuÈ n), to¸ n tö #define... (dï ng ®Ó ®Þ nh nghÜ a c¸ c h»ng), ®Þ nh nghÜ a kiÓ u d÷ liÖ u b»ng typedef, khai b¸ o c¸ c biÕ n ngoµi, m¶ng ngoµi....

ViÖ c truyÒ n d÷ liÖ u vµ kÕ t qu¶ tõ hµm nµy sang hµm kh¸ c ®­î c thù c hiÖ n theo mé t trong hai c¸ ch:

Sö dô ng ®è i cñ a hµm.

Sö dô ng biÕ n ngoµi, m¶ng ngoµi...

VË y nã i tã m l¹ i cÊ u truc c b¶n cñ a ch­ng tr× nh nh­ sau:

· C¸ c #include

· C¸ c #define

· Khai b¸ o c¸ c ®è i t­î ng d÷ liÖ u ngoµi (biÕ n, m¶ng, cÊ u tró c vv..).

· Khai b¸ o nguyª n mÉ u c¸ c hµm.

· Hµm main().

· §Þ nh nghÜ a c¸ c hµm (hµm main cã thÓ ®Æ t sau hoÆ c xen vµo gi÷ a c¸ c hµm kh¸ c).

 

VÝ dô:

Ch­ng tr× nh tÝ nh x lò y thõ a y rç i in ra m¸ y in kÕ t qu¶:

#include " stdio.h"

#include " math.h"

main()

{

double x, y, z;

printf(" \n Nhap x va y");

scanf(" %lf%lf", & x, & y);

z=pow(x, y); /* hµm lÊ y luü thõ a y luü thõ a x */

fprintf(stdprn, " \n x= %8.2lf \n y=%8.2lf \n z=%8.2lf", x, y, z);

}

4.4. Mé t sè qui t¾ c cÇ n nhí khi viÕ t ch­ng tr× nh:

Qui t¾ c ®Ç u tiª n cÇ n nhí lµ:

Mç i c©u lÖ nh cã thÓ viÕ t trª n mé t hay nhiÒ u dß ng nh­ng ph¶i kÕ t thó c b»ng dÊ u;

Qui t¾ c thø hai lµ:

C ¸ c lê i gi¶i thÝ ch cÇ n ®­î c ®Æ t gi÷ a c¸ c dÊ u /* vµ */ vµ cã thÓ ®­î c viÕ t

Trª n mé t dß ng

Trª n nhiÒ u dß ng

Trª n phÇ n cß n l¹ i cñ a dß ng

Qui t¾ c thø ba lµ:

Trong ch­ng tr× nh, khi ta sö dô ng c¸ c hµm chuÈ n, vÝ dô nh­ printf(), getch(),... mµ c¸ c hµm nµy l¹ i chø a trong file stdio.h trong th­ mô c cñ a C, v× vË y ë ®Ç u ch­ng tr× nh ta ph¶i khai b¸ o sö dô ng;

#include " stdio.h "

Qui t¾ c thø t­ lµ:

Mé t ch­ng tr× nh cã thÓ chØ cã mé t hµm chÝ nh (hµm main()) hoÆ c cã thÓ cã thª m vµi hµm kh¸ c.

 

 







© 2023 :: MyLektsii.ru :: Мои Лекции
Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав.
Копирование текстов разрешено только с указанием индексируемой ссылки на источник.