# 1)How to print below pattern? 1 23 456 7 8 9 10 Program: #include <stdio.

h> int main() { int i, j, ctr = 1; for (i = 1; i < 5; i++) { for (j = 1; j <= i; j++){ printf("%2d ", ctr++); } printf("\n"); } return 0; }

2)How to swap two numbers using bitwise operators? Program: #include <stdio.h> int main() { int i = 65; int k = 120; printf("\n value of i=%d k=%d before swapping", i, k); i = i ^ k;

k = i ^ k; i = i ^ k; printf("\n value of i=%d k=%d after swapping", i, k); return 0; } Download Code Explanation: i = 65; binary equivalent of 65 is 0100 0001 k = 120; binary equivalent of 120 is 0111 1000

i = i^k; i...0100 0001 k...0111 1000 --------val of i = 0011 1001 ---------

k = i^k i...0011 1001 k...0111 1000 --------val of k = 0100 0001 binary equivalent of this is 65 ---------(that is the initial value of i)

i = i^k i...0011 1001

printf("Enter a value for x: \n"). i). x. } int fact(int n) { /* n=0 indicates a terminating condition */ .. &x).k. i.0100 0001 --------val of i = 0111 1000 binary equivalent of this is 120 ---------(that is the initial value of k) 3)To calculate the factorial value using recursion. i = fact(x).h> int fact(int n). scanf("%d". int main() { int x. return 0. #include <stdio.. printf("\nFactorial of %d is %d".

max = a[0]. printf("Enter the second string = "). max. scanf("%s". return(0). str1). i<5. /*n*fact(n-1) is a recursive expression */ } } 4)Write a C Program to join two strings? (eg.1)). &a[i]). printf("Concatenation of two strings = %s". i++) scanf("%d". i<5. Input “hari” &”123”output=”hari123”) ? int main() { char str1[10]. for (i=0. printf("Enter the first string = "). strcat(str1. for (i=1. str2). i++) . } else { /* function calling itself */ return (n * fact(n . str2)).if (n <= 0) { return (1). printf("Enter the 5 numbers = "). str2[10]. scanf("%s". a[5]. } -5)Write a program to find highest of five numbers entered by user? int main() { int i.

printf("Enter a: \n"). consider a temporary variable temp. Thus the values of the variables x and y are interchanged. /* logic */ if (a % 2 == 0) { printf("The given number is EVEN\n"). step3: y=temp=5. return(0). Write a program to check whether the given number is even or odd.h> Code: . scanf("%d". } 6. } } printf("\nMaximum of 5 numbers = %d". step2: x=y=8. step2: x=y. step1: temp=x=5.h> int main() { int a. Write a program to swap two numbers using a temporary variable. } return 0. } else { printf("The given number is ODD\n").{ if (max < a[i]) { max = a[i]. Program: #include <stdio. step3: y=temp. max). Program: Code: #include <stdio. Swapping interchanges the values of two given variables. Example: if x=5 and y=8. Logic: step1: temp=x. } Output: Enter a: 2 The given number is EVEN 7). &a).

int main() { int a. Logic: step1: x=x+y.b. /*Swapping logic */ a = a + b. a. &a.b. printf("After swapping a=%d. return 0. Program: Code: #include <stdio. a. b. temp. printf("Before swapping a=%d. Write a program to swap two numbers using bitwise operators. &a. Example: if x=7 and y=4 step1: x=7+4=11. scanf("%d %d". Write a program to swap two numbers without using a temporary variable. b=2 4. printf("Enter the value of a and b: \n"). step2: y=11-4=7. a. b). b). a = b.h> int main() { int a.h> . b = temp. Program: Code: #include <stdio. a. b). b=3 The values after swapping are a=3 b=2 5. } Output: Enter values of a and b: 2 3 Before swapping a=2. } Output: Enter the values of a and b: 2 3 Before swapping a=2. &b). &b). printf("Enter values of a and b: \n"). printf("After swapping a=%d b=%d\n". Thus the values of the variables x and y are interchanged. b=%d \n". return 0. b = a . scanf("%d %d". step2: y=x-y. a = a . step3: x=11-7=4. printf("Before swapping a=%d. b.b). b=%d\n". b=%d". b=3 After swapping a=3. /*Swapping logic */ temp = a. Swapping interchanges the values of two given variables. step3: x=x-y.

i. Write a program to find the greatest of three numbers.. k = i ^ k. binary equivalent of 65 is 0100 0001 k = 120... b.0100 0001 --------val of i = 0111 1000 binary equivalent of this is 120 --------.h> int main(){ int a.. k).0111 1000 --------val of k = 0100 0001 binary equivalent of this is 65 ---------(that is the initial value of i) i = i^k i.b...0100 0001 k. printf("Enter a. k).0111 1000 --------val of i = 0011 1001 --------k = i^k i. int k = 120. i = i ^ k. &c).. c. } Explanation: i = 65. &a.0011 1001 k. i. printf("\n value of i=%d k=%d after swapping".(that is the initial value of k) 6.c: \n"). binary equivalent of 120 is 0111 1000 i = i^k. i.. printf("\n value of i=%d k=%d before swapping".. Program: Code: #include <stdio.0011 1001 k. } else if (c > a && c > b) { printf("c is Greater than a and b").. i = i ^ k.int main() { int i = 65.. if (a > b && a > c) { printf("a is Greater than b and c"). &b. } else if (b > a && b > c) { printf("b is Greater than a and c").. } else { . scanf("%d %d %d". return 0.

let a[] be an array holding these values. 88.8 i. i < 10. } return 0. else if(8>5 && 8>4) /* both conditions are satisfied */ Thus c is greater than a and b.4.printf("all are equal or any two values are equal").e. greatest). for (i = 0. 77. 8. 14. else if(4>5 && 4>8) /* both the conditions fail */ now the control shifts to the next else if condition else if(c>a && c>b) then c is greater than a and b now checking this condition for 5. /* how the greatest among ten numbers is found */ .c=8 if(a>b && a>c) then a is greater than b and c now check this condition for the three numbers 5. return 0.8 i.8 i. 53. printf("Enter ten values:"). i++) { if (a[i] > greatest) { greatest = a[i]. if(5>4 && 5>8) /* 5>4 is true but 5>8 fails */ so the control shifts to else if condition else if(b>a && b>c) then b is greater than a and c now checking this condition for 5.c: 3 5 8 c is Greater than a and b Explanation with examples: Consider three numbers a=5. } } printf("\nGreatest of ten numbers is %d". 3. i++) { scanf("%d". Write a program to find the greatest among ten numbers.4. Program: Code: #include <stdio. 7. int i.h> int main() { int a[10].4. i < 10.e. } Output: Enter ten values: 2 53 65 3 88 8 14 5 77 64 Greatest of ten numbers is 88 Explanation with example: Entered values are 2. } //Assume that a[0] is greatest greatest = a[0].b=4. &a[i]).e. 64 They are stored in an array of size 10.b. //Store 10 numbers in an array for (i = 0. 65. int greatest. 5. } Output: Enter a.

for(i=0. } Output: Enter any number n: 7 n is Prime Explanation with examples: consider a number n=5 for(i=0. variable 'greatest' is assinged with the value of first element in the array greatest=a[0].i<=n. i.h> main() { int n. 13 are prime numbers. Program: Code: #include <stdio.e. value of a[i] is compared with value of variable 'greatest'.i++) /* here the for loop is executed until i is equal to n */ . Here variable 'greatest' is assigned 2 as a[0]=2. After completion of 'for' loop. 8. i <= n. } return 0. If any value greater than the value of 'greatest' is encountered. Examples: 2. c = 0. i<10. /*logic*/ for (i = 1. for(i=0. } } For each value of 'i'. A prime number is a natural number that has only one and itself as factors. i++) { if(a[i]>greatest) { greatest= a[i]. } } if (c == 2) { printf("n is a Prime number"). Write a program to check whether the given number is a prime. At the beginning of the loop. Below loop is executed until end of the array 'a[]'.i++) /* for loop is executed until the n value equals i */ i. In this case 88 is the greatest of all the numbers. } else { printf("n is not a Prime number"). the value of variable 'greatest' holds the greatest number in the array.. scanf("%d". i++) { if (n % i == 0) { c++. 3. it would be replaced by a[i]. &n).Let us consider a variable 'greatest'. printf("Enter any number n: \n").i<=5.

/* logic */ while (n > 0){ rem = n % 10.e.e.e. then such a number is called a palindrome number. 2nd iteration: i=2. n = n / 10. n1 = n.if(5%3==0) then c ic incremented.i<=5. 5th iteration: i=5.e.e. i. scanf("%d". n1.i++ here i is incremented i.if(5%2==0) then c is incremented. but 5%2!=0 and so c is not incremented. i value for next iteration is 4 now if(n%i==0) then c is incremented i. 5%5=0 and so c is incremented.i++ here i is incremented i. c remains 1 c=1. 9. printf("Enter any number: \n"). c remains 1 c=1. but 5%4!=0 and so c is not incremented. } .e. here 5%1=0 thus c is incremented. but 5%3!=0 and so c is not incremented. Write a program to check whether the given number is a palindromic number. rev = 0.e.i++ here i is incremented i. Program: Code: #include <stdio.i++ here i is incremented i. 3rd iteration: i=3. i value for next iteration is 2 now if(n%i==0) then c is incremented i. rev = rev * 10 + rem.i<=5.i<=5. if(5%5==0) then c is incremented. i value for next iteration is 3 now if(n%i==0) then c is incremented i.h> int main() { int n.i++ here i is incremented i. If a number. which when read in both forward and backward way is same.i<=5. 4th iteration: i=4. i value for next iteration is 5 now if(n%i==0) then c is incremented i. now if(c==2) then n is a prime number we have c=2 from the 5th iteration and thus n=5 is a Prime number. c remains 1 c=1.i<=5.if(5%1==0)then c is incremented. &n). i value for next iteration is 6 now if(n%i==0) then c is incremented i. rem.e. if(5%4==0) then c is incremented. c=2 6th iteration: i=6.i<=5.i++ here i value is 6 and 6<=5 is false thus the condition fails and control leaves the for loop.e.e.1st iteration: i=1.e. now c=1.

reverse= (12*10)+1=121. string1). greater than 0. } Output: Enter any number: 121 Given number is a palindrome Explanation with an example: Consider a number n=121. now the number is 1. The above process is repeated for number=12. reverse=0. rubber.h> #include <string. The above process is repeated for number=1. The given number=121 equals the reverse of the number. number=1/10 /* the condition n>0 is not satisfied. length. .h> int main() { char string1[20]. remainder. now reverse= (reverse*10)+remainder = (0*10)+1 /* we have initialized reverse=0 */ =1 number=number/10 =121/10 =12 now the number is 12. printf("Enter a string: \n"). Example: radar. number=121 now the while loop is executed /* the condition (n>0) is satisfied */ /* calculate remainder */ remainder of 121 divided by 10= (121%10)=1. 10. greater than 0. Palindrome is a string. remainder=12%10=2. int i. pop. scanf("%s". int flag = 0.control leaves the while loop */ Program stops here. number=12/10=1. Program: Code: #include <stdio. lol. reverse= (1*10)+2=12. madam.. length = strlen(string1).Write a program to check whether the given string is a palindrome. Thus the given number is a palindrome number. } else{ printf("Given number is not a palindromic number"). } return 0. etc. remainder=1%10=1. which when read in both forward and backward way is same.if (n1 == rev){ printf("Given number is a palindromic number").

} } if (flag) { printf("%s is not a palindrome\n". --------------------------index: 0 1 2 3 4 value: r a d a r --------------------------To compare it with the reverse of itself. Consider a palindrome string: "radar".i < length . } else { printf("%s is a palindrome\n".Write a program to generate the Fibonacci series. . 1st character is same as 3rd character.. If any one of the above condition fails.. the value of flag is false(0). Let f(n) be n'th term. Hence. (for n>=2) Series is as follows 011 (1+0) 2 (1+1) 3 (1+2) . Fibonacci series: Any number in the series is obtained by adding the previous two numbers of the series. string1). which implies that the string is not a palindrome. string1). a string needs to be compared with the reverse of itself.i++){ if(string1[i] != string1[length-i-1]){ flag = 1. f(1)=1. f(n)=f(n-1)+f(n-2). flag is set to true(1).for(i=0. break. if all the conditions are satisfied. } Output: Enter a string: radar "radar" is a palindrome Explanation with example: To check if a string is a palindrome or not. By default. the following logic is used: 0th character in the char array. the string is a palindrome. } return 0.. ith character is same as 'length-i-1'th character. 2nd character is same as 2nd character. 11. string1 is same as 4th character in the same string. f(0)=0.

fib[i] = fib[i .h> int main() { //printf returns the length of string being printed .1] + fib[i . Generally when we use printf("") statement. //print all numbers in the series for (i = 0. These numbers are stored in an array and ten elements of the series are printed as output. fib[i])..and so on Program: to generate Fibonacci Series(10 terms) Code: #include<stdio.Write a program to print "Hello World" without using semicolon anywhere in the code. //initialized second element to 1 fib[1] = 1. } return 0. i < 10.h> int main() { //array fib stores numbers of fibonacci series int i. } Output: The fibonacci series is as follows 01123581 3 21 34 Explanation: The first two elements are initialized to 0.. 12.5 (2+3) 8 (3+5) 13 (5+8) 21 (8+13) 34 (13+21) . semicolon can be avoided. i++) { printf("%d \n". //initialized first element to 0 fib[0] = 0. Program: Program to print something without using semicolon (. fib[25]. i < 10. } printf("The fibonacci series is as follows \n"). we have to use a semicolon at the end.2].) Code: #include <stdio. i++) { //i'th element of series is equal to the sum of i-1'th element and i-2'th element. Other elements in the series are generated by looping and adding previous two numbes. If printf is used inside an if Condition. //loop to generate ten elements for (i = 2. 1 respectively.

The return value of function call printf("%c".h Case 1: when the strings are equal. 59)) { //prints semicolon } return 0. it returns zero. Explanation: If statement checks whether return value of printf function is greater than zero or not.59) is 1. printf function returns the length of the string printed. semicolon if (printf("%c\n".e. Code: #include <stdio. ' which is equal to 59. it returns negative value. If we want to print a semicolon. strcmp is declared in stdio. Syntax: .h> int main(void) { //prints the character with ascii value 59. we use the statement: printf(".). Generally when use printf("") statement we have to use semicolon at the end.. In above statement. strcmp() function compares two strings lexicographically. it returns positive value. printf("%c".Write a program to compare two strings without using strcmp() function. b) When string1 is lesser than string2.59) prints ascii value that corresponds to 59. } Output: Hello World Explanation: The if statement checks for condition whether the return value of printf("Hello World") is greater than 0. i. } Output: . Hence the statement if (printf("Hello World")) prints the string "Hello World". Program: Program to print a semicolon without using semicolon in the code. 14. that is semicolon(. Case 2: when the strings are unequal."). 13. The task of printing a semicolon without using semicolon anywhere in the code can be accomplished by using the ascii value of ' . we are using two semicolons. it returns the difference between ascii values of the characters that differ.Write a program to print a semicolon without using a semicolon anywhere in the code.if (printf("Hello World\n")) //prints Hello World and returns 11 { //do nothing } return 0. a) When string1 is greater than string2. As printf returns the length of the string printed.

} else if (i > k) { bigger = i.h> #include<string. int bigger. int main() { char arr1[10] = "Nodalo". char s2[10]) { //strlen function returns the length of argument string passed int i = strlen(s1). Once the loop encounters a differing character in the strings. s2[i] are equal do nothing if (s1[i] == s2[i]) { } //else return the ascii difference else { return (s1[i] . char s2[10]). int k = strlen(s2).h> int cmpstr(char s1[10]. } Output: -32 Explanation: cmpstr() is a function that illustrates C standard function strcmp(). cmpstr(arr1. } } //return 0 when both strings are same //This statement is executed only when both strings are equal return (0). printf(" %d". . } //loops 'bigger' times for (i = 0. } else { bigger = i. Each character in string1 is compared to its corresponding character in string2.int strcmp (const char *s1. }/ /s1. //cmpstr() is equivalent of strcmp() return 0. s2 are strings to be compared int cmpstr(char s1[10]. it would return the ascii difference of the differing characters and exit. if (i < k) { bigger = k. const char *s2).s2[i]). i++) { //if ascii values of characters s1[i]. Strings to be compared are sent as arguments to cmpstr(). arr2)). Program: to compare two strings. i < bigger. char arr2[10] = "nodalo". Code: #include<stdio.

string2) is a C standard function declared in the header file string. string2).h> #include<string. using a for loop. string1. char *c2) { //strlen function returns length of argument string int i = strlen(c1).h The strcat() function concatenates string2.Write a program to concatenate two strings without using strcat() function. string2). return (c1) is equivalent to return &c1[0] and it returns the base address of 'c1'. //prints the contents of string2 printf("\n string2 = %s". all the characters of string 'c2' are copied at the end of c1. string2 are passed to strct() finalstr = strcat(string1. Program: Program to concatenate two strings Code: #include<stdio. //prints the contents of string1 printf("\n string1 = %s". string2).h> char *strct(char *c1. return 0. printf("\nAfter concatenation:"). k++. } int main() { char string1[15] = "first". strcat(string1. In strct() function. printf("Before concatenation:" " \n string1 = %s \n string2 = %s". 'finalstr' stores that address returned by the function strct(). //addresses of string1. } return c1. string1). } Output: Before concatenation: string1 = first string2 = second After concatenation: finalstr = firstsecond string1 = firstsecond string2 = second Explanation: string2 is appended at the end of string1 and contents of string2 are unchanged. int k = 0. char *finalstr. //prints the contents of string whose address is in finalstr printf("\n finalstr = %s". char string2[15] = "second". char *strct(char *c1.15. finalstr). string1 and returns string1. . char *c2). //loops until null is encountered and appends string c2 to c1 while (c2[k] != '\0') { c1[i + k] = c2[k].

&number). scanf("%d". //call a function to input number from key board input = getnumber(). . input). //input another number input = getnumber().Write a program to display the multiplication table of a given number. int main() { int input = 0. printf("Multiplication table of %d: \n".Write a C program which asks the user for a number between 1 to 9 and shows the number. } //this function is repeated until a valid input is given by user. &num). printf("\n Enter any Number:"). scanf("%d". //when input is not in the range of 1 to 9. Program: Multiplication table of a given number Code: #include <stdio. i = 1. } Output: Enter a number between 1 to 9 45 [ERROR] The number you entered is out of range Enter a number between 1 to 9 4 The number you entered is 4 Explanation: getfunction() function accepts input from user. 20.print error message while (!((input <= 9) && (input >= 1))) { printf("[ERROR] The number you entered is out of range"). If the user inputs a number out of the specified range. the program should show an error and prompt the user for a valid input. Code: #include<stdio.19. return 0.h> int getnumber(). Program: Program for accepting a number in a given range. //asks user for a input in given range printf("\nEnter a number between 1 to 9 \n"). printf("\nThe number you entered is %d". return (number).h> int main() { int num. }/ /this function returns the number given by user int getnumber() { int number. 'while' loop checks whether the number falls within range or not and accordingly either prints the number(If the number falls in desired range) or shows error message(number is out of range). num).

} Output: Enter any Number:5 5 x 1 = 5 5 x 2 = 10 5 x 3 = 15 5 x 4 = 20 5 x 5 = 25 5 x 6 = 30 5 x 7 = 35 5 x 8 = 40 5 x 9 = 45 5 x 10 = 50 Explanation: We need to multiply the given number (i. num * i). i++. 1.e. } return 0.h> . the number for which we want the multiplication table) with value of 'i' which increments from 1 to 10. Write C program to print the following pattern: 1 22 333 4444 55555 Program: #include<stdio.while (i <= 10) { printf("\n %d x %d = %d". num. i.

k++) { /* blank space */ printf(" ").int main() { int i. } printf("\n"). j++) { /* %2d ensures that the number is printed in two spaces for alignment and the numbers are printed in the order. for (i = 1. i <= 5. . j <= i. k <= c. } for (j = 1. i++) { /* k is taken for spaces */ for (k = 1. i). c = 5. */ printf("%2d". /*c is decremented by 1 */ c--. k. j.

Back to top 2. Write C program to print the following pattern: 1 121 12321 . ‘j’ loop prints the numbers.} return 0. } Download Code Output: 1 22 333 4444 55555 Explanation: Here ‘i’ loop is used for printing the numbers in the respective rows and ‘k’ loop is used for providing spaces. ‘c’ is decremented for numbers to be displayed in alternate columns.

j <= i. j). m--) { printf("%2d". for (i = 1.1234321 123454321 Program: #include<stdio. k <= c. k. m > 0. } for (j = 1.h> int main() { /* c taken for columns */ int i. i <= 5. i++) { /* k is used for spaces */ for (k = 1. j++) { 2. c = 9. j. m. k++) { printf(" "). } for (m = j - /* %2d ensures that the number * is printed in two spaces .

/* c is decremented by 2 */ c = c .2.* for alignment */ printf("%2d". } return 0. } Download Code Output: 1 121 12321 1234321 123454321 . m). } printf("\n").

Sangli] */ #include <stdio. } for(k=1.j. i++) { for(j=5. for(i=1. ‘m’ loop is used for printing numbers in reverse order. ‘j’ loop is used for printing numbers in increasing order.h> void main() { int i. clrscr().k.technoexam. i<=5.com [Technowell.h> #include <conio. k++) { printf("*").Explanation: Here ‘i’ loop is used for printing numbers in rows and ‘k’ loop is used for providing spaces. Program to print pyramid in C : Pattern 2 : Output : * * * * * * * * * * * * * * * /* Program to print pyramid pattern in C : Pattern 2 Creation Da * * * * * * * * * * * * * * *_ Program : /* Program to print pyramid pattern in C : Pattern 3 Creation Date : 12:28 AM 22/11/2010 Author : www. . j--) { printf(" "). k<=i. j>=i.

} printf("\n").j. i++) { for(j=0.} printf("\n"). } getch(). } getch(). i<5. j<=i.technoexam. } Program to print pyramid in C : Pattern 4 : Output : . } Program to print pyramid in C : Pattern 3 : Output : * * * * * * * * * * * * * * *_ te : 12:43 AM 22/11/2010 Author : www. Sangli] */ #include <stdio.h> #include <conio. j++) { printf(" * ").h> void main() { int i.com [Technowell. clrscr(). for(i=0.

