SlideShare a Scribd company logo
1 of 27
C Programming- very basic
beginning for people yet to start
coding
SHARED BY
J PRINCY MARIA
108677973082
B.TECH-ECE
SASTRA DEEMED TO BE UNIVERSITY
ACKNOWLEDGEMENT
ACADEMIC WRITING (AW) COURSE OF SWAYAM MOOC IS
THE PRIME MOTIVATION FOR CREATION AND SHARING OF
THIS MATERIAL
I THANK DR. AJAY SEMALTY AND TEAM OF AW FOR THIS
MOTIVATION
• C PROGRAMMING IS ONE OF THE BASIC LANGUAGES TO START
LEARNING PROGRAMMING
• WHY BECAUSE ASSEMBLY LANGUAGE IS THE HUMAN READABLE
FORM OF CODE AS THE NEXT LEVEL TOWARDS BASE WOULD BE
MACHINE READABLE ALONE.
• ONE LEVEL AHEAD OF ASSEMBLY LANGUAGE IS THE C PROGRAMMING.
• C PROGRAMMING IS A PROCEDURAL LANGUAGE
• PROCEDURAL LANGUAGE INDICATES THAT THE FLOW OF CONTROL
FOLLOWS THE PROGRAM FLOW
• IN C PROGRAMMING WE CAN APPROACH ANY PROBLEM STATEMENT
VIA VARIABLES AND FUNCTIONS
• PRIOR TO THAT UNDERSTANDING OF INPUT OUTPUT FUNCTIONS AND
HEADER FILES ARE IMPORTANT
• HEADER FILES ARE INCLUDED IN THE PROGRAM VIA “#include<>”
STATEMENTS.
• THE HEADER FILES END WITH THE EXTENSION “.h”
• EXAMPLE 1: #include<stdio.h>. THIS IS FOR INPUT/OUTPUT FUNCTIONS
• EXAMPLE 2: #include<stdlib.h>. THIS IS FOR FUNCTIONS THAT PERFORM
DYNAMIC MEMORY ALLOCATION
• EXAMPLE 3:#include<math.h>. THIS IS FOR MATH OPERATIONS
• WHAT ARE THESE HEADER FILES?
• HEADER FILES ARE PREEXISTING FILES CREATED ALREADY WHICH
HAVE THE FUNCTION DEFINITIONS FOR THE FREQUENTLY USED OR
OTHER IMPORTANT BASIC FUNCTIONS.
• THOSE FUNCTIONS CAN BE MADE OF USE IN OUR PROGRAM BY
INCLUDING THOSE HEADER FILES
• FOR OBTANING INPUT ,IN C WE USE “scanf” FUNCTION( IT HAS ITS
OWN SYNTAX) BUT WE DONT DEFINE THIS FUNCTION AS WE DEFINE
THE OTHERS. RATHER WE INLCUDE THE HEADER FILES WHICH
ALREADY CONTAINS DEFINITIONS FOR THAT FUNCTION.
• THIS IS HOW HEADER FILES ARE IMPORTANT IN DEVELOPING
EFFICIENT CODES
• WHAT ARE FUNCTION DEFINITIONS?
• WE FIRST GIVE A PROTOTYPE i.e. A FIRST INSTANCE FOR A FUNCTION
TO INDICATE THAT WE ARE GOING TO USE THAT FUNCTION IN OUR
PROGRAM. THIS IS CALLED FUNCTION DECLARATION.
• AFTER THIS SOMEWHERE IN THE PROGRAM FUNCTION
DECLARATION OCCURS. THERE WE WILL GIVE DETAILED EXPANSION
OF OUR FUNCTION- WHAT IT DOES.
• WHAT WE DEFINE INSIDE A FUNCTION?
• WE WILL DEFINE WHAT ARE THE VARIABLES THAT IS USED IN THAT
FUNCTION. IF ANY VARIABLE IS NEEDED TO PERFORM ANY
OPERATION WITHIN THE FUNCTION, IT IS CREATED AND USED
WITHIN THE FUNCTION.
• IF ANY VARIABLE OF THE MAIN FUNCTION IS NEEDED FOR
PERFORMING THE FUNCTION, THEN WE PASS THEM WHEN CALLING
THE FUNCTION FROM THE MAIN FUNCTION
• WHAT IS THE MAIN FUNCTION?
• POSSIBLY A PROGRAM CAN HAVE NUMEROUS FUNCTIONS. THEN
HOW WILL THE PROGRAM GET EXECUTED? IN THE ORDER OF
OCCURRENCE OF FUNCTIONS IN THE PROGRAM? NO
• THEN?
• EXECUTION STARTS FROM A FUNCTION NAMED AS “main”
• THE NAMES OF THE FUNCTIONS CAN BE ANYTHING WE WANT THEM
TO BE. BUT IN ANY PROGRAM, THERE SHOULD EXIST ONLY ONE
FUNCTION THAT IS NAMED AS “main”
• AS THE NAME SUGGESTS IT IS THE IMPORTANT FUNCTION OF THE
PROGRAM BY WHICH WE CAN START TO CALL OTHER FUNCTIONS. IF
THERE IS NO OTHER FUNCTION OTHER THAN THIS, THEN WE SHALL
PERFORM THE INTENDED OPERATION IN THIS FUNCTION ITSELF
• HOW CAN WE CALL A FUNCTION FROM MAIN FUNCTION?
• WE CAN CALL A FUNCTION BY ITS NAME AND PARAMETERS PASSED
IF ANY
• FOR SIMPLE UNDERSTANDING OF THE CONCEPT THE EXAMPLES ARE
GIVEN IN UPCOMING SLIDES SEPERATELY SO THAT ONLY IF YOU ARE
INTERESTED YOU WILL BE DRIVEN TO WATCH THOSE SLIDES TO
UNDERSTAND BETTER
• PREVIOUS SECTION OF OUR DISCUSSION INCLUDED OPERATING ON
VARIABLES THROUGH FUNCTIONS- EITHER THE MAIN FUNCTION OR
OTHER FUNCTIONS CALLED VIA MAIN FUNCTION. LET US KNOW
THAT ANY OTHER FUNCTION CAN ALSO BE CALLED BY THE OTHER
FUNCTION. BUT NO FUNCTION CAN CALL THE MAIN FUNCTION
• WHAT ARE THOSE VARIABLES?
• AS THE NAME SUGGESTS, THOSE COMPONENTS VARY ACCORDING
TO OUR NEED. IT CAN BE AN INTERGER(LIKE '1'), A FLOATING POINT
NUMBER(LIKE '1.23'), A CHARACTER(LIKE 'A') OR A BIGGER/SMALLER
VERSION OF THESE, WHICH CAN BE SUPPORTED WITH STATEMENTS
LIKE “long”/”short” CORRESPONDINGLY
• IF YOU WISH TO KNOW HOW TO USE THEM IN YOUR PROGRAM, IT IS
IMPORTANT TO LEARN THEIR SPECIFICATIONS VIA OTHER SOURCES.
• AS THIS IS A GENERAL INTRODUCTION OF C PROGRAM FOR
BEGINNERS WE WILL REVOLVE AROUND INTRODUCING THE BASIC
CONCEPTS. SO NOTE DOWN AS REMINDER THAT YOU WANT TO HAVE
A LOOK AT “QUALIFIERS AND MODIFIERS OF C”
• FOR OUTPUTTING TO THE SCREEN, “print” FUNCTION IS USED
• AS WE KNOW FOR INPUTTING VIA KEYBOARD “scanf” FUNCTION IS
USED
• SAMPLE PROGRAMS WHICH EMPLOYALL THE CONCEPTS DEALT PREVIOUSLY- TO ADD NUMBERS
1. #include<stdio.h>
2. int add(int,int); //function declaration
3. int main()
4. {
5. int a,b,c; //integer variables declaration
6. printf(“n Enter the numbers”);
7. scanf(“%d %d”,&a,&b);
8. c=add(a,b);
9. printf(“n%d”,c);
10. return 0;
11. }
12. int add(int x, int y)
13. {
14. return (a+b);
15. }
• ONE CAN WONDER HOW THE PROGRAM WORKS AS WE HAVEN'T SEEN
WHAT IS THE SYNTAX FOR EACH COMMAND
• LET US NOW DISCUSS HOW EACH LINE IN THE ABOVE CODE WORKS
• LINE 1: HEADER FILE “stdio.h” IS INCLUDED AS WE ARE GOING TO USE
FUNCTIONS “printf” & “scanf”
• LINE 2: A FUNCTION NAMED ADD IS DECLARED. SINCE WE DECIDE TO
ADD TWO NUMBERS OF TYPE INTEGER, WE DECLARE THE POSSIBILITY
• TWO INTEGERS TO BE PASSED TO THE FUNCTION. THIS IS DONE BY
THE PARAMETERS PART. i.e. WITHIN BRACKETS WE SPECIFIED THEIR
TYPES. IF THERE ARE NO PARAMETERS PASSED THE BRACKETS CAN
BE EMPTY LIKE THIS- ( )
• LINE 3: THE MAIN FUNCTION IS DEFINED. NO SPECIFIC DECLARATION
FOR THIS FUNCTION. BUT ALL OTHER FUNCTIONS SHOULD EITHER
HAVE THEIR DECLARATION OR DIRECTLY THE DEFINITION ITSELF,
BEFORE MAIN FUNCTION IS DEFINED
• LINE 4: EVERY FUNCTION DEFINITION SHOULD START WITH OPEN
CURLY BRACES.
• LINE 5: THE VARIABLES WHICH ARE NEEDED TO PERFORM OUR TASK
ARE DECLARED. IF WE GIVE VALUES FOR THEM IN PROGRAM ITSELF-
WHICH IS CALLED STATIC INITIALIZATION, IT CAN BE GIVEN AS
int a=4,b=5,c;
• LINE 6: THIS IS A STATEMENT TO GET PRINTED IN THE MONITOR, TO
INFORM THE USER TO ENTER THE INPUT VALUES
• USE OF “n” IN THAT STATEMENT WILL LEAD YOU TO A NEW LINE
INSTEAD OF CONTINUING IN SCREEN FROM THE LAST USED LINE'S
REMAINING SPACE
• LINE 7: TWO INPUTS ARE OBTAINED FROM THE KEYBOARD AND
STORED IN VARIABLES a & b. FOR THAT “%d” IS THE SYNTAX FOR
OBTAINING ONE INTEGER VALUE. AS WE HAVE LEFT A SINGLE SPACE
BETWEEN 2 “%d”S INPUT NUMBERS SHOULD ALSO BE SPACED.
• LINE 8: FUNCTION IS CALLED BY PASSING THE ARGUMENTS
(ARGUMENTS ARE THE PARAMETERS). BUT IT CALLED IN THE LEFT
SIDE BECAUSE THE FUNCTION RETURNS A VALUE.
• RETURNING VALUE'S DATA TYPE SHOULD BE SPECIFIED BEFORE
FUNCTION NAME THAT IS WHY WE HAVE INCLUDED ”int” BEFORE
FUNCTION NAME IN DECLARATION AND IN DEFINITION.
• LEFT HAND VARIABLE SHOULD ALSO BE OF SAME DATA TYPE
• LINE 9: WE ARE PRINTING THE ADDED VALUE ONTO THE SCREEN IN A
NEW LINE
• LINE 10: THIS IS RETURN VALUE OF THE MAIN FUNCTION. OTHER
FUNCTIONS RETURN VALUE TO THE COMMAND WHICH CALLED
THEM. BUT TO WHERE DOES THE MAIN FUNCTION RETURN VALUE?
• THE OPERATING SYSTEM IS WHAT THAT CALLED THE MAIN
FUNCTION FOR EXECUTING PROGRAM. SO IT RETURNS VALUE TO OS
• THE RETURN VALUE OF 0 (return 0) INDICATES SUCCESSFUL
COMPLETION OF THE PROGRAM. THAT IS WHY WE INCLUDED THAT
IN THE END OF THE PROGRAM.
• LINE 11: THE FUNCTION ENDS BY THE CLOSING CURLY BRACES
• LINE 12: THIS IS THE HEADER LINE OF FUNCTION DEFINITION. HERE
SOME NAME FOR PARAMETER SHOULD BE GIVEN ALONG WITH TYPE.
IT CAN BE DIFFERENT FROM THE ACTUAL NAME OF MAIN FUNCTION
OR THE SAME AS THAT
• BECAUSE THOUGH THE NAME WOULD BE SAME, THE SAME NAMED
VARIABLE LOCAL TO THE FUNCTION WOULD BE TREATED LIKE
SOME OTHER VARIABLE ONLY. BECAUSE IT BELONGS TO THE
FUNCTION DIRECTLYAND HAS IMMEDIATE NOTICE BY THE
FUNCTION
• LINE 13 & LINE 15: OPENING AND CLOSING BRACES FOR THE
FUNCTION
• LINE 14: ANY FUNCTION THAT HAS A RETURN TYPE SHOULD RETURN
ANY VALUE. OTHERWISE, IT IS AN ERROR. THIS FUNCTION RETURNS
THE ADDED RESULT TO THE MAIN FUNCTION WHICH CALLED IT.
• THERE MAY BE MANY IFs ,WHYs AND HOWs IN YOUR MIND WHEN
YOU WANT TO EXTEND THE CAPABILITY OF THIS SIMPLE CODE WE
DISCUSSED. THAT IS THE MOTIVE OF THIS MATERIAL- TO INTRODUCE
THE PASSION TO LEARN CODING. PROGRAMMING IS A VAST AREA
WITH LOTS OF INTERESTING FEATURES. HAVE A HAPPY CODING!
FEEDBACK TO AW COURSE OF SWAYAM MOOC
• THIS ACADEMIC WRITING (AW) COURSE ELIMINATED THE FEAR
REGARDING OUR POTENTIAL TO WRITE IN PROFESSIONAL STYLE
• THIS HELPS RESEARCHERS AND SCHOLARS TO FRAME THEIR WRITING OF
PAPERS AND THESIS IN AN EFFICIENT MANNER
• THIS COURSE IS ENJOYABLE AS IT PROGRESSES. BECAUSE IT INCLUDES
LEARNER INVOLVEMENT THROUGH LEARNING BY DOING AND SUBJECTIVE
ASSIGNMENTS.
• PERSONALLY I FEEL PRIVILEDGED TO HAVE ATTENDED THE COURSE.

