0% found this document useful (0 votes)
115 views

Common C Programming Problem (Solved)

The document provides an outline of possible programs that could be included on the final exam for a computer programming course. It lists 29 different programming problems covering topics like detecting if a number is positive/negative, even/odd, finding maximum/minimum values, calculating factorials, averages, merging/sorting arrays, and more. For each problem, it provides an example C program to solve that problem. This will help students prepare for a variety of programming problem types and solutions that could appear on the final exam.

Uploaded by

Rahmannoor077
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOC, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
115 views

Common C Programming Problem (Solved)

The document provides an outline of possible programs that could be included on the final exam for a computer programming course. It lists 29 different programming problems covering topics like detecting if a number is positive/negative, even/odd, finding maximum/minimum values, calculating factorials, averages, merging/sorting arrays, and more. For each problem, it provides an example C program to solve that problem. This will help students prepare for a variety of programming problem types and solutions that could appear on the final exam.

Uploaded by

Rahmannoor077
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOC, PDF, TXT or read online on Scribd
You are on page 1/ 48

1

CSE 1287
Computer Programming, Spring Fall 2010
Final Exam Course Outline.

In Final Exam, there will be 7 Questions,


You have to answer any 5 Questions (5x14=70). Each question may comprise of
Programs, short questions, finding outputs etc.

Possible Programs to study for the Final Exam


1. Write a program to detect if a number is positive or negative
#include<stdio.h>
#include<conio.h>
void main()
{
clrscr();
int a;
scanf("%d", &a);
if (a>=0)
printf("The number is positive.");
else
printf("The number is negetive.");
getch();
}
2. Write a program to detect if a number is even or odd.
#include<stdio.h>
#include<conio.h>
void main()
{
clrscr();
int num;
printf(" Enter number: ");
scanf("%d",&num);
if(num%2==0)

2
printf("\n !!!The number is even!!!");
else
printf("\n !!!The number is odd!!!");
getch();
}

3.

Perform Addition, subtraction, division etc. based on users choice.

4. Write a program to find Maximum/Minimum of N integer/long numbers.


#include<stdio.h>
#include<conio.h>
void main()
{
clrscr();
int num,max,i,n;
printf(" How many number: ");
scanf("%d",&n);
printf("Enter %d number:",n);
scanf("%d",&num);
max=num;

min=num;

for(i=0;i<n-1;i++)
{ scanf("%d",&num);
if(num>max)
max=num;
}

for(i=0;i<n-1;i++)
{ scanf(%d,&num);
if(num<min)
min=num;
}

printf("The maximum is : %d ",max);

printf(The minimum is : %d,min);

getch();
}

5.

Finding Factorial of a given value from keyboard.

#include<stdio.h>
#include<conio.h>
void main()
{
clrscr();
int i,n;
long res;
scanf("%d",&n);
res=1;
for(i=n;i>0;--i)
{
res=res*i;
}
printf("the factoriAL IS %ld",res);
getch();
}

6. Finding sum of the individual digits of a given number.


#include<stdio.h>
#include<conio.h>
void main()
{
clrscr();
int num,sum;
scanf("%d",&num);
sum=0;
while(1)
{
sum=sum+(num%10);
num=num/10;
if(num%10==0)
break;
}

4
printf("%d",sum);
getch();
}
7.

Finding Maximum/Minimum digit from a given long number.

#include<stdio.h>
#include<conio.h>
void main()
{
clrscr();
long num,max;
scanf("%ld",&num);
max=num%10;
while(1)
{
num=num/10;
if(num%10>max)
max=num%10;
if(num%10==0)
break;
}
printf("%ld",max);
getch();
}

8.

GCD (Greatest common divisor) of two integer numbers.

#include<stdio.h>
#include<conio.h>
void main()
{
clrscr();
int a,b,rem;

5
scanf("%d %d", &a,&b);
while(b>0)
{
rem=a%b;
a=b;
b=rem;
}
printf("%d",a);
getch();
}
9.

Calculate the average of N positive integers.