i--) { for(k=samp.* * * * * * * * * * Program : * * * * *_ /* Program to print pyramid pattern in C : Pattern 4 Creation Date : 12:54 AM 22/11/2010 Author : www.com [Technowell.samp=1. i>=1. printf("\n"). k>=0. j--) { printf("*").technoexam. k--) { printf(" "). } Program to print pyramid in C : Pattern 5 : . for(i=5.h> void main() { int i. j>=1. } getch(). Sangli] */ #include <stdio. clrscr().h> #include <conio. } samp = samp + 1. // only 1 space } for(j=i.k.j.

j++) { printf(" * ").h> #include <conio. j<=i.Output : * * * * * * * * * * * * * * *_ Program : /* Program to print pyramid pattern in C : Pattern 5 Creation Date : 01:08 AM 22/11/2010 Author : www.h> void main() { int i.j.technoexam. for(i=5. clrscr(). i--) { for(j=1. Sangli] */ #include <stdio. i>=1. } printf("\n"). } Program to print pyramid in C : Pattern 6 : Output : * * * * * * * * * * * * * * *_ Program : . } getch().com [Technowell.

/* Program to print pyramid pattern in C : Pattern 6 Creation Date : 01:52 AM 22/11/2010 Author : www.com [Technowell. } getch(). } for(j=0. t = t + 1.h> #include <conio. } printf("\n"). for(i=1. j++) { printf(" * "). k<5.technoexam.h> void main() { int i. j< i.t=0. clrscr(). k++) { printf(" ").k. } Program to print pyramid in C : Pattern 7 : Output : * * * * * * * * * * * * * * * * * * * * * * * * *_ Program : /* Program to print pyramid pattern in C : Pattern 7 .j. i++) { for(k=t. Sangli] */ #include <stdio. i<=5.

k<=5. printf("\n").com [Technowell. clrscr(). j< i. printf("\n"). k>=0. j--) { printf("*"). } for(j=i. } samp = samp + 1. i--) { for(k=samp. } getch(). for(i=4. i>=1.technoexam. j>=1.j. k--) { printf(" "). } samp = samp + 1. } .Creation Date : 01:13 AM 22/11/2010 Author : www. k++) { printf(" ").h> #include <conio.k. i<=5. for(i=1. j++) { printf("*").samp=1. } samp = 1.h> void main() { int i. i++) { for(k=samp. } for(j=0. Sangli] */ #include <stdio.