Professional Documents
Culture Documents
Lecture-1 (Intro + Data Type + Variable + Operator) 1st
Lecture-1 (Intro + Data Type + Variable + Operator) 1st
Welcome
Lecture-1
BPSC Syllabus
(Structure Programming)
Computer Programming: Introduction to computer programming. Assembling
language programming. Problem solving techniques, algorithm specification
and development. Programming style, testing and debugging. Program design
techniques: Structured and modular program design. Programming languages
and paradigms: classification.
Programming in C: Data type, statements, control structures, arrays, pointers,
strings, functions, preprocessor directives, structures, unions and bit-fields,
files.
bitBox Online IT Job Care, Instructor: Engr. Harun Or Roshid, Phone:017 400 14 400
Lecture-1
BPSC Exam
• Operator etc.
bitBox Online IT Job Care, Instructor: Engr. Harun Or Roshid, Phone:017 400 14 400
Lecture-1
C Programming
bitBox Online IT Job Care, Instructor: Engr. Harun Or Roshid, Phone:017 400 14 400
Lecture-1
What is C Programming?
• C is portable. High level Programming language.
• Dennis Ritchie – AT&T Bell Laboratories – 1972
C প্রোগ্রোমের উদোহরণ?
// program reads and prints the same thing
#include <stdio.h>
int main() {
int number;
scanf(“%d”, &number);
printf (“%d”, number);
return 0;
}
bitBox Online IT Job Care, Instructor: Engr. Harun Or Roshid, Phone:017 400 14 400
Lecture-1
C program Gi †ewmK MVb/Structure
bitBox Online IT Job Care, Instructor: Engr. Harun Or Roshid, Phone:017 400 14 400
Lecture-1
C Data Types:
1. Primary Data Types
2. Derived Data Types
3. User Defined Data Type
Primary Data Types ev dvÛv‡g›Uvj WvUv UvBct ANSI KZ©…K wba©vwiZ WvUv UvBc mg~n‡K weë Bb WvUv UvBc
ev cÖvBgvwi WvUv UvBc ev dvÛv‡g›Uvj WvUv UvBc e‡j|
weë Bb WvUv UvBc ( Built In Data ) mvavibZ Pvi cÖKvi| h_vt
- ক্যাস্টেক্টাে UvBc WvUv ( Character Data Type) - Bw›URvi UvBc WvUv ( Integer Data Type)
- †d¬vwUs UvBc WvUv ( Floating point Data Type) - Wvej UvBc WvUv ( Double Data Type)
bitBox Online IT Job Care, Instructor: Engr. Harun Or Roshid, Phone:017 400 14 400
Lecture-1
BDRvi wWdvBÛ UvBc WvUv ( User Defined Data Type): C †cÖvMÖv‡g ব্যenviKvix wbR¯^ B”Qv Abyhvqx †h mKj
WvUv UvBc ˆZix Ki‡Z cv‡ib Zv‡`i †K Custom Data Type ev User Defined Data Type ejv nq|
Custom Data Pvi cÖKvi| h_vt
- স্ট্রাক্চাে ( Structure ) - BDwbqb ( Union )
- BwbDwg‡ikb ( Enumeration ) - K¬vm ( Class ) Bত্যাw`|
wWivBfW UvBc WvUv ( Derived Data Type) : †ewmK WvUv UvBc ব্যenvi K‡i †h mKj WvUv UvBc ˆZix Kiv
Zv‡`i‡K wWivBfW UvBc WvUv ( Derived Type Data) e‡j|
Derived Type Data mg~n n‡”Qt
- অ্যাস্টে ( Array) - dvskb ( Function )
- c‡q›Uvi (Pointer) - †idv‡iÝ ( Reference ) Bত্যাw`|
bitBox Online IT Job Care, Instructor: Engr. Harun Or Roshid, Phone:017 400 14 400
Lecture-1
bitBox Online IT Job Care, Instructor: Engr. Harun Or Roshid, Phone:017 400 14 400
Lecture-1
Variable
Variable: Variables nj †g‡gvwi location Gi bvg|
Variable Type:
1. Local Variables t hLb GKwU ভ্যাwi‡qej †K GkwU dvskb Gi gধ্যয †Nvlbv Kiv nq Ges ïay H dvskb G ব্যenvi Kiv
nq,ZLb Zv‡K †jvKvj ভ্যাwi‡qej e‡j|
2. Global Variables t hLb GKwU ভ্যাwi‡qej †K GKwU dvskb Gi evB‡i †Nvlbv Kiv nq Ges wewfbœ dvskb Gi wfZ‡iI
ব্যenvi Kiv hvq,ZLb Zv‡K Global ভ্যাwi‡qej e‡j|
bitBox Online IT Job Care, Instructor: Engr. Harun Or Roshid, Phone:017 400 14 400
Lecture-1
bitBox Online IT Job Care, Instructor: Engr. Harun Or Roshid, Phone:017 400 14 400
Lecture-1
Operator
Acv‡iUi Kx ? DËit Acv‡iUi nj GKwU cÖZxK, hv GK ev GKvwaK ভ্যvjyi ev ভ্যvwi‡qej Gi Dci KvR K‡i| D`vniY¯^iƒc:
+ GKwU Acv‡iUi hv †hvM Gi KvR K‡i|
* BDbvwi Acv‡iUi Kx ? DËit †h mKj Acv‡iUi GKwU gvÎ Acv‡iÛ wb‡q KvR K‡i Zv‡`i BDbvwi Acv‡iUi e‡j|
*evBbvwi Acv‡iUi Kx ? DËit †h me Acv‡iUi `yBwU Acv‡iÛ wb‡q KvR K‡i Zv‡`i‡K evBbvwi Acv‡iUi e‡j |
Operators In C:
• Arithmetic Operators
• Relational Operators
• Logical Operators
• Increment/Decrement
• Assignment Operators
• Conditional Operators
• Bitwise Operators
• Special Operator
bitBox Online IT Job Care, Instructor: Engr. Harun Or Roshid, Phone:017 400 14 400
Lecture-1
Arithmetic Operators t
Acv‡iUi Acv‡iUi Gi A_©
+ †hvM
- we‡qvM
* ¸b
/ fvM
% wefvRb Kivi ci fvM‡kl (gWzjvm wefvRb)
Order of operations:
Operator Evaluation direction
+,- (sign) right-to-left
*,/,% left-to-right
+,- left-to-right
=,+=,-=,*=,/=,%= right-to-left
[NB t % Acv‡iUi ïay gvÎ Bw›URvi UvBc †WUv‡Z ব্যenvi Kiv nq|]
bitBox Online IT Job Care, Instructor: Engr. Harun Or Roshid, Phone:017 400 14 400
Lecture-1
Relational Operators t
wi‡jkbvj Acv‡iUi `yBwU Acv‡i‡Ûi g‡ i m¤cK© †PK K‡i| hw` m¤cK© wU m nq Zvn‡j GUv 1 value wiUvb© K‡i
Ges hw` wg v nq Zvn‡j 0 value wiUvb© K‡i| †hgb: a>b GLv‡b > nj GKwU wi‡jkb Acv‡iUi|
hw` a, b Gi †_‡K eo nq Zvn‡j a>b 1 wiUvb© Ki‡e Avi hw` Zv bv nq Zvn‡j wiUvb© Ki‡e|
†cÖvMÖvwgs wm †Z wWwmkb †gwKs Ges jyc G wi‡jkbvj Acv‡iUi envi Kiv nq|
bitBox Online IT Job Care, Instructor: Engr. Harun Or Roshid, Phone:017 400 14 400
Lecture-1
Logical Operators t
wi‡jkb Acv‡iUim ¸‡jvi G·‡cÖkb GKwÎZ Kivi Rন্য jwRKvj Acv‡iUi ব্যenvi Kiv nq|
†cÖvMÖvwgs wm †Z 3 wU jwRক্যvj Acv‡iUi i‡q‡Q|
েযvখযvt ((c==5) && (d>5)) G·‡cÖkbwU mত্য nIqvi Rন্য c==5 Ges d>5 GB `yBUv KwÛkbB mত্য n‡Z n‡e, wKš‘ D`vniY G
†`Iqv d>5 KwÛkbwU wgথ্যv ZvB GB G·‡cÖkbwU wgথ্যv| ((c==5)|| (d>5)) G·‡cÖkbwU mত্য KviY GB G·‡cÖkbwUi 2 Uv KwÛkb
mত্য| !(c==5) G·‡cÖkbwU wgথ্যv KviY KwÛk‡b c=5 †`Iqv Av‡Q|
bitBoxbitBox
Online IT Job
Online Care,
IT Job Instructor:
Care, Instructor:Engr. HarunOrOrRoshid,
Engr. Harun Roshid, Phone:017
Phone:017 400
400 14 40014 400
Lecture-1
bitBox Online IT Job Care, Instructor: Engr. Harun Or Roshid, Phone:017 400 14 400
Lecture-1
#include <stdio.h>
int main(){
int c=2;
printf(Ò%d\nÓ,c++); //GB † ‡g›UwU cÖ_‡g c Gi gvb 2 display Ki‡e Zvici c Gi gvb 1 †e‡o 3 n‡e|
printf(Ò%dÓ,++c ); //GB † ‡g›UwU cÖ_‡g c Gi gvb 1 evov‡e Ges Zvici †mUv c Gi gvb display Ki‡e|
return 0; 1.#include <iostream>
} 2.using namespace std;
Assignment Operator t
eûj eüZ Acv‡iUi nj GmvBb‡g›U Ò=Ó Acv‡iUi| GB Acv‡iUiwU, Acv‡iUi Gi Wvb cv‡ki value Gi evg cv‡ki
variable G GmvBb K‡i| D`vniY¯^iƒc t
var=5; //5 is assigned to var
a=c; //value of c is assigned to a
5=c; // Error! 5 is a constant
bitBox Online IT Job Care, Instructor: Engr. Harun Or Roshid, Phone:017 400 14 400
Lecture-1
Conditional Operators t
†cÖvMÖvwgs wm †Z wWwmkb †gwKs Gi R KwÛkbvj Acv‡iUim envi Kiv nq| †hgb , †U KwÛkb Abymv‡i wewfbœ † ‡g›U
Gw·wKDU nIqv , GUv m bvwK wg v Zvi Dci wbf©i K‡i|
KwÛkbvj Acv‡iU‡ii Syntax t
conditional_expression?expression1:expression 2
শ্ত্ত ? িত্যঃ সমথ্যা;
Example: KwÛkbvj Acv‡iUi ব্যenvi K‡i wZb msখ্যvi g‡যয me‡P‡q eo msখ্যv wbb©‡qi GKwU wm †cÖvMÖvg †jL| [DESCO-2016, NTRCA-2014]
#include<stdio.h>
int main(){
int a,b,c,big;
printf("\nEnter 3 numbers:");
scanf("%d %d %d",&a,&b,&c);
big=(a>b&&a>c?a:b>c?b:c);
printf("\nThe biggest number is: %d",big);
return 0;
}
bitBox Online IT Job Care, Instructor: Engr. Harun Or Roshid, Phone:017 400 14 400
Lecture-1
. Bitwise Operator:
†hvM/we‡qvM/¸Y/fvM Bত্যvw`i †P‡q GKwU we‡Ui gvb cwieZ©b K‡i †`Iqv Kw¤úDUv‡ii Rন্য A‡bK mnR KvR| ZvB A‡bK‡ÿ‡ÎB weU-
IqvBR Acv‡iUi ব্যenv‡ii gvযয‡g wnmve m¤cbœ Ki‡j †cÖvMÖv‡gi efficiency A‡bKvs‡k e„wদ্ধ Kiv hvq|
bitBox Online IT Job Care, Instructor: Engr. Harun Or Roshid, Phone:017 400 14 400
Lecture-1
i. AND Acv‡iUit
weU-IqvBR AND Acv‡iUiwU jwRক্যvj AND (&&) Gi gZB KvR K‡i| cv_©ক্য nj, GwU cÖwZwU we‡Ui Dci Avjv`v
Avjv`vfv‡e KvR K‡i|
78 = 01001110
45 = 00101101
GLb hw` Avgiv G‡`i g‡যয weU-IqvBR AND Acv‡ikb Kwi Ges †mwU‡K x bvgK GKwU †fwi‡qe‡j ivwL Zvn‡j Zvi wmন্ট্যv·
n‡e GiKg, x = 78 & 45;
GLb hw` Avgiv x Gi value AvDUcyU †`B, Zvn‡j cve 12 | wKfv‡e nj †mwU G‡`i weU প্যvUvb© jক্ষ্য Ki‡jB †evSv hv‡e|
78 = 0100 1110
45 = 0010 1101
-------------------
X = 0000 1100 = 12
[2 wU binary number Gi same ¯’vbxq As‡Ki mv‡_ AND operationn‡e]
bitBox Online IT Job Care, Instructor: Engr. Harun Or Roshid, Phone:017 400 14 400
Lecture-1
ii. OR Acv‡iUit
Logical OR Gi g‡Zv KvR K‡i | GLb hw` Avgiv AveviI Av‡Mi `ywU bv¤^vi we‡ePbv Kwi, 78 Ges 45 G‡`i g‡a¨ OR
Acv‡ikb Kiv n‡j x Gi gvb wK n‡e|
x = 78 | 45;
78 = 0100 1110
45 = 0010 1101
-------------------
x = 0110 1111 = 111
[2 wU binary number Gi same ¯’vbxq As‡Ki mv‡_ OR operationn‡e]
bitBox Online IT Job Care, Instructor: Engr. Harun Or Roshid, Phone:017 400 14 400
Lecture-1
x = ~45;
45 = 0010 1101
x = 1101 0010 = 210
bitBox Online IT Job Care, Instructor: Engr. Harun Or Roshid, Phone:017 400 14 400
Lecture-1
bitBox Online IT Job Care, Instructor: Engr. Harun Or Roshid, Phone:017 400 14 400
Lecture-1
v. LEFT SHIFT Ges RIGHT SHIFT Acv‡iUit
SHIFT Acv‡iUi¸‡jv †Kvb bv¤^v‡ii mgMÖ weU প্যাvUvb©‡K Wv‡b ev ev‡g wkdU K‡i †`q| aiv hvK Avgiv 78 †K 1 Ni ev‡g wkdU Ki‡Z PvB|
78 = 0000 0000 0100 1110
0 0 0 0 0 0 0 0 0 1 0 0 1 1 1 0
x = 78 << 1;
0 0 0 0 0 0 0 0 1 0 0 1 1 1 0 0
x = 0000 0000 1001 1100 = 156 // GKNi ev‡g wkdU Kivi ci |
RIGHT SHIFT Acv‡ikb Kiv n‡j hZNi ejv _v‡K bv¤^viwUi weU¸‡jv ZZ Ni Wv‡b m‡i hvq| RIGHT SHIFT G Wv‡bi weU¸‡jv
nvwi‡q hvq Ges ev‡g 0 †hvM n‡Z _v‡K|
45 =0000 0000 0010 1101
0 0 0 0 0 0 0 0 0 0 1 0 1 1 0 1
x = 45 >> 2
0 0 0 0 0 0 0 0 0 0 0 0 1 0 1 1
x = 0000 1011 => 11 // `yBNi Wv‡b wkdU Kivi ci
bitBox Online IT Job Care, Instructor: Engr. Harun Or Roshid, Phone:017 400 14 400
Lecture-1
Special Operator
a. Address Operater ("&")
b. Pointer Operater("*")
c. Comma Operator
d. size of operator etc.
Comma Operator t ci¯ci m¤úK©hy³ G·‡cÖkb¸‡jv GKmv‡_ Kivi R Kgv Acv‡iUi envi Kiv nq| †hgb, int a,c=5,d;
Size of Operator t GUv GKwU BDbvwi Acv‡iUi hv envi K‡i †WUvUvBc,Kb ›U ‡i, KPvi mn B w`i mvBR Rvbvi R
D`vnib¯^iƒc wb‡Pi †cÖvMÖvgwU †`Iqv nj|
#include <stdio.h>
int main(){ AvDUcyU t
int a; Size of int=4 bytes
float b; Size of float=4 bytes
double c;
Size of double=8 bytes
char d;
Size of char=1 byte
printf(“Size of int=%d bytes\n”,sizeof(a));
printf(“Size of float=%d bytes\n”,sizeof(b));
printf(“Size of double=%d bytes\n”,sizeof(c));
printf(“Size of char=%d byte\n”,sizeof(d));
return 0; }
bitBox Online IT Job Care, Instructor: Engr. Harun Or Roshid, Phone:017 400 14 400
Lecture-1
# C programming G †KvbwU Invalid variable name? (K) Average (L) No# of- students (M) Xyz (N) y23z
# Õb’ Gi ASCII Value KZ? (K) 66 (L) 98 (M) 3000 (N) 1
# C Kx ai‡bi †cÖvMÖvwgs fvlv- (K) Low level language (L) Mid-level language
(M) High level language (N) None of these
# wb‡Pi †KvbwU ‘C’ fvlvi Keyword bq? (K) Struct (L) int (M) star (N) float
# wb‡Pi C-Program wU RUN Ki‡j output Kx n‡e?
# include<stdio.h>
int main () {printf (“%c”, 100); return (0);}
(K) 100 (L) one hundred (M) d (N) 0
bitBox Online IT Job Care, Instructor: Engr. Harun Or Roshid, Phone:017 400 14 400
Thank You
bitBox Online IT Job Care, Instructor: Engr. Harun Or Roshid, Phone:017 400 14 400