More Related Content

What's hot

Railway Orientated Programming In C#
Railway Orientated Programming In C#Railway Orientated Programming In C#
Railway Orientated Programming In C#Tama000
 
RxJS & Angular Reactive Forms @ Codemotion 2019
RxJS & Angular Reactive Forms @ Codemotion 2019RxJS & Angular Reactive Forms @ Codemotion 2019
RxJS & Angular Reactive Forms @ Codemotion 2019Fabio Biondi
 
Inline function in C++
Inline function in C++Inline function in C++
Inline function in C++Learn By Watch
 
Functional Browser Automation Testing for Newbs
Functional Browser Automation Testing for NewbsFunctional Browser Automation Testing for Newbs
Functional Browser Automation Testing for NewbsBryan Arendt
 
[Practical] Functional Programming in Rails
[Practical] Functional Programming in Rails[Practical] Functional Programming in Rails
[Practical] Functional Programming in RailsGilbert B Garza
 
Basics of Functional Programming
Basics of Functional ProgrammingBasics of Functional Programming
Basics of Functional ProgrammingSartaj Singh
 
Inline Functions and Default arguments
Inline Functions and Default argumentsInline Functions and Default arguments
Inline Functions and Default argumentsNikhil Pandit
 
Pure functions and usage in Angular
Pure functions and usage in AngularPure functions and usage in Angular
Pure functions and usage in AngularMA Jiangfan
 
