The document discusses C string operations like strcpy, strcat, strcmp, and strlen. It provides examples of using each function, including copying one string into another with strcpy, appending strings with strcat, comparing strings alphabetically with strcmp, and getting the length of a string with strlen. It also covers basic string declarations and built-in functions for manipulating characters.
Call Girls in Dwarka Mor Delhi Contact Us 9654467111
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
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
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);
• }
•