#include<stdio.h>
#include<conio.h>
void main()
{
clrscr();
int n,num,i,sum ;
float avg;
sum=0;
scanf("%d",&n);
for(i=1;i<=n;++i)
{
printf("Enter number?");
scanf("%d",&num);
sum=sum+num;
}
avg=(float)sum/n;
printf("avg is %f", avg);
getch();
}
10. To detect if a number is perfect or not.
#include<stdio.h>
#include<conio.h>
void main()

6
{
clrscr();
int i,num,sum;
scanf("%d",&num);
i=1;
sum=0;
while(i<=num/2)
{
if (num%i==0)
sum=sum+i;
++i;
}
if (sum==num)
printf("the number is perfect");
else
printf("the number is not perfect");
getch();
}
11. To detect if a number is prime or not.(vhul)
#include<stdio.h>
#include<conio.h>
void main()
{
clrscr();
int i,num;
scanf("%d", &num);
i=2;
while (i<=num/2)
{ if (num%2==0)
break;
++i;
}
if(i>num/2)
printf("prime");
else
printf("not prime");
getch();
}

12. Write a program to generate first 4 perfect numbers.


#include<stdio.h>
#include<conio.h>
void main()
{
clrscr();
int sum,i,num,count;
num=1;
count=0;
for( ; ; )
{
sum=0;
i=1;
while(i<=num/2)
{ if (num%i==0)
sum=sum+i;
++i;
}
if(sum==num)
{
printf("%d ",num);
count++;
}
if(count>3)
break;
num++;
}
getch();
}

13. First N number of prime number generation where N is an integer given from
keyboard.[see khata ]
#include<stdio.h>
#include<conio.h>
void main()
{
clrscr();
int i,count,num,n;
scanf(%d,n);
count=1;
num=1;
for( ; ; )
{
i=2;
while(i<=num/2)
{
if (num%i==0)
break;
++i;
}
if(i>num/2)
printf ("%d ",num);
++count;
if (count>n)
break;
num++;
}
getch();
}
14. Calculate Xn for given value of x, n (Without using Math functions)
#include<stdio.h>
#include<conio.h>
void main()
{

9
clrscr();
int i, x ,n;
long res;
scanf("%d %d", &x, &n);
res=x;
for(i=1;i<n;++i)
res=res*x;
printf("XN IS %ld",res);
getch();
}

15. Finding Prime Factors of a long positive integer.


#include<stdio.h>
#include<conio.h>
void main()
{
clrscr();
int num,i,res;
scanf("%d",&num);
for(i=2; ; )
{
if(num%i==0)
{res=num/i;
printf("%d ",i);
}
else if (res==1)
break;
num=res;
if (num%i!=0)
++i;
}
getch();

10
}

16. Detect if a number is Happy Number or not .


#include<stdio.h>
#include<conio.h>
#include<math.h>
int suma[810];
void main()
{
clrscr();
long num,sum,rem;
scanf("%ld",&num);
while(1)
{
sum=0;
while(num>0)
{
rem=num%10;
sum=sum+pow(rem,2);
num=num/10;
}
if(sum==1)
{
printf("Happy number");
break;
}
if(suma[sum]==1)
{
printf("Not Happy number");
break;
}
suma[sum]=1;
num=sum;
}
getch();

10

11
}

Single Dimension array

17. Search an item from an array list


#include<stdio.h>
#include<conio.h>
#define size 100
void main()
{
clrscr();
int num[size],i,n,data,found;
scanf("%d",&n);
for(i=0;i<n;++i)
scanf("%d",&num[i]);
scanf("%d",&data);
found=0;
for(i=0;i<n;++i)
{
if(num[i]==data)
{
found=1;
break;
}
}
if(found==1)
printf("data is found at %d index",i);
else
printf("data not found");
getch();
}
18. Finding Maximum or Minimum number from an array list.
#include<stdio.h>
#include<conio.h>

11

12
void main()
{
clrscr();
int num[100],n,i,max;
scanf("%d",&n);
for(i=0;i<n;++i)
{
scanf("%d",&num[i]);
if(i==0)
max=num[i];
if(num[i]>max)
max=num[i];
}
printf("maximum number is %d",max);
getch();
}

19. Finding Nth Minimum or Maximum from an array list