Functions and tasks in verilog
Functions and tasks in verilogFunctions and tasks in verilog
Functions and tasks in verilogNallapati Anindra
 
Functions in c++
Functions in c++Functions in c++
Functions in c++Maaz Hasan
 
Inline function(oops)
Inline function(oops)Inline function(oops)
Inline function(oops)Jay Patel
 

What's hot (14)

Railway Orientated Programming In C#
Railway Orientated Programming In C#Railway Orientated Programming In C#
Railway Orientated Programming In C#
 
RxJS & Angular Reactive Forms @ Codemotion 2019
RxJS & Angular Reactive Forms @ Codemotion 2019RxJS & Angular Reactive Forms @ Codemotion 2019
RxJS & Angular Reactive Forms @ Codemotion 2019
 
Inline function in C++
Inline function in C++Inline function in C++
Inline function in C++
 
Functional Browser Automation Testing for Newbs
Functional Browser Automation Testing for NewbsFunctional Browser Automation Testing for Newbs
Functional Browser Automation Testing for Newbs
 
[Practical] Functional Programming in Rails
[Practical] Functional Programming in Rails[Practical] Functional Programming in Rails
[Practical] Functional Programming in Rails
 
Operators in java By cheena
Operators in java By cheenaOperators in java By cheena
Operators in java By cheena
 
Basics of Functional Programming
Basics of Functional ProgrammingBasics of Functional Programming
Basics of Functional Programming
 
PHP Basics
PHP BasicsPHP Basics
PHP Basics
 
Inline Functions and Default arguments
Inline Functions and Default argumentsInline Functions and Default arguments
Inline Functions and Default arguments
 
Scala functions
Scala functionsScala functions
Scala functions
 
Pure functions and usage in Angular
Pure functions and usage in AngularPure functions and usage in Angular
Pure functions and usage in Angular
 
Functions and tasks in verilog
Functions and tasks in verilogFunctions and tasks in verilog
Functions and tasks in verilog
 
Functions in c++
Functions in c++Functions in c++
Functions in c++
 
Inline function(oops)
Inline function(oops)Inline function(oops)
Inline function(oops)
 

Similar to C programming

358 33 powerpoint-slides_2-functions_chapter-2
358 33 powerpoint-slides_2-functions_chapter-2358 33 powerpoint-slides_2-functions_chapter-2
358 33 powerpoint-slides_2-functions_chapter-2sumitbardhan
 
CHAPTER THREE FUNCTION.pptx
CHAPTER THREE FUNCTION.pptxCHAPTER THREE FUNCTION.pptx
CHAPTER THREE FUNCTION.pptxGebruGetachew2
 
Functions_new.pptx
Functions_new.pptxFunctions_new.pptx
Functions_new.pptxYagna15
 
user-definedfunctions-converted.pptx
user-definedfunctions-converted.pptxuser-definedfunctions-converted.pptx
user-definedfunctions-converted.pptxZaibunnisaMalik1
 
