0% found this document useful (0 votes)
61 views12 pages

Slot-12 - Programming With Menu

This document discusses implementing menus in C programs using functions. It provides an example algorithm for a menu-driven program using a switch statement. It then presents a sample problem - a menu with two options: one to calculate the sum between two integers, the other to print ASCII values between two characters. The document goes on to provide an implementation of this problem in C. It also discusses using pointers as parameters to modify argument values in functions.

Uploaded by

Minh Luân
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
61 views12 pages

Slot-12 - Programming With Menu

This document discusses implementing menus in C programs using functions. It provides an example algorithm for a menu-driven program using a switch statement. It then presents a sample problem - a menu with two options: one to calculate the sum between two integers, the other to print ASCII values between two characters. The document goes on to provide an implementation of this problem in C. It also discusses using pointers as parameters to modify argument values in functions.

Uploaded by

Minh Luân
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
You are on page 1/ 12

Slot 12

Programming With Menu


A review for C-Functions
Pointers are parameters of functions
Why is Menu?

• Generally, a program performs some


operations and at a time only one task is
carried out.  A menu is usually used.

 How are menus implemented in C


program?

Programming with Menus 2


Idea
• Common Algorithm:
int userChoice;
do
{ userChoice= getUserChoice();
switch (userChoice)
{ case 1: function1(); break;
case 2: function2(); break;
case 3: function3(); break;
}
}
while (userChoice >0 && userChoice<maxChoice);

Programming with Menus 3


Problem
• Write a C program using the following menu:
1- Operation 1
2- Operation 2
Others- Quit
• If user chooses 1, user will input 2 integers, the
program will print out sum of integers between them
including them.
• If user chooses 2, user will input 2 characters, the
program will print out the ASCII table between two
inputted characters in ascending order.
• If user chooses other options, the program will
terminate.

Programming with Menus 4


Implementation: menuDemo1.c

Programming with Menus 5


Implementation: menuDemo1.c

Programming with Menus 6


Implementation: menuDemo1.c

Programming with Menus 7


Implementation: menuDemo1.c

Programming with Menus 8


Functions with pointers as parameters

• C uses by-value parameters only  A


function can not modify values of arguments.
• To modify values of arguments, pointers as
parameters of a function are used.

Programming with Menus 9


Functions with pointers as parameters
Review: Pass by-value Parameters 65518 R1=3
65510 R2=8
X 65502 R3=9

stack
65494 r3=9 segment
65486 r2=8
65478 r1=3
65466 t=1.75…

Heap

main
867 code
code
segment
CalcImp
706 code

172 pi=3.14.. Data


170 maxN=100 segment

Programming with Menus 10


Pointers as parameters: Demo

1000 x=9.08
main
992 y=-12.34

p1: 1000
p2: 992 swapDouble
t

swapDouble(&x, &y);

Programming with Menus 11


Pointers as parameters: Demo

1000 x=9.08
main
992 y=-12.34

p1: 9.08
p2: -12.34 swapDouble2
t

Programming with Menus 12

You might also like