#include<stdio.h>
#include<conio.h>
void main()
{
clrscr();
int a[15]={1,15,2,54,5,1,59,58,47,48,4,5,22,64,45};
int n,i,j,temp;
scanf("%d",&n);
for(i=0;i<15;++i)
{
for(j=i+1;j<15;++j)
{
if(a[i]<=a[j])
{
temp=a[i];
a[i]=a[j];
a[j]=temp;
}
}
}
for(i=0;i<15;++i)
printf("%d ",a[i]);

12

13

printf("\n%dth maximum %d",n,a[n-1]);


printf("\n%dth minimum %d",n,a[15-n-1]);
getch();
}

20. Frequency count for every individual element from an array list
#include<stdio.h>
#include<conio.h>
#include<string.h>
void main()
{
clrscr();
int num[100];
int n,i,j,k,c2,count;
scanf("%d",&n);
for(i=0;i<n;++i)
scanf("%d",&num[i]);
for(i=0;i<n;++i)
{
count=0;
for(j=0;j<n;++j)
{
if (num[i]==num[j])
count++;
}
c2=0;
for(k=i-1;k>=0;--k)
{
if(num[i]==num[k])
c2++;
}
if(c2==0)
printf("the number of %d is %d\n", num[i],count);
}
getch();
}

13

14

21. Reversing a sentence without using standard String Reverse function


#include<stdio.h>
#include<conio.h>
#include<string.h>
void main()
{
clrscr();
char str1[100];
char str2[100];
int i,j,len;
gets(str1);
len=strlen(str1);
j=0;
for(i=len-1;i>=0;--i)
{
str2[j]=str1[i];
++j;
}
strcpy(str1,str2);
str1[len]='\0';
printf("%s",str1);
getch();
}

22. Detect number of words in a sentence.


#include<stdio.h>
#include<conio.h>
#include<string.h>
void main()
{
clrscr();
char str[100];
int i,len,count;
gets(str);

14

15
len=strlen(str);
count=0;
for(i=0;i<len;++i)
{
if (str[i]==' ')
count++;
}
printf("Number of words in the sentence is %d",count+1);
getch();
}
23. Title case conversion of a given string
#include<stdio.h>
#include<conio.h>
#include<string.h>
#include<ctype.h>
void main()
{
clrscr();
char str[100];
int i,len;
gets(str);
len=strlen(str);
for(i=0;i<len;++i)
if (isupper(str[i]))
str[i]=tolower(str[i]);
else
str[i]=toupper(str[i]);
puts(str);
getch();
}

24. Checking a word for palindrome


#include<stdio.h>
#include<conio.h>
#include<string.h>

15

16
void main()
{
clrscr();
char str1[100];
char str2[100];
int i,len,j,res;
gets(str1);
len=strlen(str1);
j=0;
for(i=len-1;i>=0;--i)
{
str2[j]=str1[i];
++j;
}
str2[len]='\0';
res=strcmp(str1,str2);
if (res==0)
printf("The word is palindrome");
else
printf("The word is not palindrome");
getch();
}

25. Average of N floating point numbers using an array


#include<stdio.h>
#include<conio.h>
void main()
{ clrscr();
float a[100];
float sum,avg;
int i,n;
printf("Input n:");
scanf("%d",&n);
printf(Enter %d elements: ,n);
for(i=0;i<n;i++)
{
scanf("%f",&a[i]);

16

17
}
sum=0.0;
for(i=0;i<n;i++)
sum=sum+a[i];
avg=sum/n;
printf("The average is:%f",avg);
getch();
}

26. Merge two array list into one array list by removing the duplicate elements
#include<stdio.h>
#include<conio.h>
#include<string.h>
void main()
{
clrscr();
int num1[100];
int num2[100];
int n,i,c,c1,k,j;
printf("Enter number of element?\n");
scanf("%d",&n);
printf("Enter data for 1st Array?\n");
for(i=0;i<n;++i)
scanf("%d",&num1[i]);
printf("Enter data for 2nd Array?\n");
for(i=0;i<n;++i)
scanf("%d",&num2[i]);
c1=0;
j=0;
i=n;
for(;;)
{
c=0;

17

18
for(k=0;k<n;++k)
{
if(num1[k]==num2[j])
++c;
}
if(c==0)
{
num1[i]=num2[j];
c1++;
++i;
}
j++;
if(j==n)
break;
}
printf("\n\nAfter merging and Removing duplicate elements=\n \n ");
for(i=0;i<n+c1;i++)
printf(" %d ",num1[i]);
getch();
}