Chapter One Function.pptx
Chapter One Function.pptxChapter One Function.pptx
Chapter One Function.pptxmiki304759
 
User defined functions in C programmig
User defined functions in C programmigUser defined functions in C programmig
User defined functions in C programmigAppili Vamsi Krishna
 
User_Defined_Functions_ppt_slideshare.
User_Defined_Functions_ppt_slideshare.User_Defined_Functions_ppt_slideshare.
User_Defined_Functions_ppt_slideshare.NabeelaNousheen
 
FUNCTIONS IN R PROGRAMMING.pptx
FUNCTIONS IN R PROGRAMMING.pptxFUNCTIONS IN R PROGRAMMING.pptx
FUNCTIONS IN R PROGRAMMING.pptxSafnaSaff1
 
662213141-Tuxdoc-com-Programming-in-c-Reema-Thareja.pdf
662213141-Tuxdoc-com-Programming-in-c-Reema-Thareja.pdf662213141-Tuxdoc-com-Programming-in-c-Reema-Thareja.pdf
662213141-Tuxdoc-com-Programming-in-c-Reema-Thareja.pdfManiMala75
 
Functions and modular programming.pptx
Functions and modular programming.pptxFunctions and modular programming.pptx
Functions and modular programming.pptxzueZ3
 
Functions in c++, presentation, short and sweet presentation, and details of ...
Functions in c++, presentation, short and sweet presentation, and details of ...Functions in c++, presentation, short and sweet presentation, and details of ...
Functions in c++, presentation, short and sweet presentation, and details of ...Sar
 
powerpoint 2-7.pptx
powerpoint 2-7.pptxpowerpoint 2-7.pptx
powerpoint 2-7.pptxJuanPicasso7
 
Chapter Introduction to Modular Programming.ppt
Chapter Introduction to Modular Programming.pptChapter Introduction to Modular Programming.ppt
Chapter Introduction to Modular Programming.pptAmanuelZewdie4
 

Similar to C programming (20)

Function in C Programming
Function in C ProgrammingFunction in C Programming
Function in C Programming
 
358 33 powerpoint-slides_2-functions_chapter-2
358 33 powerpoint-slides_2-functions_chapter-2358 33 powerpoint-slides_2-functions_chapter-2
358 33 powerpoint-slides_2-functions_chapter-2
 
Functions.pptx
Functions.pptxFunctions.pptx
Functions.pptx
 
Presentation 2.pptx
Presentation 2.pptxPresentation 2.pptx
Presentation 2.pptx
 
CHAPTER THREE FUNCTION.pptx
CHAPTER THREE FUNCTION.pptxCHAPTER THREE FUNCTION.pptx
CHAPTER THREE FUNCTION.pptx
 
Functions_new.pptx
Functions_new.pptxFunctions_new.pptx
Functions_new.pptx
 
user-definedfunctions-converted.pptx
user-definedfunctions-converted.pptxuser-definedfunctions-converted.pptx
user-definedfunctions-converted.pptx
 
Chapter One Function.pptx
Chapter One Function.pptxChapter One Function.pptx
Chapter One Function.pptx
 
Function C programming
Function C programmingFunction C programming
Function C programming
 
Function
Function Function
Function
 
UNIT 3 python.pptx
UNIT 3 python.pptxUNIT 3 python.pptx
UNIT 3 python.pptx
 
User defined functions in C programmig
User defined functions in C programmigUser defined functions in C programmig
User defined functions in C programmig
 
User_Defined_Functions_ppt_slideshare.
User_Defined_Functions_ppt_slideshare.User_Defined_Functions_ppt_slideshare.
User_Defined_Functions_ppt_slideshare.
 
FUNCTIONS IN R PROGRAMMING.pptx
FUNCTIONS IN R PROGRAMMING.pptxFUNCTIONS IN R PROGRAMMING.pptx
FUNCTIONS IN R PROGRAMMING.pptx
 
662213141-Tuxdoc-com-Programming-in-c-Reema-Thareja.pdf
662213141-Tuxdoc-com-Programming-in-c-Reema-Thareja.pdf662213141-Tuxdoc-com-Programming-in-c-Reema-Thareja.pdf
662213141-Tuxdoc-com-Programming-in-c-Reema-Thareja.pdf
 
Functions and modular programming.pptx
Functions and modular programming.pptxFunctions and modular programming.pptx
Functions and modular programming.pptx
 
Functions in c++, presentation, short and sweet presentation, and details of ...
Functions in c++, presentation, short and sweet presentation, and details of ...Functions in c++, presentation, short and sweet presentation, and details of ...
Functions in c++, presentation, short and sweet presentation, and details of ...
 
powerpoint 2-7.pptx
powerpoint 2-7.pptxpowerpoint 2-7.pptx
powerpoint 2-7.pptx
 
Chapter Introduction to Modular Programming.ppt
Chapter Introduction to Modular Programming.pptChapter Introduction to Modular Programming.ppt
Chapter Introduction to Modular Programming.ppt
 
Ch-5.pdf
Ch-5.pdfCh-5.pdf
Ch-5.pdf
 

Recently uploaded

SPLICE Working Group: Reusable Code Examples
SPLICE Working Group:Reusable Code ExamplesSPLICE Working Group:Reusable Code Examples
SPLICE Working Group: Reusable Code ExamplesPeter Brusilovsky
 
male presentation...pdf.................
male presentation...pdf.................male presentation...pdf.................
male presentation...pdf.................MirzaAbrarBaig5
 
Andreas Schleicher presents at the launch of What does child empowerment mean...
Andreas Schleicher presents at the launch of What does child empowerment mean...Andreas Schleicher presents at the launch of What does child empowerment mean...
Andreas Schleicher presents at the launch of What does child empowerment mean...EduSkills OECD
 
Personalisation of Education by AI and Big Data - Lourdes Guàrdia
Personalisation of Education by AI and Big Data - Lourdes GuàrdiaPersonalisation of Education by AI and Big Data - Lourdes Guàrdia
Personalisation of Education by AI and Big Data - Lourdes GuàrdiaEADTU
 
