Introduction To Programming, Basic Structure of C Programs: ESC101: Fundamentals of Computing Nisheeth
Introduction To Programming, Basic Structure of C Programs: ESC101: Fundamentals of Computing Nisheeth
Programming,
Basic Structure of C
ESC101: Fundamentals of Computing
Programs
Nisheeth
1
Announcements
Please make sure you know your section number for ESC101
Refer to the student list shared on the course website. Final list will be
uploaded by Friday evening.
Regularly visit the course website. Slides for each lecture (and other
material) will be posted there. Slides in PPTX (Power-point) and PDF
Please make sure you can access Piazza (and can get email
notifications of the messages posted on Piazza in real-time or digest
mode)
Prutor availability
During lab hours (1400-1500, M/Tu/Wed/Thu), only in NCL labs
Outside lab hours, hostels, CC, NCL etc (NCL open till 2AM)
Correct Prutor link: https://esc101.cse.iitk.ac.in/ (NOT https://prutor.cse.iitk.ac.in/)
2
Announcements
When logging in on the lab machines (Linux/Windows), use
your CC id (without @iitk.ac.in) and your CC password
We will soon hold some special sessions for students who do not
feel very comfortable with English (will discuss what is being
covered in lectures)
Will circulate a form to ask if you need it
We will soon hold a special lab session for students who are not
familiar with operating computers
Will circulate a form to ask if you need it
4
Programming: Some Benefits
Applications in Engineering (civil, chemical), Sciences,
Economics, AI
https://www.youtube.com/watch?v=nKIu9yen5nc
8
Computers and Programming
A better alternative would be to write our programs in a
language that is
High-level
(example: C) Low-level
(example: Assembly)
Low-level: Form is closer to what the machine’s hardware
understands
Examples: Machine Language, Assembly Language
Compiled languages
C C++
Interpreted languages
python JavaScript
Runtime languages
Java 12
Programming Cycle for Compiled Languages
(The typical cycle)
YES
Write/Edit Compilation
Compile Succeeded ? Run
Code
NO
NO Got
Expected YES
Output? (more inputs?)
YES
Done
Some high-level languages are not compiled but use an “interp
mmunicate with the hardware (Example: Python, MATLAB, etc) 13
The C Programming Language
A high-level programming language
Widely used. Many operating systems, and even parts of many other
programming languages such as Python were developed using C
#include<stdio.h>
int main(){
printf(“Welcome to ESC101”);
return 0;
}
The program prints “Welcome to ESC101”
(without the quotes) 15
Structure of A Simple C Program
Every C program’s entry point
(program’s execution starts Tells C compiler to include the standard
here) is the main function input/output library stdio.h (collection of
with return type integer functions such as printf, scanf, etc)
int main () {
Explore, practice. It
# include <stdio.h> int main () {
int a; # include <stdio.h>