27. Inserting an element in an array which is sorted in ascending/descending order


#include<stdio.h>
#include<conio.h>
void main()
{
clrscr();
int num[100];
int n,i,j,temp,data;
scanf("%d",&n);
for(i=0;i<n;++i)
scanf("%d",&num[i]);
for(i=0;i<n;++i)

18

19
for(j=i+1;j<n;++j)
if(num[i]>num[j])
{
temp=num[i];
num[i]=num[j];
num[j]=temp;
}
for(i=0;i<n;++i)
printf("%d ",num[i]);
scanf("\n%d",&data);
for(i=0;i<n;++i)
if(data<=num[i])
{
for(j=n-1;j>=i;--j)
num[j+1]=num[j];
num[i]=data;
break;
}
else
num[n]=data;
for(i=0;i<n+1;++i)
printf("%d ",num[i]);
getch();
}

28. Deletion of an element from an array list.


#include<stdio.h>
#include<conio.h>
#define size 100
void main()
{
clrscr();
int num[size],i,j,n,data,count;
scanf("%d",&n);
for(i=0;i<n;++i)
scanf("%d",&num[i]);
scanf("%d",&data);

19

20
count=0;
for(i=0;i<n;++i)
{
if(num[i]==data)
{
count++;
for(j=i+1;j<n;++j)
num[j-1]=num[j];
}
}
for(i=0;i<n-count;++i)
printf("%d ",num[i]);
getch();
}

29. Print an array of N elements in reverse order.


#include<stdio.h>
#include<conio.h>
void main()
{
clrscr();
int a[100],a2[100];
int i,n,j;
printf("Input n:");
scanf("%d",&n);
printf("Input %d numbers: ",n);
for(i=0;i<n;i++)
{
scanf("%d",&a[i]);
}
for(i=n-1;i>=0;i--)
printf("\n%d",a[i]);
getch();

20

21
}

30. Finding common characters from two given character strings.


