1. Trang chủ
  2. » Công Nghệ Thông Tin

Session 11 Introduction to Programming

23 208 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 23
Dung lượng 860,5 KB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Differentiate between Command, Program and SoftwareExplain the beginning of CExplain when and why is C usedDiscuss the C program structureDiscuss algorithmsDraw flowchartsList the symbols used in flowcharts

Trang 1

FPT APTECH COMPUTER EDUCATION HANOI

Advanced Data types

LBC, Session 11

Trang 2

• Explain structures and their use

• Define structures

• Declare structure variables

• Explain how structure elements are accessed

• Explain how structures are initialized

• Explain how assignment statements are used with

structures

• Explain how structures can be passed as arguments to

functions

• Use arrays of structures

• Explain the initialization of structure arrays

• Explain how structure pointers can be passed as

Trang 3

Structures

• A structure consists of a number of data items, which need

not be of the same data type, grouped together

• The structure could hold as many of these items as desired

1

Variable

ILLUSIO

N Array

Name of the book Author Edition

Trang 4

Defining a Structure

• Forms a template for creating structure variables

• The variables in the structure are called structure

elements or structure members

• Example:

struct cat { char bk_name [25];

char author [20];

int edn;

float price;

};

Trang 5

Declaring Structure Variables

• Once the structure has been defined, one or

more variables of that type can be declared

• Two ways of declaring struct variables.

 Right after the close bracket of struct declaration.

 Separated from the struct declaration.

Trang 6

struct cat books1;

struct cat books2;

struct cat {

char bk_name[25]; char author[20];

Trang 7

Accessing Structure Elements

 Structure elements are referenced through the use of the

dot operator (.), also known as the membership operator

Trang 8

• Variables emp1 and emp2 of the type

employee can be declared and

initialized as:

struct employee emp1 = {346, “Abraham”};

struct employee emp2 = {347, “John”};

Trang 9

Assignment Statements Used

with Structures-1

• Possible to assign the values of one structure variable to

another variable of the same type using a simple assignment statement

If var1 and var2 are structure variables of the same type,

the following statement is valid

var2= var1;

Trang 10

Assignment Statements Used

with structures - 2

• In cases where direct assignment is not possible, the

built-in function memcpy() can be used

Trang 11

Structures within Structures

 Possible to have one structure within another structure A structure cannot be nested within itself

struct issue {

char borrower [20];

char dt_of_issue[8];

struct cat books;

}issl;

 The way to access the elements of this structure is similar to the one

applied for normal structures,

issl.borrower

 To access elements of the structure cat, a part of structure issue,

issl.books.author

Trang 12

Passing Structures as Arguments

• Parameters of a function can be structures

• This facility is used to pass groups of logically

related data items together instead of passing them one by one

• The type of the argument should match the type

of the parameter

Trang 13

Array of Structures

• A common use of structures is in arrays of structures

• A structure is first defined, and then an array variable of

that type is declared

• Example:

struct cat books[50];

• To the access the variable named author of the fourth

element of the array books:

books[4].author

Trang 14

Initialization of Structure Arrays

• Structure arrays are initialized by enclosing the list of

values of its elements within a pair of braces

• Example:

struct unit { char ch;

Trang 15

Example of structure arrays

Trang 16

Example of structure arrays (cont.)

/* Accepts data into the structure */

for (i=0; i<50; i++)

printf("\nEnter Principal amount: ");

scanf("%f", & customers[i].amt);

intcal(customers[i]);

}

Trang 17

Example of structure arrays (cont.)

void intcal(struct strucintcal abc)

{

float si, rate = 5.5, yrs = 2.5;

/* Computes the interest */

si = (abc.amt * rate * yrs) / 100;

printf ("\nThe customer name is %s", abc.name); printf("\nThe customer number is %d", abc.numb); printf("\nThe amount is %f", abc.amt);

printf("\nThe interest is %f", si);

return;

}

Trang 18

Pointers to Structures

• Structure pointers are declared by placing an asterisk(*)

in front of the structure variable’s name

The -> operator is used to access the elements of a

structure using a pointer

• Example:

struct cat *ptr_bk;

ptr_bk = &books;

printf(“%s”, ptr_bk->author);

• Structure pointers passed as arguments to functions

enable the functions to modify the structure elements directly

Trang 19

Example of Pointers to Structures

Trang 20

Example of Pointers to Structures (cont.)

printf("\nEnter the number of customers: ");

scanf(“%d”,&n);

ptr_customers=(struct structintcal *) malloc(n

*sizeof(struct strucintcal));

clrscr();

/* Accepts data into the structure */

for (i=0; i<50; i++)

{

printf("\nEnter Customer name: ");

Trang 21

Example of Pointers to Structures (cont.)

printf("\nEnter Customer number: ");

scanf("%d", ptr_customers+i)->numb);

printf("\nEnter Principal amount: ");

scanf("%f", ptr_customers+i)-> amt);

Trang 22

The typedef keyword

• A new data type name can be defined by using the

keyword typedef

• Does not create a new data type, but defines a new

name for an existing type

• Syntax:

typedef type name;

typedef cannot be used with storage classes

Trang 23

typedef float deci;

typedef deci point;

sum= num1 + num2;

printf("\n The summary of num1 and num2 is: %f“, sum); getch();

}

Example of typedef

Ngày đăng: 08/10/2015, 22:23

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

  • Đang cập nhật ...

TÀI LIỆU LIÊN QUAN