Graduate Outcomes Presentation Slides - English (v3).pptx
Graduate Outcomes Presentation Slides - English (v3).pptxGraduate Outcomes Presentation Slides - English (v3).pptx
Graduate Outcomes Presentation Slides - English (v3).pptxneillewis46
 
TỔNG HỢP HƠN 100 ĐỀ THI THỬ TỐT NGHIỆP THPT TOÁN 2024 - TỪ CÁC TRƯỜNG, TRƯỜNG...
TỔNG HỢP HƠN 100 ĐỀ THI THỬ TỐT NGHIỆP THPT TOÁN 2024 - TỪ CÁC TRƯỜNG, TRƯỜNG...TỔNG HỢP HƠN 100 ĐỀ THI THỬ TỐT NGHIỆP THPT TOÁN 2024 - TỪ CÁC TRƯỜNG, TRƯỜNG...
TỔNG HỢP HƠN 100 ĐỀ THI THỬ TỐT NGHIỆP THPT TOÁN 2024 - TỪ CÁC TRƯỜNG, TRƯỜNG...Nguyen Thanh Tu Collection
 
Spring gala 2024 photo slideshow - Celebrating School-Community Partnerships
Spring gala 2024 photo slideshow - Celebrating School-Community PartnershipsSpring gala 2024 photo slideshow - Celebrating School-Community Partnerships
Spring gala 2024 photo slideshow - Celebrating School-Community Partnershipsexpandedwebsite
 
OSCM Unit 2_Operations Processes & Systems
OSCM Unit 2_Operations Processes & SystemsOSCM Unit 2_Operations Processes & Systems
OSCM Unit 2_Operations Processes & SystemsSandeep D Chaudhary
 
DEMONSTRATION LESSON IN ENGLISH 4 MATATAG CURRICULUM
DEMONSTRATION LESSON IN ENGLISH 4 MATATAG CURRICULUMDEMONSTRATION LESSON IN ENGLISH 4 MATATAG CURRICULUM
DEMONSTRATION LESSON IN ENGLISH 4 MATATAG CURRICULUMELOISARIVERA8
 
Major project report on Tata Motors and its marketing strategies
Major project report on Tata Motors and its marketing strategiesMajor project report on Tata Motors and its marketing strategies
Major project report on Tata Motors and its marketing strategiesAmanpreetKaur157993
 
diagnosting testing bsc 2nd sem.pptx....
diagnosting testing bsc 2nd sem.pptx....diagnosting testing bsc 2nd sem.pptx....
diagnosting testing bsc 2nd sem.pptx....Ritu480198
 
SURVEY I created for uni project research
SURVEY I created for uni project researchSURVEY I created for uni project research
SURVEY I created for uni project researchCaitlinCummins3
 
ĐỀ THAM KHẢO KÌ THI TUYỂN SINH VÀO LỚP 10 MÔN TIẾNG ANH FORM 50 CÂU TRẮC NGHI...
ĐỀ THAM KHẢO KÌ THI TUYỂN SINH VÀO LỚP 10 MÔN TIẾNG ANH FORM 50 CÂU TRẮC NGHI...ĐỀ THAM KHẢO KÌ THI TUYỂN SINH VÀO LỚP 10 MÔN TIẾNG ANH FORM 50 CÂU TRẮC NGHI...
ĐỀ THAM KHẢO KÌ THI TUYỂN SINH VÀO LỚP 10 MÔN TIẾNG ANH FORM 50 CÂU TRẮC NGHI...Nguyen Thanh Tu Collection
 
Analyzing and resolving a communication crisis in Dhaka textiles LTD.pptx
Analyzing and resolving a communication crisis in Dhaka textiles LTD.pptxAnalyzing and resolving a communication crisis in Dhaka textiles LTD.pptx
Analyzing and resolving a communication crisis in Dhaka textiles LTD.pptxLimon Prince
 
會考英文會考英文會考英文會考英文會考英文會考英文會考英文會考英文會考英文會考英文會考英文
會考英文會考英文會考英文會考英文會考英文會考英文會考英文會考英文會考英文會考英文會考英文會考英文會考英文會考英文會考英文會考英文會考英文會考英文會考英文會考英文會考英文會考英文
會考英文會考英文會考英文會考英文會考英文會考英文會考英文會考英文會考英文會考英文會考英文中 央社
 
AIM of Education-Teachers Training-2024.ppt
AIM of Education-Teachers Training-2024.pptAIM of Education-Teachers Training-2024.ppt
AIM of Education-Teachers Training-2024.pptNishitharanjan Rout
 

Recently uploaded (20)

SPLICE Working Group: Reusable Code Examples
SPLICE Working Group:Reusable Code ExamplesSPLICE Working Group:Reusable Code Examples
SPLICE Working Group: Reusable Code Examples
 
ESSENTIAL of (CS/IT/IS) class 07 (Networks)
ESSENTIAL of (CS/IT/IS) class 07 (Networks)ESSENTIAL of (CS/IT/IS) class 07 (Networks)
ESSENTIAL of (CS/IT/IS) class 07 (Networks)
 
male presentation...pdf.................
male presentation...pdf.................male presentation...pdf.................
male presentation...pdf.................
 
OS-operating systems- ch05 (CPU Scheduling) ...
OS-operating systems- ch05 (CPU Scheduling) ...OS-operating systems- ch05 (CPU Scheduling) ...
OS-operating systems- ch05 (CPU Scheduling) ...
 
Andreas Schleicher presents at the launch of What does child empowerment mean...
Andreas Schleicher presents at the launch of What does child empowerment mean...Andreas Schleicher presents at the launch of What does child empowerment mean...
Andreas Schleicher presents at the launch of What does child empowerment mean...
 
Personalisation of Education by AI and Big Data - Lourdes Guàrdia
Personalisation of Education by AI and Big Data - Lourdes GuàrdiaPersonalisation of Education by AI and Big Data - Lourdes Guàrdia
Personalisation of Education by AI and Big Data - Lourdes Guàrdia
 
Graduate Outcomes Presentation Slides - English (v3).pptx
Graduate Outcomes Presentation Slides - English (v3).pptxGraduate Outcomes Presentation Slides - English (v3).pptx
Graduate Outcomes Presentation Slides - English (v3).pptx
 
