SlideShare a Scribd company logo
1 of 29
Strings
• A special kind of array is an array of characters
ending in the null character 0 called string array
s
• A string is declared as an array of characters
• char s[10]
• char p[30]
• When declaring a string don’t forget to leave a s
pace for the null character which is also known a
s the string terminator character
C offers four main operations on str
ings
• strcpy - copy one string into another
• strcat - append one string onto the right si
de of the other
• strcmp – compare alphabetic order of two
strings
• strlen – return the length of a string
strcpy
• strcpy(destinationstring, sourcestring)
• Copies sourcestring into destinationstring
• For example
• strcpy(str, “hello world”); assigns “hello wo
rld” to the string str
Example with strcpy
#include <stdio.h>
#include <string.h>
main()
{
char x[] = “Example with strcpy”;
char y[25];
printf(“The string in array x is %s n “, x);
strcpy(y,x);
printf(“The string in array y is %s n “, y);
}
strcat
• strcat(destinationstring, sourcestring)
• appends sourcestring to right hand side of destin
ationstring
• For example if str had value “a big ”
• strcat(str, “hello world”); appends “hello world” to
the string “a big ” to get
• “ a big hello world”
Example with strcat
#include <stdio.h>
#include <string.h>
main()
{
char x[] = “Example with strcat”;
char y[]= “which stands for string concatenation”;
printf(“The string in array x is %s n “, x);
strcat(x,y);
printf(“The string in array x is %s n “, x);
}
strcmp
• strcmp(stringa, stringb)
• Compares stringa and stringb alphabetically
• Returns a negative value if stringa precedes stri
ngb alphabetically
• Returns a positive value if stringb precedes strin
ga alphabetically
• Returns 0 if they are equal
• Note lowercase characters are greater than Upp
ercase
Example with strcmp
#include <stdio.h>
#include <string.h>
main()
{
char x[] = “cat”;
char y[]= “cat”;
char z[]= “dog”;
if (strcmp(x,y) == 0)
printf(“The string in array x %s is equal to t
hat in %s n “, x,y);
continued
if (strcmp(x,z) != 0)
{printf(“The string in array x %s is not equal to that in z %s n “,
x,z);
if (strcmp(x,z) < 0)
printf(“The string in array x %s precedes that in z %s n “, x,z);
else
printf(“The string in array z %s precedes that in x %s n “, z,x);
}
else
printf( “they are equal”);
}
strlen
• strlen(str) returns length of string excluding
null character
• strlen(“tttt”) = 4 not 5 since 0 not counted
Example with strlen
#include <stdio.h>
#include <string.h>
main()
{
int i, count;
char x[] = “tommy tucket took a tiny ticket ”;
count = 0;
for (i = 0; i < strlen(x);i++)
{
if (x[i] == ‘t’) count++;
}
printf(“The number of t’s in %s is %d n “, x,count);
}
Vowels Example with strlen
#include <stdio.h>
#include <string.h>
main()
{
int i, count;
char x[] = “tommy tucket took a tiny ticket ”;
count = 0;
for (i = 0; i < strlen(x);i++)
{
if ((x[i] == ‘a’)||(x[i]==‘e’)||(x[i]==‘I’)||(x[i]==‘o’)||(x[i]==‘u’)) count+
+;
}
printf(“The number of vowels’s in %s is %d n “, x,count);
}
No of Words Example with strlen
#include <stdio.h>
#include <string.h>
main()
{
int i, count;
char x[] = “tommy tucket took a tiny ticket ”;
count = 0;
for (i = 0; i < strlen(x);i++)
{
if ((x[i] == ‘ ‘) count++;
}
printf(“The number of words’s in %s is %d n “, x,count+1);
}
No of Words Example with more th
an one space between words
#include <stdio.h>
#include <string.h>
main()
{
int i,j, count;
char x[] = “tommy tucket took a tiny ticket ”;
count = 0;
for (i = 0; i < strlen(x);i++)
{
if ((x[i] == ‘ ‘)
{ count++;
for(j=i;x[j] != ‘ ‘;j++);
i = j;
}
}
printf(“The number of words’s in %s is %d n “, x,count+1);
}
Input output functions of characters
and strings
• getchar() reads a character from the scree
n in a non-interactive environment
• getche() like getchar() except interactive
• putchar(int ch) outputs a character to scre
en
• gets(str) gets a string from the keyboard
• puts(str) outputs string to screen
Characters are at the heart of string
s
Exercise 1
Output
1
1 2
1 2 3
1 2 3 4
………….
1 2 3 4 5 6 7 8 9 10
Exercise 1
#include <stdio.h>
main()
{
int i,j;
for(j = 1; j <= 10; j++)
{
for(i=1;i <= j;i++)
{
printf(“%d “,i);
}
printf(“n“);
}
}
Exercise 2
Output
*
* *
* * *
* * * *
…………….
* * * * * * * * * *
Exercise 2
#include <stdio.h>
main()
{
int i,j;
for(j = 1; j <= 10; j++)
{
for(i=1;i <= j;i++)
{
printf(“* “);
}
printf(“n“);
}
}
Exercise 3
• Output
***********
* *
* *
* *
* *
* *
* *
* *
* *
***********
#include <stdio.h>
main()
{
int i,j;
for(j = 1; j <= 10; j++)
{
printf(“* “);
for(i=1;i <= 8;i++)
{
if ((j==1) || (j==10)) printf(“* “);
else
printf(“ “);
}
printf(“* n “);
}
}
Some Useful C Character Functi
ons
• Don't forget to #include <ctype.h> to get t
he function prototypes.
Functions
• Function Return true if
• int isalpha(c); c is a letter.
• int isupper(c); c is an upper case
letter.
• int islower(c); c is a lower case letter.
• int isdigit(c); c is a digit [0-9].
More Functions
• Function Return true if
• int isxdigit(c); c is a hexadecimal digit
[0-9A-Fa-f].
• int isalnum(c); c is an alphanumeric character (c
is a letter or a digit);
• int isspace(c); c is a SPACE, TAB, RETURN,
NEWLINE, FORMFEED,
or vertical tab character.
Even More C Functions
• Function Return true if
• int ispunct(c); c is a punctuation
character (neither
control nor
alphanumeric).
• int isprint(c); c is a printing character.
• int iscntrl(c); c is a delete character
or ordinary control
character.
Still More C Functions
• Function Return true if
• int isascii(c); c is an ASCII character,
codeless than 0200.
• int toupper(int c); convert character c to
upper case (leave it
alone if not lower)
• int tolower(int c); convert character c to
lower case (leave it
alone if not upper)
• Program to Reverse Strings
• #include <stdio.h>
#include <string.h>
int main ()
{
• int i;
char a[10];
char temp;
//clrscr(); // only works on windows
gets(a);
• for (i = 0; a[i] != '0' ; i++);
• i--;
• for (int j = 0; j <= i/2 ; j++)
{
• temp = a[j];
a[j] = a[i - j];
a[i - j] = temp;
• }
printf("%s",a);
return(0);
•
Program to count the number of vo
wels in a string :
• Note Two different ways to declare strings
• One using pointers *str
• Two using character array char a[]
• #include <stdio.h>
#include <string.h>
• void main() {
• char *str;
• char a[]="aeiouAEIOU";
• int i,j,count=0;
• clrscr();
• printf("nEnter the stringn");
• gets(str);
• for(i=0;str[i]!='0';i++)
• {
• for(j=0;a[j]!='0';j++)
• if(a[j] == str[i]
• {
• count++;
• break;
• }
printf("nNo. of vowels = %d",count);
• }
•

More Related Content

What's hot (15)

C++ string
C++ stringC++ string
C++ string
 
String Handling in c++
String Handling in c++String Handling in c++
String Handling in c++
 
14 strings
14 strings14 strings
14 strings
 
Strings Functions in C Programming
Strings Functions in C ProgrammingStrings Functions in C Programming
Strings Functions in C Programming
 
String in c programming
String in c programmingString in c programming
String in c programming
 
P2 2017 python_strings
P2 2017 python_stringsP2 2017 python_strings
P2 2017 python_strings
 
05 c++-strings
05 c++-strings05 c++-strings
05 c++-strings
 
Strings in Python
Strings in PythonStrings in Python
Strings in Python
 
Arrays
ArraysArrays
Arrays
 
Strings in C language
Strings in C languageStrings in C language
Strings in C language
 
Strings
StringsStrings
Strings
 
Array and string
Array and stringArray and string
Array and string
 
2017 biological databasespart2
2017 biological databasespart22017 biological databasespart2
2017 biological databasespart2
 
Passing an Array to a Function (ICT Programming)
Passing an Array to a Function (ICT Programming)Passing an Array to a Function (ICT Programming)
Passing an Array to a Function (ICT Programming)
 
String C Programming
String C ProgrammingString C Programming
String C Programming
 

Similar to Presentation more c_programmingcharacter_and_string_handling_

Module-2_Strings concepts in c programming
Module-2_Strings concepts in c programmingModule-2_Strings concepts in c programming
Module-2_Strings concepts in c programmingCHAITRAB29
 
Cse115 lecture14strings part01
Cse115 lecture14strings part01Cse115 lecture14strings part01
Cse115 lecture14strings part01Md. Ashikur Rahman
 
Handling of character strings C programming
Handling of character strings C programmingHandling of character strings C programming
Handling of character strings C programmingAppili Vamsi Krishna
 
Lecture14.pdf
Lecture14.pdfLecture14.pdf
Lecture14.pdfJoyPalit
 
0-Slot21-22-Strings.pdf
0-Slot21-22-Strings.pdf0-Slot21-22-Strings.pdf
0-Slot21-22-Strings.pdfssusere19c741
 
5 2. string processing
5 2. string processing5 2. string processing
5 2. string processing웅식 전
 
fundamentals of c programming_String.pptx
fundamentals of c programming_String.pptxfundamentals of c programming_String.pptx
fundamentals of c programming_String.pptxJStalinAsstProfessor
 
INDIAN INSTITUTE OF TECHNOLOGY KANPURESC 111M Lec13.pptx
INDIAN INSTITUTE OF TECHNOLOGY KANPURESC 111M Lec13.pptxINDIAN INSTITUTE OF TECHNOLOGY KANPURESC 111M Lec13.pptx
INDIAN INSTITUTE OF TECHNOLOGY KANPURESC 111M Lec13.pptxAbhimanyuChaure
 
Cs1123 9 strings
Cs1123 9 stringsCs1123 9 strings
Cs1123 9 stringsTAlha MAlik
 
L13 string handling(string class)
L13 string handling(string class)L13 string handling(string class)
L13 string handling(string class)teach4uin
 
Lecture 1 string functions
Lecture 1  string functionsLecture 1  string functions
Lecture 1 string functionsAwinash Goswami
 
introduction to strings in c programming
introduction to strings in c programmingintroduction to strings in c programming
introduction to strings in c programmingmikeymanjiro2090
 
SPL 13 | Character Array(String) in C
SPL 13 | Character Array(String) in CSPL 13 | Character Array(String) in C
SPL 13 | Character Array(String) in CMohammad Imam Hossain
 

Similar to Presentation more c_programmingcharacter_and_string_handling_ (20)

Module-2_Strings concepts in c programming
Module-2_Strings concepts in c programmingModule-2_Strings concepts in c programming
Module-2_Strings concepts in c programming
 
Cse115 lecture14strings part01
Cse115 lecture14strings part01Cse115 lecture14strings part01
Cse115 lecture14strings part01
 
Handling of character strings C programming
Handling of character strings C programmingHandling of character strings C programming
Handling of character strings C programming
 
Lecture14.pdf
Lecture14.pdfLecture14.pdf
Lecture14.pdf
 
0-Slot21-22-Strings.pdf
0-Slot21-22-Strings.pdf0-Slot21-22-Strings.pdf
0-Slot21-22-Strings.pdf
 
The string class
The string classThe string class
The string class
 
5 2. string processing
5 2. string processing5 2. string processing
5 2. string processing
 
fundamentals of c programming_String.pptx
fundamentals of c programming_String.pptxfundamentals of c programming_String.pptx
fundamentals of c programming_String.pptx
 
lecture5.ppt
lecture5.pptlecture5.ppt
lecture5.ppt
 
INDIAN INSTITUTE OF TECHNOLOGY KANPURESC 111M Lec13.pptx
INDIAN INSTITUTE OF TECHNOLOGY KANPURESC 111M Lec13.pptxINDIAN INSTITUTE OF TECHNOLOGY KANPURESC 111M Lec13.pptx
INDIAN INSTITUTE OF TECHNOLOGY KANPURESC 111M Lec13.pptx
 
Strings
StringsStrings
Strings
 
Cs1123 9 strings
Cs1123 9 stringsCs1123 9 strings
Cs1123 9 strings
 
COm1407: Character & Strings
COm1407: Character & StringsCOm1407: Character & Strings
COm1407: Character & Strings
 
L13 string handling(string class)
L13 string handling(string class)L13 string handling(string class)
L13 string handling(string class)
 
Lecture 1 string functions
Lecture 1  string functionsLecture 1  string functions
Lecture 1 string functions
 
introduction to strings in c programming
introduction to strings in c programmingintroduction to strings in c programming
introduction to strings in c programming
 
SPL 13 | Character Array(String) in C
SPL 13 | Character Array(String) in CSPL 13 | Character Array(String) in C
SPL 13 | Character Array(String) in C
 
Unitii string
Unitii stringUnitii string
Unitii string
 
[ITP - Lecture 17] Strings in C/C++
[ITP - Lecture 17] Strings in C/C++[ITP - Lecture 17] Strings in C/C++
[ITP - Lecture 17] Strings in C/C++
 
Strings
StringsStrings
Strings
 

More from KarthicaMarasamy (13)

Roles of Datascience.pptx
Roles of Datascience.pptxRoles of Datascience.pptx
Roles of Datascience.pptx
 
DATASCIENCE.pptx
DATASCIENCE.pptxDATASCIENCE.pptx
DATASCIENCE.pptx
 
Software Testing 1.pptx
Software Testing 1.pptxSoftware Testing 1.pptx
Software Testing 1.pptx
 
powerpoint 1.pdf
powerpoint 1.pdfpowerpoint 1.pdf
powerpoint 1.pdf
 
class 3.pptx
class 3.pptxclass 3.pptx
class 3.pptx
 
class 2.pptx
class 2.pptxclass 2.pptx
class 2.pptx
 
Software Testing
Software TestingSoftware Testing
Software Testing
 
Network (Hub,switches)
Network  (Hub,switches)Network  (Hub,switches)
Network (Hub,switches)
 
Computer network layers
Computer network layersComputer network layers
Computer network layers
 
C programming
C programmingC programming
C programming
 
Fundamentals steps in Digital Image processing
Fundamentals steps in Digital Image processingFundamentals steps in Digital Image processing
Fundamentals steps in Digital Image processing
 
DIGITAL IMAGE PROCESSING
DIGITAL IMAGE PROCESSINGDIGITAL IMAGE PROCESSING
DIGITAL IMAGE PROCESSING
 
Network
NetworkNetwork
Network
 

Recently uploaded

80 ĐỀ THI THỬ TUYỂN SINH TIẾNG ANH VÀO 10 SỞ GD – ĐT THÀNH PHỐ HỒ CHÍ MINH NĂ...
80 ĐỀ THI THỬ TUYỂN SINH TIẾNG ANH VÀO 10 SỞ GD – ĐT THÀNH PHỐ HỒ CHÍ MINH NĂ...80 ĐỀ THI THỬ TUYỂN SINH TIẾNG ANH VÀO 10 SỞ GD – ĐT THÀNH PHỐ HỒ CHÍ MINH NĂ...
80 ĐỀ THI THỬ TUYỂN SINH TIẾNG ANH VÀO 10 SỞ GD – ĐT THÀNH PHỐ HỒ CHÍ MINH NĂ...Nguyen Thanh Tu Collection
 
Introduction to TechSoup’s Digital Marketing Services and Use Cases
Introduction to TechSoup’s Digital Marketing  Services and Use CasesIntroduction to TechSoup’s Digital Marketing  Services and Use Cases
Introduction to TechSoup’s Digital Marketing Services and Use CasesTechSoup
 
Python Notes for mca i year students osmania university.docx
Python Notes for mca i year students osmania university.docxPython Notes for mca i year students osmania university.docx
Python Notes for mca i year students osmania university.docxRamakrishna Reddy Bijjam
 
Accessible Digital Futures project (20/03/2024)
Accessible Digital Futures project (20/03/2024)Accessible Digital Futures project (20/03/2024)
Accessible Digital Futures project (20/03/2024)Jisc
 
COMMUNICATING NEGATIVE NEWS - APPROACHES .pptx
COMMUNICATING NEGATIVE NEWS - APPROACHES .pptxCOMMUNICATING NEGATIVE NEWS - APPROACHES .pptx
COMMUNICATING NEGATIVE NEWS - APPROACHES .pptxannathomasp01
 
NO1 Top Black Magic Specialist In Lahore Black magic In Pakistan Kala Ilam Ex...
NO1 Top Black Magic Specialist In Lahore Black magic In Pakistan Kala Ilam Ex...NO1 Top Black Magic Specialist In Lahore Black magic In Pakistan Kala Ilam Ex...
NO1 Top Black Magic Specialist In Lahore Black magic In Pakistan Kala Ilam Ex...Amil baba
 
Graduate Outcomes Presentation Slides - English
Graduate Outcomes Presentation Slides - EnglishGraduate Outcomes Presentation Slides - English
Graduate Outcomes Presentation Slides - Englishneillewis46
 
dusjagr & nano talk on open tools for agriculture research and learning
dusjagr & nano talk on open tools for agriculture research and learningdusjagr & nano talk on open tools for agriculture research and learning
dusjagr & nano talk on open tools for agriculture research and learningMarc Dusseiller Dusjagr
 
HMCS Vancouver Pre-Deployment Brief - May 2024 (Web Version).pptx
HMCS Vancouver Pre-Deployment Brief - May 2024 (Web Version).pptxHMCS Vancouver Pre-Deployment Brief - May 2024 (Web Version).pptx
HMCS Vancouver Pre-Deployment Brief - May 2024 (Web Version).pptxmarlenawright1
 
Transparency, Recognition and the role of eSealing - Ildiko Mazar and Koen No...
Transparency, Recognition and the role of eSealing - Ildiko Mazar and Koen No...Transparency, Recognition and the role of eSealing - Ildiko Mazar and Koen No...
Transparency, Recognition and the role of eSealing - Ildiko Mazar and Koen No...EADTU
 
Exploring_the_Narrative_Style_of_Amitav_Ghoshs_Gun_Island.pptx
Exploring_the_Narrative_Style_of_Amitav_Ghoshs_Gun_Island.pptxExploring_the_Narrative_Style_of_Amitav_Ghoshs_Gun_Island.pptx
Exploring_the_Narrative_Style_of_Amitav_Ghoshs_Gun_Island.pptxPooja Bhuva
 
Beyond_Borders_Understanding_Anime_and_Manga_Fandom_A_Comprehensive_Audience_...
Beyond_Borders_Understanding_Anime_and_Manga_Fandom_A_Comprehensive_Audience_...Beyond_Borders_Understanding_Anime_and_Manga_Fandom_A_Comprehensive_Audience_...
Beyond_Borders_Understanding_Anime_and_Manga_Fandom_A_Comprehensive_Audience_...Pooja Bhuva
 
21st_Century_Skills_Framework_Final_Presentation_2.pptx
21st_Century_Skills_Framework_Final_Presentation_2.pptx21st_Century_Skills_Framework_Final_Presentation_2.pptx
21st_Century_Skills_Framework_Final_Presentation_2.pptxJoelynRubio1
 
How to Add New Custom Addons Path in Odoo 17
How to Add New Custom Addons Path in Odoo 17How to Add New Custom Addons Path in Odoo 17
How to Add New Custom Addons Path in Odoo 17Celine George
 
HMCS Max Bernays Pre-Deployment Brief (May 2024).pptx
HMCS Max Bernays Pre-Deployment Brief (May 2024).pptxHMCS Max Bernays Pre-Deployment Brief (May 2024).pptx
HMCS Max Bernays Pre-Deployment Brief (May 2024).pptxEsquimalt MFRC
 
Sensory_Experience_and_Emotional_Resonance_in_Gabriel_Okaras_The_Piano_and_Th...
Sensory_Experience_and_Emotional_Resonance_in_Gabriel_Okaras_The_Piano_and_Th...Sensory_Experience_and_Emotional_Resonance_in_Gabriel_Okaras_The_Piano_and_Th...
Sensory_Experience_and_Emotional_Resonance_in_Gabriel_Okaras_The_Piano_and_Th...Pooja Bhuva
 
FICTIONAL SALESMAN/SALESMAN SNSW 2024.pdf
FICTIONAL SALESMAN/SALESMAN SNSW 2024.pdfFICTIONAL SALESMAN/SALESMAN SNSW 2024.pdf
FICTIONAL SALESMAN/SALESMAN SNSW 2024.pdfPondicherry University
 
How to setup Pycharm environment for Odoo 17.pptx
How to setup Pycharm environment for Odoo 17.pptxHow to setup Pycharm environment for Odoo 17.pptx
How to setup Pycharm environment for Odoo 17.pptxCeline George
 
On National Teacher Day, meet the 2024-25 Kenan Fellows
On National Teacher Day, meet the 2024-25 Kenan FellowsOn National Teacher Day, meet the 2024-25 Kenan Fellows
On National Teacher Day, meet the 2024-25 Kenan FellowsMebane Rash
 

Recently uploaded (20)

80 ĐỀ THI THỬ TUYỂN SINH TIẾNG ANH VÀO 10 SỞ GD – ĐT THÀNH PHỐ HỒ CHÍ MINH NĂ...
80 ĐỀ THI THỬ TUYỂN SINH TIẾNG ANH VÀO 10 SỞ GD – ĐT THÀNH PHỐ HỒ CHÍ MINH NĂ...80 ĐỀ THI THỬ TUYỂN SINH TIẾNG ANH VÀO 10 SỞ GD – ĐT THÀNH PHỐ HỒ CHÍ MINH NĂ...
80 ĐỀ THI THỬ TUYỂN SINH TIẾNG ANH VÀO 10 SỞ GD – ĐT THÀNH PHỐ HỒ CHÍ MINH NĂ...
 
Introduction to TechSoup’s Digital Marketing Services and Use Cases
Introduction to TechSoup’s Digital Marketing  Services and Use CasesIntroduction to TechSoup’s Digital Marketing  Services and Use Cases
Introduction to TechSoup’s Digital Marketing Services and Use Cases
 
Python Notes for mca i year students osmania university.docx
Python Notes for mca i year students osmania university.docxPython Notes for mca i year students osmania university.docx
Python Notes for mca i year students osmania university.docx
 
Accessible Digital Futures project (20/03/2024)
Accessible Digital Futures project (20/03/2024)Accessible Digital Futures project (20/03/2024)
Accessible Digital Futures project (20/03/2024)
 
COMMUNICATING NEGATIVE NEWS - APPROACHES .pptx
COMMUNICATING NEGATIVE NEWS - APPROACHES .pptxCOMMUNICATING NEGATIVE NEWS - APPROACHES .pptx
COMMUNICATING NEGATIVE NEWS - APPROACHES .pptx
 
NO1 Top Black Magic Specialist In Lahore Black magic In Pakistan Kala Ilam Ex...
NO1 Top Black Magic Specialist In Lahore Black magic In Pakistan Kala Ilam Ex...NO1 Top Black Magic Specialist In Lahore Black magic In Pakistan Kala Ilam Ex...
NO1 Top Black Magic Specialist In Lahore Black magic In Pakistan Kala Ilam Ex...
 
Graduate Outcomes Presentation Slides - English
Graduate Outcomes Presentation Slides - EnglishGraduate Outcomes Presentation Slides - English
Graduate Outcomes Presentation Slides - English
 
dusjagr & nano talk on open tools for agriculture research and learning
dusjagr & nano talk on open tools for agriculture research and learningdusjagr & nano talk on open tools for agriculture research and learning
dusjagr & nano talk on open tools for agriculture research and learning
 
HMCS Vancouver Pre-Deployment Brief - May 2024 (Web Version).pptx
HMCS Vancouver Pre-Deployment Brief - May 2024 (Web Version).pptxHMCS Vancouver Pre-Deployment Brief - May 2024 (Web Version).pptx
HMCS Vancouver Pre-Deployment Brief - May 2024 (Web Version).pptx
 
Transparency, Recognition and the role of eSealing - Ildiko Mazar and Koen No...
Transparency, Recognition and the role of eSealing - Ildiko Mazar and Koen No...Transparency, Recognition and the role of eSealing - Ildiko Mazar and Koen No...
Transparency, Recognition and the role of eSealing - Ildiko Mazar and Koen No...
 
Exploring_the_Narrative_Style_of_Amitav_Ghoshs_Gun_Island.pptx
Exploring_the_Narrative_Style_of_Amitav_Ghoshs_Gun_Island.pptxExploring_the_Narrative_Style_of_Amitav_Ghoshs_Gun_Island.pptx
Exploring_the_Narrative_Style_of_Amitav_Ghoshs_Gun_Island.pptx
 
Beyond_Borders_Understanding_Anime_and_Manga_Fandom_A_Comprehensive_Audience_...
Beyond_Borders_Understanding_Anime_and_Manga_Fandom_A_Comprehensive_Audience_...Beyond_Borders_Understanding_Anime_and_Manga_Fandom_A_Comprehensive_Audience_...
Beyond_Borders_Understanding_Anime_and_Manga_Fandom_A_Comprehensive_Audience_...
 
21st_Century_Skills_Framework_Final_Presentation_2.pptx
21st_Century_Skills_Framework_Final_Presentation_2.pptx21st_Century_Skills_Framework_Final_Presentation_2.pptx
21st_Century_Skills_Framework_Final_Presentation_2.pptx
 
How to Add New Custom Addons Path in Odoo 17
How to Add New Custom Addons Path in Odoo 17How to Add New Custom Addons Path in Odoo 17
How to Add New Custom Addons Path in Odoo 17
 
HMCS Max Bernays Pre-Deployment Brief (May 2024).pptx
HMCS Max Bernays Pre-Deployment Brief (May 2024).pptxHMCS Max Bernays Pre-Deployment Brief (May 2024).pptx
HMCS Max Bernays Pre-Deployment Brief (May 2024).pptx
 
Sensory_Experience_and_Emotional_Resonance_in_Gabriel_Okaras_The_Piano_and_Th...
Sensory_Experience_and_Emotional_Resonance_in_Gabriel_Okaras_The_Piano_and_Th...Sensory_Experience_and_Emotional_Resonance_in_Gabriel_Okaras_The_Piano_and_Th...
Sensory_Experience_and_Emotional_Resonance_in_Gabriel_Okaras_The_Piano_and_Th...
 
Our Environment Class 10 Science Notes pdf
Our Environment Class 10 Science Notes pdfOur Environment Class 10 Science Notes pdf
Our Environment Class 10 Science Notes pdf
 
FICTIONAL SALESMAN/SALESMAN SNSW 2024.pdf
FICTIONAL SALESMAN/SALESMAN SNSW 2024.pdfFICTIONAL SALESMAN/SALESMAN SNSW 2024.pdf
FICTIONAL SALESMAN/SALESMAN SNSW 2024.pdf
 
How to setup Pycharm environment for Odoo 17.pptx
How to setup Pycharm environment for Odoo 17.pptxHow to setup Pycharm environment for Odoo 17.pptx
How to setup Pycharm environment for Odoo 17.pptx
 
On National Teacher Day, meet the 2024-25 Kenan Fellows
On National Teacher Day, meet the 2024-25 Kenan FellowsOn National Teacher Day, meet the 2024-25 Kenan Fellows
On National Teacher Day, meet the 2024-25 Kenan Fellows
 

Presentation more c_programmingcharacter_and_string_handling_

  • 1. Strings • A special kind of array is an array of characters ending in the null character 0 called string array s • A string is declared as an array of characters • char s[10] • char p[30] • When declaring a string don’t forget to leave a s pace for the null character which is also known a s the string terminator character
  • 2. C offers four main operations on str ings • strcpy - copy one string into another • strcat - append one string onto the right si de of the other • strcmp – compare alphabetic order of two strings • strlen – return the length of a string
  • 3. strcpy • strcpy(destinationstring, sourcestring) • Copies sourcestring into destinationstring • For example • strcpy(str, “hello world”); assigns “hello wo rld” to the string str
  • 4. Example with strcpy #include <stdio.h> #include <string.h> main() { char x[] = “Example with strcpy”; char y[25]; printf(“The string in array x is %s n “, x); strcpy(y,x); printf(“The string in array y is %s n “, y); }
  • 5. strcat • strcat(destinationstring, sourcestring) • appends sourcestring to right hand side of destin ationstring • For example if str had value “a big ” • strcat(str, “hello world”); appends “hello world” to the string “a big ” to get • “ a big hello world”
  • 6. Example with strcat #include <stdio.h> #include <string.h> main() { char x[] = “Example with strcat”; char y[]= “which stands for string concatenation”; printf(“The string in array x is %s n “, x); strcat(x,y); printf(“The string in array x is %s n “, x); }
  • 7. strcmp • strcmp(stringa, stringb) • Compares stringa and stringb alphabetically • Returns a negative value if stringa precedes stri ngb alphabetically • Returns a positive value if stringb precedes strin ga alphabetically • Returns 0 if they are equal • Note lowercase characters are greater than Upp ercase
  • 8. Example with strcmp #include <stdio.h> #include <string.h> main() { char x[] = “cat”; char y[]= “cat”; char z[]= “dog”; if (strcmp(x,y) == 0) printf(“The string in array x %s is equal to t hat in %s n “, x,y);
  • 9. continued if (strcmp(x,z) != 0) {printf(“The string in array x %s is not equal to that in z %s n “, x,z); if (strcmp(x,z) < 0) printf(“The string in array x %s precedes that in z %s n “, x,z); else printf(“The string in array z %s precedes that in x %s n “, z,x); } else printf( “they are equal”); }
  • 10. strlen • strlen(str) returns length of string excluding null character • strlen(“tttt”) = 4 not 5 since 0 not counted
  • 11. Example with strlen #include <stdio.h> #include <string.h> main() { int i, count; char x[] = “tommy tucket took a tiny ticket ”; count = 0; for (i = 0; i < strlen(x);i++) { if (x[i] == ‘t’) count++; } printf(“The number of t’s in %s is %d n “, x,count); }
  • 12. Vowels Example with strlen #include <stdio.h> #include <string.h> main() { int i, count; char x[] = “tommy tucket took a tiny ticket ”; count = 0; for (i = 0; i < strlen(x);i++) { if ((x[i] == ‘a’)||(x[i]==‘e’)||(x[i]==‘I’)||(x[i]==‘o’)||(x[i]==‘u’)) count+ +; } printf(“The number of vowels’s in %s is %d n “, x,count); }
  • 13. No of Words Example with strlen #include <stdio.h> #include <string.h> main() { int i, count; char x[] = “tommy tucket took a tiny ticket ”; count = 0; for (i = 0; i < strlen(x);i++) { if ((x[i] == ‘ ‘) count++; } printf(“The number of words’s in %s is %d n “, x,count+1); }
  • 14. No of Words Example with more th an one space between words #include <stdio.h> #include <string.h> main() { int i,j, count; char x[] = “tommy tucket took a tiny ticket ”; count = 0; for (i = 0; i < strlen(x);i++) { if ((x[i] == ‘ ‘) { count++; for(j=i;x[j] != ‘ ‘;j++); i = j; } } printf(“The number of words’s in %s is %d n “, x,count+1); }
  • 15. Input output functions of characters and strings • getchar() reads a character from the scree n in a non-interactive environment • getche() like getchar() except interactive • putchar(int ch) outputs a character to scre en • gets(str) gets a string from the keyboard • puts(str) outputs string to screen
  • 16. Characters are at the heart of string s
  • 17. Exercise 1 Output 1 1 2 1 2 3 1 2 3 4 …………. 1 2 3 4 5 6 7 8 9 10
  • 18. Exercise 1 #include <stdio.h> main() { int i,j; for(j = 1; j <= 10; j++) { for(i=1;i <= j;i++) { printf(“%d “,i); } printf(“n“); } }
  • 19. Exercise 2 Output * * * * * * * * * * ……………. * * * * * * * * * *
  • 20. Exercise 2 #include <stdio.h> main() { int i,j; for(j = 1; j <= 10; j++) { for(i=1;i <= j;i++) { printf(“* “); } printf(“n“); } }
  • 21. Exercise 3 • Output *********** * * * * * * * * * * * * * * * * ***********
  • 22. #include <stdio.h> main() { int i,j; for(j = 1; j <= 10; j++) { printf(“* “); for(i=1;i <= 8;i++) { if ((j==1) || (j==10)) printf(“* “); else printf(“ “); } printf(“* n “); } }
  • 23. Some Useful C Character Functi ons • Don't forget to #include <ctype.h> to get t he function prototypes.
  • 24. Functions • Function Return true if • int isalpha(c); c is a letter. • int isupper(c); c is an upper case letter. • int islower(c); c is a lower case letter. • int isdigit(c); c is a digit [0-9].
  • 25. More Functions • Function Return true if • int isxdigit(c); c is a hexadecimal digit [0-9A-Fa-f]. • int isalnum(c); c is an alphanumeric character (c is a letter or a digit); • int isspace(c); c is a SPACE, TAB, RETURN, NEWLINE, FORMFEED, or vertical tab character.
  • 26. Even More C Functions • Function Return true if • int ispunct(c); c is a punctuation character (neither control nor alphanumeric). • int isprint(c); c is a printing character. • int iscntrl(c); c is a delete character or ordinary control character.
  • 27. Still More C Functions • Function Return true if • int isascii(c); c is an ASCII character, codeless than 0200. • int toupper(int c); convert character c to upper case (leave it alone if not lower) • int tolower(int c); convert character c to lower case (leave it alone if not upper)
  • 28. • Program to Reverse Strings • #include <stdio.h> #include <string.h> int main () { • int i; char a[10]; char temp; //clrscr(); // only works on windows gets(a); • for (i = 0; a[i] != '0' ; i++); • i--; • for (int j = 0; j <= i/2 ; j++) { • temp = a[j]; a[j] = a[i - j]; a[i - j] = temp; • } printf("%s",a); return(0); •
  • 29. Program to count the number of vo wels in a string : • Note Two different ways to declare strings • One using pointers *str • Two using character array char a[] • #include <stdio.h> #include <string.h> • void main() { • char *str; • char a[]="aeiouAEIOU"; • int i,j,count=0; • clrscr(); • printf("nEnter the stringn"); • gets(str); • for(i=0;str[i]!='0';i++) • { • for(j=0;a[j]!='0';j++) • if(a[j] == str[i] • { • count++; • break; • } printf("nNo. of vowels = %d",count); • } •