#include<stdio.h>
#include<conio.h>
#include<string.h>
void main()
{
clrscr();
char str1[100];
char str2[100];
char str3[100];
int len1,len2,i,c,j,k;
gets(str1);
gets(str2);
len1=strlen(str1);
len2=strlen(str2);
k=0;
for(i=0;i<len1;++i)
{
for(j=0;j<len2;++j)
{
if(str1[i]==str2[j])
{
str3[k]=str1[i];
++k;
}
}
}
for(i=0;i<k;++i)
{
c=0;
for(j=i-1;j>=0;--j)
{

21

22
if(str3[i]==str3[j])
c++;
}
if(c==0)
printf("%c",str3[i]);
}

31. Writing programs in C for number system conversion


Binary to Decimal
#include<stdio.h>
#include<conio.h>
#include<math.h>
#include<string.h>
void main()
{
clrscr();
char bin[30];
long sum;
int i,len,pval;
gets(bin);
len=strlen(bin);
pval=len-1;
sum=0;
for(i=0;i<len;i++)
{
sum=sum+(bin[i]- 48)*pow(2,pval);
pval--;
}
printf("The decimal value is:%ld",sum);
getch();
}

22

23

Decimal to Binary
#include<stdio.h>
#include<conio.h>
#include<string.h>
void main()
{ clrscr();
long dec;
int rem,i;
char bin[50];
printf("What is the decimal number?:");
scanf("%ld",&dec);
i=0;
while(dec>0)
{ rem=dec%2;
dec=dec/2;
bin[i]=char(rem+48);
i++;
}
bin[i]='\0';
strrev(bin);
printf("\nThe binary value is:%s",bin);
getch();
}

Decimal to Hex

#include<stdio.h>
#include<conio.h>
#include<string.h>
void main()
{ clrscr();
long dec;
int rem,i;
char bin[50];
printf("What is the decimal number?:");
scanf("%ld",&dec);

23

24

i=0;
while(dec>0)
{ rem=dec%16;
dec=dec/16;
if(rem>9)
bin[i]=char(rem+55);
else
bin[i]=char(rem+48);
i++;
}
bin[i]='\0';
strrev(bin);
printf("\nThe hexadecimal value is:%s",bin);
getch();
}

Hex to Decimal

#include<stdio.h>
#include<conio.h>
#include<math.h>
#include<string.h>
long todecimal(char num[]);
void main()
{
clrscr();
char num[30];
long dec;
printf("What is the Hexadecimal number?:");
gets(num);
dec=todecimal(num);
printf("The decimal value is:%ld",dec);
getch();
}
long todecimal(char num[])
{ long sum;
int i,len,pval;
len=strlen(num);

24

25
pval=len-1;
sum=0;
for(i=0;i<len;i++)
{
if(num[i]-48<=9)
sum=sum+(num[i]-48)*pow(16,pval);
else
sum=sum+(num[i]-55)*pow(16,pval);
pval--;
}
return sum;
}

32. Sort an Array of N integers using Bubble Sort technique.


#include<stdio.h>
#include<conio.h>
void main()
{
clrscr();
int a[100];
int i,j,n,temp;
printf("Enter length: ");
scanf("%d",&n);
printf(" Enter %d elements: ",n);
for(i=0;i<n;i++)
scanf("%d",&a[i]);
for(i=0;i<n-1;i++)
{
for(j=i+1;j<n;j++)
{
if(a[i]>a[j])
{
temp=a[i];

25

26
a[i]=a[j];
a[j]=temp;
}
}
}
printf("\nSorted array is: ");
for(i=0;i<n;i++)
printf("%d\t",a[i]);
getch();
}

33. Calculating Standard deviation from an array list


#include<stdio.h>
#include<conio.h>
#include<math.h>
void main()
{
clrscr();
float num[100];
float sum,sd,avg;
int n,i;
scanf("%d",&n);
sum=0.0;
for(i=0;i<n;++i)
{
scanf("%f",&num[i]
);
sum=sum+num[i];
}
avg=sum/n;
sum=0.0;
for(i=0;i<n;++i)
{
sum=sum+pow((avg-num[i]),2);
}
sd=sqrt(sum/n);
printf("%f",sd);
getch();

26

27

34. Median calculation from an array list


#include<stdio.h>
#include<conio.h>
void main()
{
clrscr();
int a[100],n,i,j,temp;
float t1;
scanf("%d",&n);
for(i=0;i<n;++i)
scanf("%d",&a[i]);
for(i=0;i<n;++i)
{
for(j=i+1;j<n;++j)
{
if(a[i]>=a[j])
{
temp=a[i];
a[i]=a[j];
a[j]=temp;
}
}
}
printf("After sorting");
for(i=0;i<n;++i)
printf(" %d ",a[i]);
if(n%2!=0)
printf("\n\nThe median of the array list is %d",a[n/2]);
else
{
t1=(a[n/2]+a[(n/2)-1])/2.0;
printf("\n\nThe median of the array list is %f",t1);

27

28
}
getch();
}
35. Removing duplicate elements from an array list
#include<stdio.h>
#include<conio.h>
#include<string.h>
void main()
{
clrscr();
int i,n,j,k,count;
int num[100];
printf("How many element\n?");
scanf("%d",&n);
printf("Enter number?\n");
for(i=0;i<n;++i)
{
scanf("%d",&num[i]);
}
count=0;
for(i=0;i<n;++i)
{
for(j=i+1;j<n-count;++j)
{
if (num[i]==num[j])
{
for(k=j;k<n;++k)
num[k]=num[k+1];
count++;
}
}
}
for(i=0;i<n-count;++i)
printf("%d ",num[i]);

28

29
getch();
}

36. Finding LCM (Least Common Multiple) of N numbers


#include<stdio.h>
#include<conio.h>
void main()
{
clrscr();
int i,j,n,l,c1,c2;
int num[100];
scanf("%d",&n);
for(i=0;i<n;++i)
scanf("%d",&num[i]);
j=2;l=1;
while(1)
{
c2=0;
c1=0;
for(i=0;i<n;++i)
{
if(num[i]%j==0)
num[i]=num[i]/j;
else
c1++;
if(num[i]==1)
c2++;
}
if(c1>=0&&c1<n)
l=l*j;
if(c1==n)
j++;
if(c2==n)
break;
}

29

30
printf("Lcm is %d",l);
getch();
}

37. Addition of two Large Decimal or Binary numbers using String


#include<stdio.h>
#include<conio.h>
#include<string.h>
char str1[100];
char str2[100];
char str3[100];
void main()
{
clrscr();
int sum,i,len1,len2,len,carry;
gets(str1);
gets(str2);
strrev(str1);
strrev(str2);
len1=strlen(str1);
len2=strlen(str2);
if(len1>len2)
len=len1;
else
len=len2;
carry=0;
for(i=0;i<len;++i)
{
if(str1[i]=='\0')
str1[i]='0';
if(str2[i]=='\0')
str2[i]='0';

30

31

sum=(str1[i]-48)+(str2[i]-48)+carry;
if(sum>9)
{
sum=sum%10;
carry=1;
}
else
carry=0;
str3[i]=char(sum+48);
}
if(carry==1)
{
str3[i]='1';
++i;
}
str3[i]='\0';
strrev(str3);
puts(str3);
getch();
}
./*Addition of 2 Binary numbers
using string*/
#include<stdio.h>
#include<conio.h>
#include<string.h>
void main()
{
clrscr();
char str1[50],str2[50],str3[55];
int len1,len2,len3,sum,carry,i,len;
printf("Enter 1st Binary number: ");
gets(str1);
printf("Enter 2nd Binary number: ");
gets(str2);

31

32
strrev(str1);
strrev(str2);
len1=strlen(str1);
len2=strlen(str2);
if(len1>len2)
len=len1;
else
len=len2;
carry=0;
for(i=0;i<len;i++)
{
if(str1[i]=='\0')
str1[i]='0';
if(str2[i]=='\0')
str2[i]='0';
sum=(str1[i]-48)+(str2[i]-48+carry);
if(sum>1)
{
sum=sum%2;
carry=1;
}
else
carry=0;
str3[i]=char(sum+48);
}
if(carry==1)
{
str3[i]='1';
i++;
}
str3[i]='\0';
strrev(str3);
printf("The sum is: ");
puts(str3);

32

33
getch();
}

Functions:

Study the Class Lectures so that you can write any programs using functions:
Parameter Passing to a function using call by value and call by reference
Passing Array / character string in a function
Returning values from functions.

38. Write a function GCD( int a, int b) and a main function that calls the GCD(a, b)
function and calculates GCD of 4 numbers.
#include<stdio.h>
#include<conio.h>
int a,b,c,d,res,res1;
int gcd(int a,int b)
{
for(;;)
{
res=b%a;
b=a;
a=res;
if (a==0)
break;
}
return b;
}
void main()

33

34
{
clrscr();
printf("Enter numbers?\n");
scanf("%d %d %d %d",&a,&b,&c,&d);
res1=gcd(a,b);
res1=gcd(c,res1);
res1=gcd(d,res1);
printf("The GCD is %d ",res1);
getch();
}

39. Write a function fact(int a) that calculates the factorial of a number


#include<stdio.h>
#include<conio.h>
long fact(int a)
{
int i;long fact=1;
for(i=a;i>0;--i)
fact=fact*i;
return fact;
}
void main()
{
clrscr();
int n;
long facto;
scanf("%d",&n);
facto=fact(n);
printf("The Factorual of the number: %ld",facto);
getch();
}

34

35

40. Write a program using function that calculates nCr = (n ! ) / ( !r ) * (n-r)!


#include<stdio.h>
#include<conio.h>
long fact(int a)
{
int i;long fact=1;
for(i=a;i>0;--i)
fact=fact*i;
return fact;
}
void main()
{
clrscr();
int n,r;
long facto,f1,f2,f3;
scanf("%d %d",&n,&r);
f1=fact(n);
f2=fact(r);
f3=fact(n-r);
facto=f1/(f2*f3);
printf("The nCr is : %ld",facto);
getch();
}

41. Write a function Max(int a, int b) and a main function that calls the Max(a, b)
function and calculates Maximum of N numbers.
#include<stdio.h>
#include<conio.h>
int Max(int a,int b)
{
if (a>b)
return a;
else
return b;

35

36

}
void main()
{
clrscr();
int num,n,i,max;
scanf("%d",&n);
scanf("%d",&num);
max=num;
for (i=0;i<n-1;++i)
{
scanf("%d",&num);
max=Max(max,num);
}
printf("%d",max);
getch();
}

42. Write a function IsPrime(int a) that returns 1 if the parameter variable a is a


prime number, otherwise 0. Write a main function that calls the IsPrime(a)
function and displays whether a given number from keyboard is Prime or not.
#include<stdio.h>
#include<conio.h>
int Isprime (int a)
{
int i;
for(i=2;i<a/2;++i)

36

37
{
if (a%i==0)
return 0;
}
return 1;
}
void main()
{
clrscr();
int num,res;
scanf("%d",&num);
res=Isprime(num);
if (res==1)
printf("The Number is prime");
if(res==0)
printf("The Number is not prime");
getch();
}

43. Write a function LCM( int a, int b) and a main function that calls the LCM(a, b)
function and calculates LCM of 4 numbers.

#include<stdio.h>
#include<conio.h>
long LCM(int a,int b);
void main()
{
clrscr();
long res;
int a,n,i,b;
printf("Calculate LCM of ? numbers ");
scanf("%d",&n);
scanf("%d",&a);
res=a;

37

38
for(i=0;i<n-1;++i)
{
scanf("%d",&b);
res=LCM(res,b);
}
printf("LCM is %ld",res);
getch();
}

Two dimension array

44. Addition of two 2D matrix (ordinary cell by cell Addition)


#include<stdio.h>
#include<conio.h>
#define r 4
#define c 4
void main()
{
clrscr();
int mat1[r][c];
int mat2[r][c];
int mat3[r][c];
int i,j;
for(i=0;i<r;++i)
for(j=0;j<c;++j)
scanf("%d",mat1[i][j]);
for(i=0;i<r;++i)
for(j=0;j<c;++j)
scanf("%d",mat2[i][j]);
for(i=0;i<r;++i)
for(j=0;j<c;++j)

38

39
mat3[i][j])=mat1[i][j]+mat2[i][j];
for(i=0;i<r;++i)
{
for(j=0;j<c;++j)
{
printff("%d",mat3[i][j]);
}
printf("\n\n");
}

getch();
}
45. Multiplication of two 2D matrix (ordinary cell by cell multiplication )
#include<stdio.h>
#include<conio.h>
#define r 2
#define c 2
void main()
{
clrscr();
int mat1[r][c];
int mat2[r][c];
int mat3[r][c];
int i,j;
for(i=0;i<r;++i)
for(j=0;j<c;++j)
scanf("%d",&mat1[i][j]);
for(i=0;i<r;++i)
for(j=0;j<c;++j)
scanf("%d",&mat2[i][j]);
for(i=0;i<r;++i)
for(j=0;j<c;++j)
mat3[i][j]=mat1[i][j]*mat2[i][j];

39

40

for(i=0;i<r;++i)
{
for(j=0;j<c;++j)
{
printf(" %d ",mat3[i][j]);
}
printf("\n\n");
}

getch();
}

46. Transpose a 2D matrix


#include<stdio.h>
#include<conio.h>
#define r 4
#define q 4
void main()
{
clrscr();
int row,col;
int num[r][q];
int num2[r][q];
for(row=0;row<r;++row)
{
for(col=0;col<q;++col)
scanf("%d",&num[row][col]);
}
for(row=0;row<r;++row)
{
for(col=0;col<q;++col)
{
printf(" %d ",num[row][col]);
}
printf("\n\n");
}

40

41

printf("\nAfter transposing\n\n");
for(row=0;row<r;++row)
{
for(col=0;col<q;++col)
{
num2[col][row]=num[row][col];
}
}
for(row=0;row<r;++row)
{
for(col=0;col<q;++col)
{
printf(" %d ",num2[row][col]);
}
printf("\n\n");
}
getch();
}

47. Magic Square of ( N x N ) matrix where N is an odd number.


#include<stdio.h>
#include<conio.h>
int matrix[100][100];
void main()
{
clrscr();
int r,c,start,num,n;
scanf("%d",&n);
start=n/2;
num=2;

41

42
matrix[0][start]=1;
r=0;
c=start;
while(1)
{ r=r-1;
c=c+1;
if(r<0&&c<n)
{ r=n-1;
matrix[r][c]=num;
}
else if(r>=0&&r<n&&c<n&&matrix[r][c]==0)
{
matrix[r][c]=num;
}
else if(r>=0&&r<n&&c>=n)
{ c=0;
matrix[r][c]=num;
}
else if(r<0&&c>=n)
{ r=r+2;
c=c-1;
matrix[r][c]=num;
}
else if(r>=0&&r<n&&c>=0&&c<n&&matrix[r][c]!=0)
{ r=r+2;
c=c-1;
matrix[r][c]=num;
}
if(n*n==num)
break;
num++;
}
for(r=0;r<n;++r)
{
for(c=0;c<n;++c)
{
printf("%d\t",matrix[r][c]);
}
printf("\n\n");
}

42

43

getch();
}
Structure and Union
#include<stdio.h>
#include<conio.h>
#define total 2
void input();
void calcavg();
void display();
struct list
{
long roll;
float quiz[3],avg;
};
struct list student[total];

void main()
{
clrscr();
input();
calcavg();
display();

getch();
}
void input()

43

44

{
int i,j;
float q;
for(i=0;i<total;++i)
{
printf("Enter roll of student %d\n",i+1);
scanf("%ld",&student[i].roll);
for(j=0;j<3;++j)
{
printf("Enter quiz %d marks\n",j+1);
scanf("%f",&q);
student[i].quiz[j]=q;
}
}
}
void calcavg()
{
int i,j;
float average,sum;
for(i=0;i<total;++i)
{
sum=0.0;
for(j=0;j<3;++j)
{
sum= sum+student[i].quiz[j];
}
average=sum/3;
student[i].avg=average;
}
}
void display()
{
int i,j;
for(i=0;i<total;++i)
{
for(j=0;j<3;++j)
{
printf("student %d quiz %d marks :%f \n",i+1,j+1,student[i].quiz[j]);
}
printf("\nAvg of student %d : %f\n\n",i+1,student[i].avg);
}

44

45
}

Recursion
48. Find X Using recursive functions
n

#include<stdio.h>
#include<conio.h>
long xn(int x,int n);
void main()
{
clrscr();
int x,n;
long res;
scanf("%d %d",&x,&n);
res=xn(x,n);
printf("%ld",res);
getch();
}
long xn(int x,int n)
{
if(n==0)
return 1;
return(x*xn(x,n-1));
}

49. Find factorial of N using a recursive function


#include<stdio.h>
#include<conio.h>
long fact(int n);
void main()
{
clrscr();
int num;

45

46
long res;
printf("What is the number?=");
scanf("%d",&num);
res= fact(num);
printf("The result is:%ld ",res);
getch();
}
long fact(int n)
{
long res;
res=1;
while(n>1)
{ res=res*n;
n--;
}
return res;
}

50. Finding Nth Fibonacci term using recursion and drawing recursion tree for the
Nth term.
#include<stdio.h>
#include<conio.h>
long fabo(int n);
void main()
{
clrscr();
int n;
long res;
scanf("%d",&n);
res=fabo(n);
printf("%ld",res);
getch();
}
long fabo(int n)
{

46

47
if(n==1)
return 0;
if(n==2)
return 1;
return (fabo(n-1)+fabo(n-2));
}

51. Calculate the sum of the numbers 1 to 100 or 1 to N using a recursive function.
#include<stdio.h>
#include<conio.h>
long sum(int n);
void main()
{
clrscr();
int n;
long res;
scanf("%d",&n);
res=sum(n);
printf("%ld",res);
getch();
}
long sum(int n)
{
if(n==1)
return 1;
return(n+sum(n-1));
}

52. Display the following series up to nth terms using a recursive function 6 18 108
1944 20952

#include<stdio.h>
#include<conio.h>

47

48

long sum(int n);


void main()
{
clrscr();
int n,i;
long res;
scanf("%d",&n);
for(i=1;i<=n;++i)
{
res=sum(i);
printf("%ld ",res);
}
getch();
}
long sum(int n)
{
if(n==1)
return 6;
if(n==2)
return 18;
return(sum(n-1)*sum(n-2));
}

48

You might also like