Top 30 C programs asked in - TopicsExpress



          

Top 30 C programs asked in interview,,.!!! /////////////////////////////////////// //Copyright by Pc TiPs AnD TriCkS////// ////////////Author Anoop kaushal///// Programs : 1. Write a program to find factorial of the given number... 2. Write a program to check whether the given number is even or odd. 3. Write a program to swap two numbers using a temporary variable. 4. Write a program to swap two numbers without using a temporary variable. 5. Write a program to swap two numbers using bitwise operators. 6. Write a program to find the greatest of three numbers. 7. Write a program to find the greatest among ten numbers. 8. Write a program to check whether the given number is a prime. 9. Write a program to check whether the given number is a palindrome c number. 10.Write a program to check whether the given string is a palindrome . 11.Write a program to generate the Fibonacci series. 12.Write a program to printHello Worldwithout using semicolon anywhere in the code. 13.Write a program to print a semicolon without using a semicolon anywhere in the code. 14.Write a program to compare two strings without using strcmp() function. 15.Write a program to concatenat e two strings without using strcat() function. 16.Write a program to delete a specified line from a text file. 17.Write a program to replace a specified line in a text file. 18.Write a program to find the number of lines in a text file.. 19.Write a C program which asks the user for a number between 1 to 9 and shows the number. 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. 20.Write a program to display the multiplica tion table of a given number.. 21.WAP to check a string is Caliondrom e or not. // Maventic question. 22.WAP to print DONE,witho ut using any loop. // asked to my frnd in any company. 23.WAP to print DONE,witho ut using any loop and any conditonal clause or operators. // asked to me as a cross question of 22th question by the person i asked 22th ques. 24. WAP to find out the longest word in a string. 25.Prog of WORLD MAP. // this code was written by someone,i forgot his name,he won award for this code as short and best c code. JUST FOR FUN // 26.WAP to print the triangle of letters in increasing order of lines.. 27.WAP to printxayin place of everyain a string.// DOC Update on 24-jan-12. 28.Count the Total Number of 7 comming between 1 to 100. /* I made this code in a way that u can give Upper limit i.e. 100,Lower limit i.e. 1 and the specific number u wants to count in between i.e. 7 */ // asked by: Vishwa Pratap Rana.. 29. Code for duplicate s removal,by Amit Aru.. // Similar question was asked in Maventic 2nd round to me,, 30. WAP to find out if a given number is a power series of 2 or not,withou t any loop and without using % modulo operator.. // asked by someone on BJS.. TO BE CONTINUED. ..!!! ANSWERS 1. Write a program to find factorial of the given number. Recursion: A function is calledrecursive if a statement within the body of a function calls the same function. It is also calledcircular definition . Recursion is thus a process of defining something in terms of itself. Program: To calculate the factorial value using recursion. ?#?include? int fact(int n); int main(){ int x, i; printf(En ter a value for x: \n); scanf(%d ,&x); i = fact(x); printf(\n Factorial of %d is %d, x, i); return 0; }int fact(int n){ /* n=0 indicates a terminatin g condition */ if (n return (1); }else{ /* function calling itself */ return (n * fact(n - 1)); /*n*fact(n -1) is a recursive expression */ } } Output: Enter a value for x: 4 Factorial of 4 is 24 Explanatio n: fact(n) = n * fact(n-1) If n=4 fact(4) = 4 * fact(3) there is a call to fact(3) fact(3) = 3 * fact(2) fact(2) = 2 * fact(1) fact(1) = 1 * fact(0) fact(0) = 1 fact(1) = 1 * 1 = 1 fact(2) = 2 * 1 = 2 fact(3) = 3 * 2 = 6 Thus fact(4) = 4 * 6 = 24 Terminatin g condition( n infinite loop. 2. Write a program to check whether the given number is even or odd. Program: #include int main(){ int a; printf(En ter a: \n); scanf(%d ,&a); /* logic */ if (a % 2 == 0){ printf(Th e given number is EVEN\n); } else{ printf(Th e given number is ODD\n); } return 0; } Output: Enter a: 2 The given number is EVEN Explanatio n with examples: Example 1: If entered number is an even number Let value ofaentered is 4 if(a%2==0) then a is an even number, else odd. i.e. if(4%2==0) then 4 is an even number, else odd. To check whether 4 is even or odd, we need to calculate (4%2). /* % (modulus) implies remainder value. */ /* Therefore if the remainder obtained when 4 is divided by 2 is 0, then 4 is even. */ 4%2==0 is true Thus 4 is an even number. Example 2: If entered number is an odd number. Let value ofaentered is 7 if(a%2==0) then a is an even number, else odd. i.e. if(7%2==0) then 4 is an even number, else odd. To check whether 7 is even or odd, we need to calculate (7%2). 7%2==0 is false /* 7%2==1 condition fails and else part is executed */ Thus 7 is an odd number. 3. Write a program to swap two numbers using a temporary variable. Swapping interchang es the values of two given variables. Logic: step1: temp=x; step2: x=y; step3: y=temp; Example: if x=5 and y=8, consider a temporary variable temp. step1: temp=x=5; step2: x=y=8; step3: y=temp=5; Thus the values of the variables x and y are interchang ed. Program: #include int main(){ int a, b, temp; printf(En ter the value of a and b: \n); scanf(%d %d,&a,&b); printf(Be fore swapping a=%d, b=%d \n, a, b); /*Swapping logic */ temp = a; a = b; b = temp; printf(Af ter swapping a=%d, b=%d, a, b); return 0; } Output: Enter the values of a and b: 2 3 Before swapping a=2, b=3 After swapping a=3, b=2 4. Write a program to swap two numbers without using a temporary variable. Swapping interchang es the values of two given variables. Logic: step1: x=x+y; step2: y=x-y; step3: x=x-y; Example: if x=7 and y=4 step1: x=7+4=11; step2: y=11-4=7; step3: x=11-7=4; Thus the values of the variables x and y are interchang ed. Program: #include int main(){ int a, b; printf(En ter values of a and b: \n); scanf(%d %d,&a,&b); printf(Be fore swapping a=%d, b=%d\n, a,b); /*Swapping logic */ a = a + b; b = a - b; a = a - b; printf(Af ter swapping a=%d b=%d\n, a, b); return 0; } Output: Enter values of a and b: 2 3 Before swapping a=2, b=3 The values after swapping are a=3 b=2 5. Write a program to swap two numbers using bitwise operators. Program: #include 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; } Explanatio n: 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 k...0100 0001 --------- val of i = 0111 1000 binary equivalent of this is 120 --------- (that is the initial value of k) 6. Write a program to find the greatest of three numbers. Program: #include int main(){ int a, b, c; printf(En ter a,b,c: \n); scanf(%d %d %d,&a,&b,&c); if (a>b&&a>c){ printf(a is Greater than b and c); } else if (b>a&&b>c){ printf(b is Greater than a and c); } else if (c>a&&c>b){ printf(c is Greater than a and b); } else{ printf(al l are equal or any two values are equal); } return 0; } Output: Enter a,b,c: 3 5 8 c is Greater than a and b Explanatio n with examples: Consider three numbers a=5,b=4,c= 8 if(a>b&&a>c) then a is greater than b and c now check this condition for the three numbers 5,4,8 i.e. 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,4,8 i.e. 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,4,8 i.e. else if(8>5&&8>4) / * both conditions are satisfied */ Thus c is greater than a and b. 7. Write a program to find the greatest among ten numbers. Program: #include int main(){ int a[10]; int i; int greatest; printf(En ter ten values:); //Store 10 numbers in an array for (i = 0; igr eatest) { greatest= a[i]; } } For each value ofi, value of a[i] is compared with value of variablegreatest . If any value greater than the value ofgreatest is encountere d, it would be replaced by a[i]. After completion offorloop, the value of variable greatest holds the greatest number in the array. In this case 88 is the greatest of all the numbers. 8. Write a program to check whether the given number is a prime. A prime number is a natural number that has only one and itself as factors. Examples: 2, 3, 13 are prime numbers. Program: #include main(){ int n, i, c = 0; printf(En ter any number n: \n); scanf(%d ,&n); /*logic*/ for (i = 1; i if (n % i == 0){ c++; } } if (c == 2){ printf(n is a Prime number); } else{ printf(n is not a Prime number); } return 0; } Output: Enter any number n: 7 n is Prime Explanatio n with examples: consider a number n=5 for(i=0;i i.e. for(i=0;i 1st iteration: i=1;i here i is incremente d i.e. i value for next iteration is 2 now if(n%i==0) then c is incremente d i.e.if(5%1 ==0)then c is incremente d, here 5%1=0 thus c is incremente d. now c=1; 2nd iteration: i=2;i here i is incremente d i.e. i value for next iteration is 3 now if(n%i==0) then c is incremente d i.e.if(5%2 ==0) then c is incremente d, but 5%2!=0 and so c is not incremente d, c remains 1 c=1; 3rd iteration: i=3;i here i is incremente d i.e. i value for next iteration is 4 now if(n%i==0) then c is incremente d i.e.if(5%3 ==0) then c ic incremente d, but 5%3!=0 and so c is not incremente d, c remains 1 c=1; 4th iteration: i=4;i here i is incremente d i.e. i value for next iteration is 5 now if(n%i==0) then c is incremente d i.e. if(5%4==0) then c is incremente d, but 5%4!=0 and so c is not incremente d, c remains 1 c=1; 5th iteration: i=5;i here i is incremente d i.e. i value for next iteration is 6 now if(n%i==0) then c is incremente d i.e. if(5%5==0) then c is incremente d, 5%5=0 and so c is incremente d. i.e. c=2 6th iteration: i=6;i here i value is 6 and 6 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. 9. Write a program to check whether the given number is a palindromi c number. If a number, which when read in both forward and backward way is same, then such a number is called a palindrome number. Program: #include int main(){ int n, n1, rev = 0, rem; printf(En ter any number: \n); scanf(%d ,&n); n1 = n; /* logic */ while (n>0){ rem = n % 10; rev = rev * 10 + rem; n = n / 10; } if (n1 == rev){ printf(Gi ven number is a palindromi c number); } else{ printf(Gi ven number is not a palindromi c number); } return 0; } Output: Enter any number: 121 Given number is a palindrome Explanatio n with an example: Consider a number n=121, reverse=0, remainder; 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; now reverse=(r everse*10) +remainder =(0*10)+1 / * we have initialized reverse=0 */ =1 number=num ber/10 =121/10 =12 now the number is 12, greater than 0. The above process is repeated for number=12. remainder= 12%10=2; reverse=(1 *10)+2=12; number=12/ 10=1; now the number is 1, greater than 0. The above process is repeated for number=1. remainder= 1%10=1; reverse=(1 2*10)+1=12 1; number=1/ 10 / * the condition n>0 is not satisfied,co ntrol leaves the while loop */ Program stops here. The given number=121 equals the reverse of the number. Thus the given number is a palindrome number. 10.Write a program to check whether the given string is a palindrome . Palindrome is a string, which when read in both forward and backward way is same. Example: radar, madam, pop, lol, rubber, etc., Program: #include #include int main(){ char string1[20 ]; int i, length; int flag = 0; printf(En ter a string: \n); scanf(%s , string1); length = strlen(str ing1); for(i=0;i
Posted on: Mon, 15 Sep 2014 10:21:07 +0000

Trending Topics



Recently Viewed Topics




© 2015