TỔNG HỢP HƠN 100 ĐỀ THI THỬ TỐT NGHIỆP THPT TOÁN 2024 - TỪ CÁC TRƯỜNG, TRƯỜNG...
TỔNG HỢP HƠN 100 ĐỀ THI THỬ TỐT NGHIỆP THPT TOÁN 2024 - TỪ CÁC TRƯỜNG, TRƯỜNG...TỔNG HỢP HƠN 100 ĐỀ THI THỬ TỐT NGHIỆP THPT TOÁN 2024 - TỪ CÁC TRƯỜNG, TRƯỜNG...
TỔNG HỢP HƠN 100 ĐỀ THI THỬ TỐT NGHIỆP THPT TOÁN 2024 - TỪ CÁC TRƯỜNG, TRƯỜNG...
 
Spring gala 2024 photo slideshow - Celebrating School-Community Partnerships
Spring gala 2024 photo slideshow - Celebrating School-Community PartnershipsSpring gala 2024 photo slideshow - Celebrating School-Community Partnerships
Spring gala 2024 photo slideshow - Celebrating School-Community Partnerships
 
OSCM Unit 2_Operations Processes & Systems
OSCM Unit 2_Operations Processes & SystemsOSCM Unit 2_Operations Processes & Systems
OSCM Unit 2_Operations Processes & Systems
 
Supporting Newcomer Multilingual Learners
Supporting Newcomer  Multilingual LearnersSupporting Newcomer  Multilingual Learners
Supporting Newcomer Multilingual Learners
 
Including Mental Health Support in Project Delivery, 14 May.pdf
Including Mental Health Support in Project Delivery, 14 May.pdfIncluding Mental Health Support in Project Delivery, 14 May.pdf
Including Mental Health Support in Project Delivery, 14 May.pdf
 
DEMONSTRATION LESSON IN ENGLISH 4 MATATAG CURRICULUM
DEMONSTRATION LESSON IN ENGLISH 4 MATATAG CURRICULUMDEMONSTRATION LESSON IN ENGLISH 4 MATATAG CURRICULUM
DEMONSTRATION LESSON IN ENGLISH 4 MATATAG CURRICULUM
 
Major project report on Tata Motors and its marketing strategies
Major project report on Tata Motors and its marketing strategiesMajor project report on Tata Motors and its marketing strategies
Major project report on Tata Motors and its marketing strategies
 
diagnosting testing bsc 2nd sem.pptx....
diagnosting testing bsc 2nd sem.pptx....diagnosting testing bsc 2nd sem.pptx....
diagnosting testing bsc 2nd sem.pptx....
 
SURVEY I created for uni project research
SURVEY I created for uni project researchSURVEY I created for uni project research
SURVEY I created for uni project research
 
ĐỀ THAM KHẢO KÌ THI TUYỂN SINH VÀO LỚP 10 MÔN TIẾNG ANH FORM 50 CÂU TRẮC NGHI...
ĐỀ THAM KHẢO KÌ THI TUYỂN SINH VÀO LỚP 10 MÔN TIẾNG ANH FORM 50 CÂU TRẮC NGHI...ĐỀ THAM KHẢO KÌ THI TUYỂN SINH VÀO LỚP 10 MÔN TIẾNG ANH FORM 50 CÂU TRẮC NGHI...
ĐỀ THAM KHẢO KÌ THI TUYỂN SINH VÀO LỚP 10 MÔN TIẾNG ANH FORM 50 CÂU TRẮC NGHI...
 
Analyzing and resolving a communication crisis in Dhaka textiles LTD.pptx
Analyzing and resolving a communication crisis in Dhaka textiles LTD.pptxAnalyzing and resolving a communication crisis in Dhaka textiles LTD.pptx
Analyzing and resolving a communication crisis in Dhaka textiles LTD.pptx
 
會考英文會考英文會考英文會考英文會考英文會考英文會考英文會考英文會考英文會考英文會考英文
會考英文會考英文會考英文會考英文會考英文會考英文會考英文會考英文會考英文會考英文會考英文會考英文會考英文會考英文會考英文會考英文會考英文會考英文會考英文會考英文會考英文會考英文
會考英文會考英文會考英文會考英文會考英文會考英文會考英文會考英文會考英文會考英文會考英文
 
AIM of Education-Teachers Training-2024.ppt
AIM of Education-Teachers Training-2024.pptAIM of Education-Teachers Training-2024.ppt
AIM of Education-Teachers Training-2024.ppt
 

C programming

  • 1. C Programming- very basic beginning for people yet to start coding SHARED BY J PRINCY MARIA 108677973082 B.TECH-ECE SASTRA DEEMED TO BE UNIVERSITY
  • 2. ACKNOWLEDGEMENT ACADEMIC WRITING (AW) COURSE OF SWAYAM MOOC IS THE PRIME MOTIVATION FOR CREATION AND SHARING OF THIS MATERIAL I THANK DR. AJAY SEMALTY AND TEAM OF AW FOR THIS MOTIVATION
  • 3. • C PROGRAMMING IS ONE OF THE BASIC LANGUAGES TO START LEARNING PROGRAMMING • WHY BECAUSE ASSEMBLY LANGUAGE IS THE HUMAN READABLE FORM OF CODE AS THE NEXT LEVEL TOWARDS BASE WOULD BE MACHINE READABLE ALONE.
  • 4. • ONE LEVEL AHEAD OF ASSEMBLY LANGUAGE IS THE C PROGRAMMING. • C PROGRAMMING IS A PROCEDURAL LANGUAGE • PROCEDURAL LANGUAGE INDICATES THAT THE FLOW OF CONTROL FOLLOWS THE PROGRAM FLOW
  • 5. • IN C PROGRAMMING WE CAN APPROACH ANY PROBLEM STATEMENT VIA VARIABLES AND FUNCTIONS • PRIOR TO THAT UNDERSTANDING OF INPUT OUTPUT FUNCTIONS AND HEADER FILES ARE IMPORTANT • HEADER FILES ARE INCLUDED IN THE PROGRAM VIA “#include<>” STATEMENTS.
  • 6. • THE HEADER FILES END WITH THE EXTENSION “.h” • EXAMPLE 1: #include<stdio.h>. THIS IS FOR INPUT/OUTPUT FUNCTIONS • EXAMPLE 2: #include<stdlib.h>. THIS IS FOR FUNCTIONS THAT PERFORM DYNAMIC MEMORY ALLOCATION • EXAMPLE 3:#include<math.h>. THIS IS FOR MATH OPERATIONS
  • 7. • WHAT ARE THESE HEADER FILES? • HEADER FILES ARE PREEXISTING FILES CREATED ALREADY WHICH HAVE THE FUNCTION DEFINITIONS FOR THE FREQUENTLY USED OR OTHER IMPORTANT BASIC FUNCTIONS. • THOSE FUNCTIONS CAN BE MADE OF USE IN OUR PROGRAM BY INCLUDING THOSE HEADER FILES
  • 8. • FOR OBTANING INPUT ,IN C WE USE “scanf” FUNCTION( IT HAS ITS OWN SYNTAX) BUT WE DONT DEFINE THIS FUNCTION AS WE DEFINE THE OTHERS. RATHER WE INLCUDE THE HEADER FILES WHICH ALREADY CONTAINS DEFINITIONS FOR THAT FUNCTION. • THIS IS HOW HEADER FILES ARE IMPORTANT IN DEVELOPING EFFICIENT CODES
  • 9. • WHAT ARE FUNCTION DEFINITIONS? • WE FIRST GIVE A PROTOTYPE i.e. A FIRST INSTANCE FOR A FUNCTION TO INDICATE THAT WE ARE GOING TO USE THAT FUNCTION IN OUR PROGRAM. THIS IS CALLED FUNCTION DECLARATION. • AFTER THIS SOMEWHERE IN THE PROGRAM FUNCTION DECLARATION OCCURS. THERE WE WILL GIVE DETAILED EXPANSION OF OUR FUNCTION- WHAT IT DOES.
  • 10. • WHAT WE DEFINE INSIDE A FUNCTION? • WE WILL DEFINE WHAT ARE THE VARIABLES THAT IS USED IN THAT FUNCTION. IF ANY VARIABLE IS NEEDED TO PERFORM ANY OPERATION WITHIN THE FUNCTION, IT IS CREATED AND USED WITHIN THE FUNCTION. • IF ANY VARIABLE OF THE MAIN FUNCTION IS NEEDED FOR PERFORMING THE FUNCTION, THEN WE PASS THEM WHEN CALLING THE FUNCTION FROM THE MAIN FUNCTION
  • 11. • WHAT IS THE MAIN FUNCTION? • POSSIBLY A PROGRAM CAN HAVE NUMEROUS FUNCTIONS. THEN HOW WILL THE PROGRAM GET EXECUTED? IN THE ORDER OF OCCURRENCE OF FUNCTIONS IN THE PROGRAM? NO • THEN? • EXECUTION STARTS FROM A FUNCTION NAMED AS “main”
  • 12. • THE NAMES OF THE FUNCTIONS CAN BE ANYTHING WE WANT THEM TO BE. BUT IN ANY PROGRAM, THERE SHOULD EXIST ONLY ONE FUNCTION THAT IS NAMED AS “main” • AS THE NAME SUGGESTS IT IS THE IMPORTANT FUNCTION OF THE PROGRAM BY WHICH WE CAN START TO CALL OTHER FUNCTIONS. IF THERE IS NO OTHER FUNCTION OTHER THAN THIS, THEN WE SHALL PERFORM THE INTENDED OPERATION IN THIS FUNCTION ITSELF
  • 13. • HOW CAN WE CALL A FUNCTION FROM MAIN FUNCTION? • WE CAN CALL A FUNCTION BY ITS NAME AND PARAMETERS PASSED IF ANY • FOR SIMPLE UNDERSTANDING OF THE CONCEPT THE EXAMPLES ARE GIVEN IN UPCOMING SLIDES SEPERATELY SO THAT ONLY IF YOU ARE INTERESTED YOU WILL BE DRIVEN TO WATCH THOSE SLIDES TO UNDERSTAND BETTER
  • 14. • PREVIOUS SECTION OF OUR DISCUSSION INCLUDED OPERATING ON VARIABLES THROUGH FUNCTIONS- EITHER THE MAIN FUNCTION OR OTHER FUNCTIONS CALLED VIA MAIN FUNCTION. LET US KNOW THAT ANY OTHER FUNCTION CAN ALSO BE CALLED BY THE OTHER FUNCTION. BUT NO FUNCTION CAN CALL THE MAIN FUNCTION • WHAT ARE THOSE VARIABLES?
  • 15. • AS THE NAME SUGGESTS, THOSE COMPONENTS VARY ACCORDING TO OUR NEED. IT CAN BE AN INTERGER(LIKE '1'), A FLOATING POINT NUMBER(LIKE '1.23'), A CHARACTER(LIKE 'A') OR A BIGGER/SMALLER VERSION OF THESE, WHICH CAN BE SUPPORTED WITH STATEMENTS LIKE “long”/”short” CORRESPONDINGLY • IF YOU WISH TO KNOW HOW TO USE THEM IN YOUR PROGRAM, IT IS IMPORTANT TO LEARN THEIR SPECIFICATIONS VIA OTHER SOURCES.
  • 16. • AS THIS IS A GENERAL INTRODUCTION OF C PROGRAM FOR BEGINNERS WE WILL REVOLVE AROUND INTRODUCING THE BASIC CONCEPTS. SO NOTE DOWN AS REMINDER THAT YOU WANT TO HAVE A LOOK AT “QUALIFIERS AND MODIFIERS OF C” • FOR OUTPUTTING TO THE SCREEN, “print” FUNCTION IS USED • AS WE KNOW FOR INPUTTING VIA KEYBOARD “scanf” FUNCTION IS USED
  • 17. • SAMPLE PROGRAMS WHICH EMPLOYALL THE CONCEPTS DEALT PREVIOUSLY- TO ADD NUMBERS 1. #include<stdio.h> 2. int add(int,int); //function declaration 3. int main() 4. { 5. int a,b,c; //integer variables declaration 6. printf(“n Enter the numbers”); 7. scanf(“%d %d”,&a,&b); 8. c=add(a,b); 9. printf(“n%d”,c); 10. return 0; 11. } 12. int add(int x, int y) 13. { 14. return (a+b); 15. }
  • 18. • ONE CAN WONDER HOW THE PROGRAM WORKS AS WE HAVEN'T SEEN WHAT IS THE SYNTAX FOR EACH COMMAND • LET US NOW DISCUSS HOW EACH LINE IN THE ABOVE CODE WORKS • LINE 1: HEADER FILE “stdio.h” IS INCLUDED AS WE ARE GOING TO USE FUNCTIONS “printf” & “scanf” • LINE 2: A FUNCTION NAMED ADD IS DECLARED. SINCE WE DECIDE TO ADD TWO NUMBERS OF TYPE INTEGER, WE DECLARE THE POSSIBILITY
  • 19. • TWO INTEGERS TO BE PASSED TO THE FUNCTION. THIS IS DONE BY THE PARAMETERS PART. i.e. WITHIN BRACKETS WE SPECIFIED THEIR TYPES. IF THERE ARE NO PARAMETERS PASSED THE BRACKETS CAN BE EMPTY LIKE THIS- ( ) • LINE 3: THE MAIN FUNCTION IS DEFINED. NO SPECIFIC DECLARATION FOR THIS FUNCTION. BUT ALL OTHER FUNCTIONS SHOULD EITHER HAVE THEIR DECLARATION OR DIRECTLY THE DEFINITION ITSELF, BEFORE MAIN FUNCTION IS DEFINED
  • 20. • LINE 4: EVERY FUNCTION DEFINITION SHOULD START WITH OPEN CURLY BRACES. • LINE 5: THE VARIABLES WHICH ARE NEEDED TO PERFORM OUR TASK ARE DECLARED. IF WE GIVE VALUES FOR THEM IN PROGRAM ITSELF- WHICH IS CALLED STATIC INITIALIZATION, IT CAN BE GIVEN AS int a=4,b=5,c; • LINE 6: THIS IS A STATEMENT TO GET PRINTED IN THE MONITOR, TO INFORM THE USER TO ENTER THE INPUT VALUES
  • 21. • USE OF “n” IN THAT STATEMENT WILL LEAD YOU TO A NEW LINE INSTEAD OF CONTINUING IN SCREEN FROM THE LAST USED LINE'S REMAINING SPACE • LINE 7: TWO INPUTS ARE OBTAINED FROM THE KEYBOARD AND STORED IN VARIABLES a & b. FOR THAT “%d” IS THE SYNTAX FOR OBTAINING ONE INTEGER VALUE. AS WE HAVE LEFT A SINGLE SPACE BETWEEN 2 “%d”S INPUT NUMBERS SHOULD ALSO BE SPACED.
  • 22. • LINE 8: FUNCTION IS CALLED BY PASSING THE ARGUMENTS (ARGUMENTS ARE THE PARAMETERS). BUT IT CALLED IN THE LEFT SIDE BECAUSE THE FUNCTION RETURNS A VALUE. • RETURNING VALUE'S DATA TYPE SHOULD BE SPECIFIED BEFORE FUNCTION NAME THAT IS WHY WE HAVE INCLUDED ”int” BEFORE FUNCTION NAME IN DECLARATION AND IN DEFINITION. • LEFT HAND VARIABLE SHOULD ALSO BE OF SAME DATA TYPE
  • 23. • LINE 9: WE ARE PRINTING THE ADDED VALUE ONTO THE SCREEN IN A NEW LINE • LINE 10: THIS IS RETURN VALUE OF THE MAIN FUNCTION. OTHER FUNCTIONS RETURN VALUE TO THE COMMAND WHICH CALLED THEM. BUT TO WHERE DOES THE MAIN FUNCTION RETURN VALUE? • THE OPERATING SYSTEM IS WHAT THAT CALLED THE MAIN FUNCTION FOR EXECUTING PROGRAM. SO IT RETURNS VALUE TO OS
  • 24. • THE RETURN VALUE OF 0 (return 0) INDICATES SUCCESSFUL COMPLETION OF THE PROGRAM. THAT IS WHY WE INCLUDED THAT IN THE END OF THE PROGRAM. • LINE 11: THE FUNCTION ENDS BY THE CLOSING CURLY BRACES • LINE 12: THIS IS THE HEADER LINE OF FUNCTION DEFINITION. HERE SOME NAME FOR PARAMETER SHOULD BE GIVEN ALONG WITH TYPE. IT CAN BE DIFFERENT FROM THE ACTUAL NAME OF MAIN FUNCTION OR THE SAME AS THAT
  • 25. • BECAUSE THOUGH THE NAME WOULD BE SAME, THE SAME NAMED VARIABLE LOCAL TO THE FUNCTION WOULD BE TREATED LIKE SOME OTHER VARIABLE ONLY. BECAUSE IT BELONGS TO THE FUNCTION DIRECTLYAND HAS IMMEDIATE NOTICE BY THE FUNCTION • LINE 13 & LINE 15: OPENING AND CLOSING BRACES FOR THE FUNCTION
  • 26. • LINE 14: ANY FUNCTION THAT HAS A RETURN TYPE SHOULD RETURN ANY VALUE. OTHERWISE, IT IS AN ERROR. THIS FUNCTION RETURNS THE ADDED RESULT TO THE MAIN FUNCTION WHICH CALLED IT. • THERE MAY BE MANY IFs ,WHYs AND HOWs IN YOUR MIND WHEN YOU WANT TO EXTEND THE CAPABILITY OF THIS SIMPLE CODE WE DISCUSSED. THAT IS THE MOTIVE OF THIS MATERIAL- TO INTRODUCE THE PASSION TO LEARN CODING. PROGRAMMING IS A VAST AREA WITH LOTS OF INTERESTING FEATURES. HAVE A HAPPY CODING!
  • 27. FEEDBACK TO AW COURSE OF SWAYAM MOOC • THIS ACADEMIC WRITING (AW) COURSE ELIMINATED THE FEAR REGARDING OUR POTENTIAL TO WRITE IN PROFESSIONAL STYLE • THIS HELPS RESEARCHERS AND SCHOLARS TO FRAME THEIR WRITING OF PAPERS AND THESIS IN AN EFFICIENT MANNER • THIS COURSE IS ENJOYABLE AS IT PROGRESSES. BECAUSE IT INCLUDES LEARNER INVOLVEMENT THROUGH LEARNING BY DOING AND SUBJECTIVE ASSIGNMENTS. • PERSONALLY I FEEL PRIVILEDGED TO HAVE ATTENDED THE COURSE.