Loading
C - programming
C-programming
language
C is a programming
language developed by denis ritchie in 1972. It was official language of Bells
labs. All the programming language broadly categorized into two; high level
language and low level language. C stands in between HLL and LLL. It is capable
of developing strong programs, viruses and almost all parts of operating system
like recoded UNIX in 1973 and linex in 1991.
Features of C
1.
General
purpose language.
2.
It
is high level assembly language.
3.
It
is modular and structural concept as debugging, testing and maintenance are
easy.
4.
It
is machine independent also.
5.
It
is a free form language.
6.
Introduction
of incremental/decrement operator.
7.
It
has low level(bit wise) programming available
Advantages and
disadvantages of C
Advantages
· It is machine
independent programming language.
· It is easy to used
and implement.
· It is the mother of
all the modern programming language.
Disadvantages
· There is no runtime
checking.
· On larges programs.
It is hard to fix errors
· It does not support
modern programming methodologies oriented programming language.
Header file
A file that is
defined to be included at the begging of a program in c language that contains the
definitions of data types, variables and functions in the program is called
header file. The entire header file has the extension {.h} some of the frequent
use header files are stdio.h, conio.h, math.h, string.h ctype.h etc.
Identifiers
Identifiers are the
name given to various program elements such as constants. Variables, function names and arrays etc.
every element in the program has its own distinct name.
Keyword
The basic building
block of program statement is called keywords. All the keywords are basically
the sequence of characters that have one or fixed meaning these keywords not
used as variable name
Auto
Break
Case
Char
Const
Continue
Default
Do double
Ele
Enum
Extem
Float
For
Goto
If
Int
Long
Register
Return
Short
Signed
Sizeof
Static
Struct
Switch
Typedof
Union
Unsigned
Void
Volatile
While
Variable and constant
The variable or
literal is like as container contain value. The value of contents can be
changed during program execution but constant is a data which remains constant
during program life cycle
Types of variable.
1.
Static
variable: Any variable which is declared by using keyword static is called
static variable. The value of static variable is remain fixed for the other
function but may change within same function boundary.
2.
Global
variable: Any variable which is declared before main function is called global
variable this variable can be accessed
from any member functions.
3.
Local
variable: any variable which is declared within the function is called local
variable. This type of variable can be accessed within the same member function
only.
Datatype in c
A set of data that
specifies the possible ranges of values in a program and stored in memory are
called data types. Data types are used to define variables before use it. There
are two types of data type
1.
Primary date types: the basic
fundamental of data having unit feature on c programming is called
primary data types. The example of primary data types are
1.
Void
type : void >> 0 byte
2.
Character
Type : Chare >> 1 byte
3.
Number
type : Int >> 2 byte, Float, Long >> 4 byte, Double >> 8 byte
The Operators
Operators are special
type of symbols or characters used to manipulate all type of dta used in
computer system. For example 5 +10 where + sign is an operator.
Types of Operators.
1.
Arithmetic operator:
Arithmetic or
mathematic operator are used for mathematical manipulation. For mathematical
manipulation, numerical data are used. Some mathematical operators are
a.+ ->
Addition or Unary plus
b.
- -> Subtraction
c. *
-> multiplication
d.
/
-> Division
e.% ->
Modulo Division.
2.
Relational Operator :
The relational operators are used to compare
two or more quantity.
Operators Meaning
== Is equal to
!= is not equal to
< Less
than
<= Less than and equal to
> Greater than
>= Greater than and equal to
3.
Logical operator:
it is used to combine
two or more relational operators. It makes decision building block with
relational operator.
Operator
Symbol Example
AND
&& exp1 && exp2
OR || exp1
|| exp2
NOT
! !expl
4.
Ternary operator:
The ternary operator is C’s only
ternary operator, meaning that it takes three operands. Its syntax is
exp1 ? exp2: exp3;
If exp 1 evaluates to
true (that is, nonzero), the entire expression evaluates to the value of exp2.
If exp1evaluates to false (that is, zero), the entire expression evaluates as
the value of exp3. For example, the following statement assigns the value 1 to
x if y is true and assigns 100 to x if y is false:
x= y ? 1: 100;
Likewise, to make z
equal to the larger of x and y, you could write z= (x>y) ? x : y;
Perhaps you’ve
noticed that the conditional operator functions somewhat like an if statement.
The preceding statement could also be written like this:
if(x>y)
z = x;
else
z = y;
The ternary operator
can’t be used in all situations in place of an if...else construction, but the
conditional operator is more concise. The ternary operator can also be used in
places you can’t use an if statement, such as inside a single printf()
statement:
printf("The
larger value is %d",((x >y)?x:y));
5.
Comma operator:
It permits two
different expression to appear in situation where only one expression would
ordinarily be used.
Example: {
int a, b, c;
c=(a= 10,b=20,a+b);
print f("c = %d",
c);
}
Statement
Any line written in a
‘c’ editor that normally terminates by a semicolon ‘;‘ is called statement.
Examples:
int a, b, c, d= 55;
float rate;
char n; etc.
The different types
of statements are:
a) Null statement:
If you place a
semicolon by itself on a line, you create a null statement--a statement that
doesn’t perform any action. This is perfectly legal in C. Example:
;- Null statement
b) Expression statement:
An expression
statement is a constant, variable or combination of constant and variable. This
can also include a function call. An expression statement consists of any valid
C expression and followed by a semicolon.
Examples:
a=b; -Expression
statement
c=a+b;
- Expression statement
greater
(a,b,c); -Function
call
c) Compound
statement:
A compound statement,
also called a block, is a group of two or more C statements within a pair of
braces ({ and}). Unlike an expression statement, a compound statement does not
end with a semicolon.
Example:
{
printf("Hello, ");
printf("sathi!");
}
In C, a block can be
used anywhere a single statement can be used. Many examples of this appear
throughout this book. Note that the enclosing braces can be positioned in
different ways.
d) Control statement:
Control statements
are used to create special program features, such as logical tests, loops and
branches. Examples:
i) if(a>b)
printf("A is
greater");
else
printf("B is
greater");
ii) while
Comments And Escape
Sequences
Ans: Comments are the
statements that are used for user aid. Such statements are ignored by the
compiler. A comment is denoted by
/ *……………. */ For
multi statements
Anything written
between this is ignored by the compiler
// For single
statement
Escape sequence:
These are the characters not printed when used but provide various functions.
Escape sequences are always started with a backslash' \'. Commonly used escape
sequences are:
Character Escape sequence
bell (alert) \a
backspace \b
horizontal tab \t
new line \n
carriage return \r
quotation mark \"
backslash \\
null \0
etc.
Symbolic constants:
A symbolic constant allows a name to appear in
place of numeric constant, character constant or a string. symbolic constants
are usually defined at the beginning of the program. Symbolic constants may
appear later in the program in place of numeric constants, character constant
and so on. At the time of compiling each occurrence of a symbolic constant get
replaced by its corresponding character sequence. Examples:
#defineAND &&
# define Pi 3.1412
# define True 1
# define friend "Susan"
etc.
Library functions:
Many functions of C is carried out by library
functions. These functions perform file access, mathematical computation
graphics, memory management data conversion etc. A typical set of library
functions will include a large number of functions that are common to most C
compilers. Examples : sqrt ( ), to lower
( ), to upper, abs ( ) etc.
c) Header files: By
placing thern required library function declaration in special source file is
called header file.
Or
•Header files contain
definitions of funètions and variables which can be incorporated into any C
program by using the pre-processor #include statement.Standard header files are
provided with each compiler, and cover a range of areas:string handling,
mathematics, data conversion, printing and reading of variables, etc.
•To use any of the
standard functions, the appropriate header file should be included.This is done
at the beginning of the C source file. For example, to use the function
printf() in a program, the line #include <stdio.h> should be at the
beginning of the source file, because the declaration for printf() is found in
the file stdio.h. All header files have the extension ii
#include
<string.h>
#include
<math.h>
#incilude "mylib.h"
The use of angle brackets < > informs the
compiler to search the compiler’s include directories for the specified file.
The use of the double quotes" " around the filename informs the
compiler to start tbe search in the current directory for the specified file.
Some commonly used
header files are:
stdio.h, conio.h,
process.h, math.h, ctype.h, string.h, stdlib.h etc.
Data Types
Data types are used
to declare the variable name in C language. C supports different types of data,
each of which may be represnted differently within the computer’s memory. There
are the various data types and these are:
Data type Data
sub_ type Bytes Format Range
Signed .
character character 1 %c -
128 to 127
Unsigned character 1 %c 0 to 255
Numeric Short
signed 2 %d -32768 to
32767
int
Short Unsigned 2 %d Oto 65535
int
Long signed int 4 %Id —2147483648
to
2147483647
Long
unsigned int 4 %id 0
to
4294967295
Float 4 % f 3.4E—38 to
3.4E+38
Double 8 % if 1.7E—308 to
1.7E+308
Long double 10 %lf 3.4E-4932
to
3.4E
+ 4932
Branching
Branching is based on
decision making. If the decision is satisfied, then it can perform the task,
otherwise it executes the line next to
it.
The various branching
statements are:
(a) if ……………….else
(b) if ……….else if
………………..else
(c) switch. …. .case
Syntax of if,if..else and if..else if..else
statement are:
->The if Statement
if(expression)
statement];
If expression is
true, statement1 is executed. If expression is not true,
statement1 is
ignored.
->The if..else Statement
if(expression)
statement1;
else
statement2;
If expression is
true, statement I is executed; otherwise, statement2 is executed.
->The if..else if..else Statement
if(expressionl)
statement1;
else if(expression2)
statement2;
else
statement3;
If the first
expression, expression!, is true, statement] is executed before the program
continues with the next_statement, If the first expression is not true, the
second expression, expression2, is checked. If the first expression is not
true, and the second is true, statement2 is executed. If both expressions are
false, statement3 is executed. Only one of the three statements is executed at
a time.
Looping
Looping is a process
which allows the data to be repeated unless or until some condition has been
satisfied. The various looping statements are:
(a) for
(b) while
(c) do while
Syntax of while,for and do while statement
are:
a) for
syntax>for (exp1;
exp2; exp3)
{
statement1;
………………….
}
where,
exp1 = Initial
expression
exp2=Conditional
expression
exp3=Increment or
decrement
When a for statement
is encountered during progrars execution, the following events occur:
1. The expression,
exp1 is evaluated. exp1 is usually ai assignment statement that sets a variable
to a particular valuer
2. The expression,
exp2, i.e. condition is evaluated, condition i typically a relational
expression.
3. If exp2,
i.e.condition evaluates to false (that is, as zero), th for statement
terminates, and execution passes to the fir statement following statement.
4. If exp2, i.e.
condition evaluates to true (that is, as nonzero the C statement(s) in
statement are executed.
5. The exp3, i.e.
increment or decrement is evaluated an execu.tion returns to step 2.
B) While
syntax>while
(condition)
{
statement 1;
…………….
}
When program
execution reaches a while statement, the following events occur:
1.
The
expression condition is evaluated.
2. If condition
evaluates to false (that is, zero), the while statement terminates, and
execution passes to the first statement following statement.
3. If condition
evaluates to true (that is, nonzero), the C statement(s) in statement are
executed.
4. Execution returns
to step 1.
C) Do While
syntax: do
{
statement 1;
statement 2;
……………….
} while (condition);
When program
execution reaches a do...while statement, the
following events
occur:
1. The statements in
statement are executed.
2. condition is evaluated. If it’s true,
execution returns to step 1. If it’s false, the loop terminates
Infinite Loop
A loop that has no
stopping or never ending condition is called an infinite loop. Example:
for(; ;)
while(1)
{ }
{ }
Break: The "break"
statement is used to terminate the control from the loop.It is normally used in
switch-case statement,the break statement must be used if not the control will
be transferred to the subsequent case condition also. Example:
#include<stdio.h>
#include<conio.h>
void main( )
{
int a =1;
while (a < 20)
{
|
if (a%3= =O)
break;
printf ("%d",a);
}
getch();
}
Continue: The "continue" statement skips the
rest of execution of the loop. Example:
#include<stdio.h>
|
void main()
{
int a =1;
while (a < 10)
{
a=a+ 1;
if (a%3==0)
continue;
printf (‘%d",a);
}
getch();
{
Differentiate between ‘for and ‘while’ statements.
For
|
While
|
a)
The for statement executes the initial expression
first. It then checks the condition, If the condition is true, the statements
execute. Once the statements are completed, the increment expression or
decrement is evaluated. The for statement then rechecks the condition and
continues to loop until the condition is false.
|
It allows repeated
execution of a statement or block of statements as long as the condition
remains true (nonzero). If the condition is not true when the while command
is first executed, the statement(s) is never executed.
|
b)
syntax>
for (exp1; exp2;
exp3)
{
statement1;
……………..
}
where,
exp1 = Initial
expression
exp2=Conditional
expression
exp3=Increment or
decrement
|
syntax>while
(condition)
{
statement1;
……………….
}
|
Example:Displaying
1 to 10 numbers
# include
<stdio.h>
# include
<conio.h>
void main ( )
{
int a;
for (a = 1; a <= 10; +÷a)
printf("%d\t", a);
getch( )
}
|
Example: Displaying
1 to
10 numbers
include <stdio.h>
# include
<conio.h>
void main ()
{
int a;
a= 1;
while (a <= 10)
{
printf("%d\t", a);
a=a+1;
}
getch();
}
|
Differentiate between ‘while’ and ‘do while’ statements. [HSEB-2061,2062]
Ans: Differentiation
between while and do while statements:
While
|
Do while
|
a) It allows
repeated execution of
a statement or
block of
statements as long
as the
condition remains
true(nonzero). If the condition is
not true when the
while
command is first
executed, the
statement(s) is
never executed.
|
The do while
statement executes a body of instruction at least one time and more if an
expression remains true.
|
a)
syntax: while (condition)
{
statement 1;
statement 2;
………………
}
|
syntax: do
{
statement 1;
statement 2;
………………
} while (condition)
|
Example: A program
for
printing 1 to 10
nos.
#
include<stdio.h>
#
include<conio.h>
void main ()
{
int a;
a= 1;
while (a <= 10)
{
printf("%d\t", a);
a = a + 1;
}
getch( ) ;
}
|
Example: A program
for
printing 1 to 10
nos.
#
include<stdio.h>
#include<conio.h>
void main ()
{
int a= 1;
do
{
printf("%d\t", a);
a=a+1;
} while (a <=10);
getch( ) ;
}
|
Differentiate between local and global variables.
Differentiation
between local and_global_variables:
Local variable
|
Global variable
|
a)
It is the way to
declare the
variable. A
variable is declared within a block is called a local variable to that block.
b)
Example:
void main ()
{
inta= 10;// local
to
//main
|
A variable declared
outside a
block that is
available to other black of the program is called a global variable.
Example:
int a = 10; //
global variables
voidmain()
{
int a=6;
|
switch case statement
Syntax:
switch
(variable_name)
{
case value 1
………………….
break;
case value2:
…………………….
break;
case value3:
………………..
break;
default:
……………………
}
example : int a;
printf("Enter number of day:"):
scanf("%d",&a);
switch (a)
{
case 1:
printf ("Sunday");
break;
case 2:
printf ("Monday");
break;
case 3:
printf("Tuesday");
break;
case 4:
printf("Wednesday");
break;
case 5:
printf’Thursday");
break;
case 6:
priritf("Friday");
break;
case 7:
printf("Saturday"):
break
default:
printf ("nor the value");
exit(O);
}
and an example of "goto" statement.
The goto statement is
used to alter the normal sequence of t program execution by transferring
control to some other parts the program.
syntax> goto /
identifier;
Example: A program
for finding odd or even numbers by usii GOTO statement.
# include
<stdio.h>
# include
<conio.h>
void main ( )
{
int n;
char ch;
x : clrscr ( );
printf("Enter any number =");
scanf("%d", & n);
if (n% 2 = =0)
printf ("Even number");
else
printf ("Odd number");
printf("Do you want to continue (Y/N)
= ");
scanf("%c", ch);
if(ch = = ‘Y’ // ch = 'y')
goto x;
getch();
}
Getchar And Putchar Function With Limitation
Getchar: It returns only one
character at a time from a standard input device. The getchar accept all type
of characters even space, tab, blank, return. This function has the limitation,
i.e. this isn’t used for numeric operations and also not used for looping.
Example:
#
include<stdio.h>
#include<conio.h>
void main ()
{
char C;
c = getchar ();
printf("\n input character = %c",
c);
getch();
}
Putchar: It transmits a
single character to a standard output device. This function accepts all types
of characters even space, tab, blank. This function has also the limitation,
that isn’t used for numeric operation and not displaying for loops.
Example:
# include
<stdio.h>
#include<conio.h>
void main ( )
{
char ch;
printf("Enter any letter:- ");
ch = getchar ();
printf ("output");
putchar (ch);
getch();
}
Format Specifier
Format specifiers are
characters starting with % sign and followed
with a character. It
identifies the data type that is being processed.
It is also known as "conversion
specifier".
Some of character
specifications used with format specifiers are:
Character Meaning
% First
character
— (minus sign) Used for left justification.
w Used
for specifying width of field.
• (dot)
Used for specifying decimal part.
p Used
for specifying precision.
List of format specifiers symbol.
Data type Format
specifier symbol used
Integer %d
Unsigned integer
% u
Octal % o
Hexadecimal % x
Float
% f
Float (scientific or exponential) %e
character %c
string %s
Example:
main ()
{
int
r;
float
a;
r
2;
a
= 12.562, 01547;
printf
("%d", r); // prints 2 at initial position of screen
printf
("%l0d’, r); // prints 2 leaving 10 spaces. Righ justified.
printf
("%-d", r); // prints 2 left justified
printf("%f",a);
// prints 12.56201547
printf("%10.2f",a); //prints 12.56
leaving 10 spaces
printf("%e"a);
// prints l.256201c + 01
printf
("%15.2e",a) //prints 1.25e + 01 leaving 15 space
Right
justified.
}
Nested Loop
A loop inside the
loop is called nested loop.
Write a program to calculate area and circumference of a
circle
1. Where radius of a circle is in puted and define pi as
constant.
#include<stdio.h>
#include<conio.h>
#define pi 3.14
void main()
{
int r;
float a,c;
printf("Enter value of radius=");
scanf("%d" ,&r);
a=pi*r*r;
c=2*pi*r;
printf("Area=%.2f\n" ,a);
printf("\nCircumsatances=%.2f",c);
getch();
}
2. Write a program that read principle, time and rate to
calculate simple interest and total amount.
#include<stdio.h>
#include<conio.h>
void main()
{
int p,t;
float r,si,ta;
printf("Enter
Principle=");
scanf("%d" ,&p);
printf("Enter time=");
scanf("%d" ,&t);
printf("Enter rate=");
scanf("%f’,&r);
si=(p*t*r)/100
ta=si+p;
printf("Simple Interest=%.3fn"
,si);
printf("\nTotal Amount=%.3f"
,ta);
getch();
}
3. Write a program to convert temperature in Fahrenheit
(F) into centigrade (c). [F = 1.8 c + 321
#include<stdio.h>
#include<conio.h>
void main ()
{
Int f;
float C;
printf ("\n enter temp in fahrenheit =");
scanf (‘%d’, & f);
c=(f-32)/1.8;
printf ("Result = %.2f", c);
getch ();
}
4. Write a program to supply length and breadth of a
rectangle. Find out area and perimeter.
#include
<stdio.h>
#include
<conio.h>
void main ( )
{
int l, b, a, p;
printf ("Enter breadth & length =");
scanf ("%d%d", &b, &l);
a = l*b;
p=2*(l+b);
printf ("Area of a rectangle = %d\n",
a);
printf ("Perimeter of a rectangle =
%d\n", p);
getch ( );
}
5. Write a program that accepts an integer and checks
whether it is divisible by 3 and 5 or not.
#include<stdio.h>
#inciucie<conio.h>
void main()
{
int a;
printf("Enter an integer=");
scanf("%d",&a);
if(a%3= = 0 && a%5= =0)
printf ("Divisible by 3 and 5.");
else
printf("Not divisible by 3 and 5");
getch();
}
6. Write a C program to read any number and check whether
th entered number is divisible by 5 but not by
11. [HSEB 2065]
7. Write a program to enter any year and check whether
the entered year is leap or not.
#include<stdjoh>
#include<conjo.h>
void main ()
{
int year;
printf ("Enter year = ‘);
scanf("%d", & year);
if(year% 400 = = 0 || year % 100! = 0
&& year% 4 = = 0)
printf ("Leap year");
else
printf ("Not a leap year =");
getch();
}
8. Write a program that
asks cost of price(CP) and selling price(SP) and determine whether there is
gain or loss. [HSEB-2066}
#include<stdio.h>
#include<conio.h>
void main()
{
int CP,SP,loss,gamn;
printf("Enter value of CP and SP:"):
scanf("%d%d", &CP,&Sp);
if(SP>CP)
{
gain=SP-CP;
printf("GamnRs%d",gain);
}
else
{
loss=CP-SP;
printf("Loss Rs%d" loss);
}
getch();
}
9. Write a program of NTC to enter number of calls and
find out total, vat (10% of total), telecom service charge (10% of total + tsc)
and total amount. The rate of total is given below:
Number of calls
number of call <=175
otherwise, number of call is more than 175
#include<stdio.h>
#include<conio.h>
void main()
{
int noc;
float total, vat, tsc, tarnt;
printf ("Enter total number of calls =");
scanf ("%d", &noc);
if(noc <=175)
{
total = 200;
tsc = total * 101100;
vat = (total + tsc)* 10/100;
tamt total + vat + tsc;
printf ("Total amount = %f", tamt);
}
else
{
total = 200 + (nec — 175)*2;
tsc = total * 10/100;
vat = (total + tsc) * 10/100;
taint = total + vat + tsc;
printf ("Total amount = %f’, tamt);
}
getch( );
}
10. Write a
program to enter any three numbers and find out the middle number.
11. Write a menu driven program which has the following option
1 .Perimeter of circle
2.Perimeter of rectangle
3.Perimeter of triangle
#include <conio.h>
#include
<stdio.h>
void main()
{
int choice;
printf("Enter choice 1 for perimeter
of circle\n");
printf("Enter choice 2 for perimeter
of rectangle\n");
printf("Enter choice 3 for perimeter
of triangle\n");
printf("Enter
your choice:\n");
scanf("%d",&choice);
switch(choice)
{
case 1:
{
float rad, per;
printf("\nEnter the radius of circle");
scanf("%f’ ,&rad);
per=(2*22*rad)17;
printf("\nThe perimeter of circle is: %f",per);
break;
}
case 2:
{
int b,l,per;
printf("\nEnter the breadth of
rectangle:\t");
scanf("%d"
,&b);
printf ("\nEnter the length of
rectangle:\t");
scanf("%d" ,& l);
per = 2 *(l+b)
printf ("\nEnter the perimeter of
rectangle is:\d" , per);
break;
}
case 3:
{
int a,b,c,per;
print("\nEnter the sides of the
triangle\n");
printf("\nEnter the first side:\t");
scan("%d",&a);
prinf("\nEnter the second side:\t");
scasf(" %d", &b);
printf("\nEnter the third side:\t");
per=a+b+c;
prinrf("\nThe perimeter of triangle is:
%d",per);
break;
}
default
{
print("wrong choice") ;
}
getch();
return 0;
}
12. Write a program to find sum of 1 to 100 numbers.
#include
<stdio.h>
#include<conio.h>
void main()
{
Int d n, sum = 0;
for (n = 1; n < = 100; ++n)
{
sum = sum + n;
sum = sum + n;
printf ("sum =%d", sum);
}
getch ( );
}
12. Write a ‘C’ program to print all from A to Z
13. Write a program to compute factorial for a given
number i where n is a non-negative integer,[n!=1*2*34 (n1)*n].
14. Write a program to print the series 1,5,9,13 upto
10th terms.
15. Write a C program to read any number and entered
number is palindrome or not.
#include<stdio.h>
#include<conio.h>
void main(
{
int n,num,rev=0,r;
printf("Enter
any number");
scanf("%d",&num);
n=num;
while(num!=0)
{
r=num% 10;
rev=rev *10+r;
num=num/10;
}
if(n==num)
printf("The entered number is palindrome");
else
printf("The entered number is not
palindrome");
getch();
}
16. Write a program to display Fibonacci series upto 10
terms. ie.g.0112358
#include<stdio.h>
#include<conio.h>
void main()
{
int a, b, c, j;
printf ("\n the series’);
a = 0;
b = 1;
printf ("%d \t%d\t", a, b);
for(j = 0;j <10;j+ +)
{
C = a + b;
printf ("%d\t", c);
a = b; b = C;
}
getch ();
}
17. Write a program to input an integer number and checks
whether it is prime or not. [HSEB-2066]
18. Write a program to print multiplication table of
first 10 natural number.
(Nested Loop)
19. Write a program to print multiplication table of
first 10 natural number.
#include<stdio.h>
#include<conio.h>
void main()
{
int i,j,c;
for(i= 1 ;i<= 1 0;++i)
{
for(i= 1
;j<=10;++j)
{
C=i*j;
printf(%d*%d=%d\t",i,j,c);
}
printf("\n");
}
getch();
}
20. Write a program to display factorial number of first
10 natural number.
#include<stdio.n>
#lnclude<conlo.n>
void main()
{
int i,j,f
for(i=1;i<=10;÷+i)
{
f=i*j;
for(j=i;j>O;--j)
{
f=f*j
printf( %d=%d\n ,i,f);
}
}
getch();
}
21. Write a program to display prime number upto 500
numbers.
#include<stdio.h>
#include<conio.h>
void main()
{
int i,j;
for(i=2;i<=500;++i)
{
for(j=2;j<=i;++j)
{
if(i%j==0)
break;
}
}
if(i==j)
printf( "%d\t",i);
getch();
}
22. Write a program to generate the following:
1
2 2
3 3 3
4 4 4 4
5 5 5 5 5
#include<stdio.h>
#include<conio.h>
void main()
{
int i,j;
for(i=1;j<=5;++i)
{
for(j=1;j<=i;++j)
{
printf("%d",i);
}
printf("\n");
}
getch();
}
23. Write a program to display the following series:
1
2 2
3 3 3
4 4 4 4
5 5 5 5 5
#include
<stdio.h>
#include
<conio.h>
voidmain()
{
int n,a,j;
for(a=1;a<=5;a++)
{
for (j= 0; j < = 5-a ; j+ +)
{
printf (" ")
for(j=1;j<=a;j++)
{
printf ("%d ",
a);
printf ( "\n" );
}
}
getch ();
}
24. Write a program
to generate the following:
1
12
123
1234
12345
#include<stdio.h>
#include<conio.h>
void main()
{
int i,j;
for(i=1 ;i<=5;++i)
{
for(j=
1 ;j<=i;++j)
{
printf("%d" ,j);
}
printf("\n");
}
getch();
}
25. Write a C Program
to display the following:
55555
4444
333
22
1
#include<stdio.h>
#include<conio.h>
void main()
{
int i,j;
for(i=5;i>=0;--i)
{
for(j=
1 ;j<=i;++j)
{
printf( "%d" ,i);
}
printf"(\n");
}
getch();
}
26. Write a program
to display the following table:
10 20 30 40
20 30 40 50
30 40 50 60
4050 60 70
#include<stdio.h>
#include<conio.h>
void main()
{
int i,j;
for(i=0;i<=4;++i)
{
for(j= 1 ;j.<=4;++j)
{
printf("%d\t",(i+j)* 10);
}
printf("\n");
}
getch();
}
27. Write a C program
to display the pyramid of numbers for a given number.
1
1 2 1
1 2 3 2 1
1 2 3 4 3 2 1
1 2 3 4 5 4 3 2 1
1 2 3 4 5 6 5 4 3 2 1
1 2 3 4 5 6 7 6 5 4 3 2 1
#include<stdio.h>
#include<conio.h>
void main()
{
int n,a,j,k;
printf("Enter a number to form a
pyramid:");
scanf("%d",&n);
printf("\n\t\n\t");
for (a = 1; a < =n; a ++)
{
for(j = 1;j<=n-a;j ++)
{
printf (" ");
for (k=1 ;k<=a;k++)
{
printf ("%d", k);
for (k=a-1 ;k>0;k--)
{
printf("%d ", k);
printf ("\n\t\t");
}
}
}
getch ();
}
28. Write a program
to display the following series
1
23
45 6
78 9 10
11 12 13 14 15
[i.e.Floyd’s Theorem]
#include<stdio.h>
#include<conio.h>
void main()
{
int i,j=l,k;
for(i= 1
;i<=5;++i)
{
for(k =1 ;k<=i;j++,k++)
{
printf("%dt",j);
}
printf("\n");
}
getch();
}
Or,
#include<stdio.h>
#include<conio.h>
void main()
{
int i,j,sum=0;
for(i=1 ;i<5;++i)
{
for(j=0;j<i;++j)
{
sum=sum+1;
printf("%d\t",sum);
}
printf("\n");
}
getch();
}
Array
An array can be
defined as a set of finite number of homogeneous elements or data items. It
means an array can contain one type of data only, either all integers ,all
characters, all floating point etc. The individual data items are represented
by their corresponding array elements(i.e. first data item is represented by
first array element, second data item is represented by second array element
and so on). The individual array elements are distinguished from one another by
the value that is assigned to a subscript.
Declaring of an array
int a[5];
Where int specifies
data type of elements array, "a" is the name of array and number
specified inside the square brackets is number of elements an array can stores.
Followings are some of the concept to be remembered about
arrays:
a) The individual
element of an array can be accessed by specifying name of array, followed by
index or subscript inside square brackets. Example: int 45];
b) The first element
of array has index zero[0].It means first element and last element will be
specified as a[0] and a[4] respectively.
c) The elements of
array always be stored in consecutive memory locations.
d) The size of array
is given by (Upperbound-lowerbound)+1
(4-0)+ 1 =5.
where O=lowerbound
and 4=upperbound.
e) Arrays can be read
or written through loop.If we read a one- dimensional array, it requires one
loop for reading and writing.
If we are reading or
writing two-dimensional array it would require two loops. Sirnilarly array of n
dimension would require n loops.
There are two types
of array and these are
(a) One-dimensional
array
(b) Two- dimensional
array
(a) One dimensional
array:
It consists only either rows or columns.
syntax> data _
type array_name [expression];
e.g. int marks [500];
char sentence [100];
float percentage [8];
etc.
(b) Two dimensional
array:
It consists both rows and columns. syntax> data — type array name
[expression 1] [expression2];
e.g.
int matrix [5] [5];
char name [10] [30];
etc.
1.
Differentiate
between one-dimensional and two-dimensional array.
Differentiation
between one-dimensional and multi-dimensional array:
One-Dimensional
array
|
Two-dimensional
array
|
a)Only one
subscript is used in
one-dimensional
array
|
Two subscript is
used in two-
dimensional array.
|
b) Syntax>data_type
array_name [subscript];
Examples:
char name[20];
int marks[5]; etc
Here, subscript is
used to denote either rows or columns.
|
Syntax>data_type
array_name [subscript 1]
[subsc ript2];
Examples:
int marks[100][5];
int matrix[5][5];
etc. Here, subscriptl is used to denotes rows and subscript2 denotes columns.
|
c) Only one loop
statement is used to create or retrieve array elements,
|
Two looping
statements are used to create or retrieve array elements, i.e. first loop for
rows and second loop for columns.
|
d) Example: Display
name & age of a student. #include <stdio.h>
#include
<conio.h>
void main ()
{
char name [20];
int age;
printf ("Enter name:");
gets (name);
printf ("Enter age \n");
scanf("%d", &age);
printf
("\n Name :%s", name);
printf ("Age:%d", age);
getch();
}
|
Example: Display
elements of a matrix:
#include
<stdio.h>
#include
<conio.h>
void main ()
{
int
matrixa[2] [2],i,j;
printf("Enter elements of a matrix:"):
for(i=0;i<2;++i)
{
for(j=0;j<2;++j)
scanf("%d",&matrixa[i]
[ii);
}
//Displaying data
for(i=0;i<2;++i)
{
for(j=0;j<2;++j)
printf("%d\t",matrixa[i]
[j]);
printf("\n")
;
}
Getch();
}
|
String Function
A string is a group
of characters of any length. The string enclosed within double quotation marks
is known as a literal. For example, "Hello" is literal. We can use
such strings in our programs to display various kinds of messages on the
screen. The strings can be stored and manipulated as array of characters in C
and C++. The last character in a string is always ‘\0’, a null character. For
example, the string "PROGRAM" can be stored in an array as
0 1
2 3 4
5 6 7
P
|
R
|
O
|
G
|
R
|
A
|
M
|
\0
|
items
The string requires
total 8 locations of array item: seven for the alphabets in the string PROGRAM
and one for the null character. The array item can be declared as:
char item[8];
Other examples of
array declarations are:
int x[25];
char name [20];
float sal[15];
Array declarations
that include the assignment of initial values are
int x[5] = { 56,
42, 90, 65,
55 };
x[0] x[1]
x[2] x[3] x[4]
or char text[6] = { "today"};
char text[6] ={
|
‘t’
|
‘o’
|
‘d’
|
‘a’
|
‘y’
|
‘\0’
|
};
|
|
Text
[0]
|
Text
[1]
|
Text
[2]
|
Text
[3]
|
Text
[4]
|
Text
[5]
|
Text
|
intA[4][3] = { 5, 2, 7,
3, 9,
6,
1, 7,
8
9, 2, 3};
int list[5][10] = { "Ram",
"Shyam",
"Han",
"Gopal",
"Rampayri" };
Differences Between
Array And Unions With Syntax.
Differentiation
between structure and unions:
Array
|
Union
|
Array is the
collection of
data items which
will have
the same name.
|
Union is a
collection of
heterogeneous data
types
|
Each element has
specific
memory space
|
Each element has no
specific
memory space but
space
allocated for
largest elementis is
utilized by other
sized element.
|
Keyword is not
required to
declare array,
|
Keyword is required
to declare
union
|
Array has its type
and these are:
(i) one dimensional
array
(ii) multi
dimensional array
|
Union has no type
|
The syntax of
array:
(i) One dimensional
array:
data_type
array_name [size
of array];
It consists only
rows or columns
i.e. char name
[20];
(ii)
Two-dimensional array:
data_type
array_name[expl] [exp2];
e.g. char name [5]
[25];
It contains rows
& columns.
|
Syntax of union:
union
user_defined_name
{
data_type member 1;
data_type member2;
…………….
data_type
membern;
}
union user_defined_name
van, var2
e.g struct student {
char name [20];
int age;
};
union student one;
|
Example : Display
name & age:
#include
<stdio.h>
#include <conio.h>
void main ()
{
char name [20];
int age;
pnintf ("Enter name:");
gets (name);
printf ("Enter age \n");
scanf ("%d", &age);
printf ("\n Name :%s",
name);
printf("Age:%d", age);
getch () ;
}
|
Example: Display
name & age:
#include
<stdio.h>
#include <conio.h>
void main ()
{
union student
{
char name [20];
int age;
}
one;
printf ("Enter name :\n");
scanf ("%s", one.name);
printf ("\n Enter age:");
scanf ("%d", &one.age);
printf ("\n Name : %s",one.name);
printf ("Age :%d",
one.age);
getch();
}
|
1. Write a program to
display the following numbers.
3,56,76,5,90
#include
<stdio.h>
#include <conio.h>
void main ()
{
int i,num[5]={ 3,56,76,5,90};
printf("List of number\n");
for(i=0;i<4;++i)
printf("%d" ,num[i]);
getch();
}
Write a C program to
read age of 100 person from keyboard,display it in proper format.
#include<stdio.h>
#include<conio.h>
void main ()
{
int i,num[100];
//Giving input from
keyboard
for(i=0;i<lOO;++i)
{
printf( Enter age of 100 persons: ")
scanf ("%d",&num[i]);
}
//Displaying age of
100 persons
printf("List of
number\n");
for(i=0;i<100;++i)
printf("%d" ,num[i]);
getch():
}
3. Write a C program
to read 10 numbers and print them in reverse order
#include<stdio.h>
#include<conio.h>
void main()
{
int num[10],i;
for(i=0;i<O;i++)
{
printf(
Enter a number: );
scanf("%d",&num[i]);
}
printf("The number in reverse
order are:");
for(i=9;i>0;i--)
printf("%d\n\t\t\t\t",num[i]);
getch();
}
4. Write a program to
store ten different constant variables in any array and print out the greatest
number. [HSEB-2064]
#include
<stdio.h>
#include
<conio.h>
void main ()
{
int a[10]={100,1,23,43,56,21,80,54,67,2};
int i, large;
large= a [0];
for(i=0;i<10;i++)
{
if (large < a [i])
large
= a[i];
}
printf
("\n largest no = %d", large);
getch ();
}
5. Write a ‘C’
program to read salaries of 200 employees and count the number of employees
getting salary between 5000-10000. [HSEB-2062]
#include
<stdio.h>
#include <conio.h
>
void main ()
{
int count = 0, salary [200], i;
// Reading salary of 200 employees
for (i= 0; i< 200; i++)
{
printf (" Enter salary :" );
scanf
("%d", & salary [i]);
}
//counting number of employees getting
salary between
//5000 - 10000
for
(i = 0; i < 200; i ++)
{
if (salary [i]> 5000 && salary [i]
< 10000)
count
+ +;
}
printf ("Total number of employees
getting salaries between 500-10000 = %d", count);
getch();
}
The marks obtained by
a student in a 7 different subjects are entered through the keyboard. The
student gets a division as per the following rules:
Percentage greater or
equal to 60 First division
Percentage between 45
and 59 Second
division
Percentage between 35
and 44 Third
division
Percentage less than
35 Fail
Write a program using
C language to process result of all’ students based on specification stated
above.
#include
<stdio.h>
#include
<conio.h>
void main ()
{
char name [20];
int i;
float x [7], per, total = 0;
printf ("Enter name =");
scanf ("%s", name);
for (i= 0; i< 7; i++)
{
printf ("Enter mark of a subject =");
scanf
("%f", &x [i]);
total
= total + x [i];
}
printf
("\n\n");
per
= total/7;
printf
("Name %s\n", name);
printf
("Total = % f\n", total);
printf ("Percentage = %fn",
per);
if (per>60)
printf ("First division\n");
else if (per> = 45)
printf ("Second division\n");
else if (per> = 35)
printf ("Third division");
else
printf ("Fail\n");
getch ();
}
7. Write a program
using C language to read the age of 100 persons and count number of persons in
the age group between 50 and 60. Use "For" and "Continue"
statements. [HSEB 2061]
#include
<stdio.h>
#include <conio.h>
void main ()
{
int age [100];
int i, count 0;
//Reading the age of 100 persons
for(i=0;i<100;i++)
{
printf ("Enter age
of a person :");
scanf("%d",
& age [i]);
}
//Comparing age group between 50 &
60
for (i= 0, i< 100; i++)
{
if (age [i] > = 50 && age {i] <=
6O)
count + +;
continue;
}
printf
("Total number of persons in the age group between 50 and 60 are: %d",
count);
getch();
}
8. Write a program to
find whether the given number is palindrome or not.
#include
<stdio.h>
#include
<conio.h>
void main ()
{
int a[10],num,i=0,result=O,n;
printf("Enter the number:");
scanf("%d",&n);
num=n;
while(num!=0)
{
result=result*
10;
a[i]=num%10;
num=num/
10;
result=result+a[i];
++i;
}
if(result==n)
printf("The number is palindrome");
getch();
}
9. Write a ‘C’
program to input ‘n’ numbers and find out the greatest and smallest number.
[HSEB 2O62]
#include
<stdio.h>
#include <conio.h>
void main ()
{
int n, i, max, a[100], min;
printf ("How many nos ?");
scanf ("%d", &n);
//Reading numbers
for(i=0;i<n;i++)
{
printf ("Enter numbers :");
scanf("%d", &a [i]);
}
// Finding the greatest and smallest
number.
max=a[O];
min=a[0];
for(i=0;i<n;i++)
{
if (a
[i] > max)
max = a[i];
else if( a[i]<min)
min =
a[i];
}
printf ("The greatest number %d\n",
max);
printf ("The smallest number = %d",
min);
getch ();
}
10. Write a program,
which reads marks of N students in an array and add a grace of 10 marks to
every element of the array.
#include<stdio.h>
#include<conio.h>
void main()
{
int n,i,mark[ 10] ,sum[1 0];
printf("Enter how many students:");
scanf("%d" ,&n);
printf("\n\n");
for(i=0;i<n;i++)
{
printf("Enter mark:");
scanf("%d",&mark[i]);
sum [i]=mark[i] + 10;
}
printf("\n\n");
for(i=0;i<n;i++)
printf("The mark of studit after adding
a grace 0f 10 marks:%d\n",sum [i]);
getch();
}
11. Write a program
to enter ‘n’ numbers into one dimensional array and sort and display them in
ascending order.[HSEB-2065]
#include
<stdio.h>
#include
<conio.h>
#define MAX 500
void main ()
{
int a [MAX], i, j, n, temp; printf ("How
many numbers ?");
scanf ("%d", &n);
for(i=0;i<n;i++)
{
printf
("Enter numbers =");
scanf ("%d",& a [i]);
}
for(i=0;i<n;i++)
{
for (j = i+1; j < n; j ++)
{
if(a
[i]> a [i])
{
temp = a[i];
a[i]=a[j];
a [j] = temp;
}
}
}
printf (‘Sorted array\n");
for(i=0;i<n;i++)
{
printf
("%d\t", a[i]);
}
getch();
}
12. Write a program
to read a set of ‘n’ numbers from the standard input device and to sort them in
descending order.
13. Write a C program
that reads name and mark of 10 different students and prints them in tabular
format.
14. Write a program
to input names of ‘n’ number of students and sort them in alphabetical order.
[HSEB-2062]
#include
<stdio.h>
#include
<conio.h>
#include
<string.h>
void main ()
{
char name [100] [100], temp[100];
int
i, j, n;
printf ("Enter number of students =");
scanf("%d’,
&n);
for(i=0;i<n;i++)
{
printf ("Enter name :");
scanf
(‘%s", name [ii);
fflush
(stdin);
}
for(i=0;i<n;i++)
{
for
(j = + l;j <n;j +
{
if(strcmpi (name [i], name [j]) > 0)
{
strcpy(temp, name [i]);
strcpy (hame [i], name [j]);
strcpy (name [j], temp);
}
}
}
for(I =0;I < n;I ++)
{
printf ("%s\n", name
[1]);
}
getch ( );
}
15. Write a C program to read anme and address
of 5 different students,sort them in alphabetical order.
#include<stdio.h>
#include<conio.h>
#includecstring.h>
void main( )
{
char
name[5] [80] ,add[5] [80] ,temp[80,temp 1 [80];
int
i,j;
printf("enter
name and age:");
for(i=0;i<5 ;i++) scanf("%s%s"
,name[i] ,add [i]);
for(i=0;i<5 ;i++)
{
for(j=i+1
;j<5;j++)
if(strcmp (name [i] ,name [3]) >0)
{
strcpy(temp,name[i]);
strcpy(name [i] ,name[j]);
strcpy(name [j] ,temp);
strcpy(temp 1 ,add[i])
strcpy(add[i],add[j]);
strcpy(add [j] ,temp 1);
}
}
printf("The
result\n");
for(i=0;i<5 ;i÷+)
printf("%s\t%s\n" ,name[i] ,add[i]);
getch();
}
16. Write a C program
to read elements of any two matrices and sum of them.
Or,
Write a program to
add two matrices. [HSEB 2065]
#include
<stdio.h>
#include
<conio.h>
void main ()
{
int a[5][5], b[5][5], c[5] [5], i, j;
Printf ("Enter the elements of matrix A
= ");
for (i= 0; i< 5; i+ +)
{
for (j= 0; j< 5; j+ +)
{
scanf("%d",&a[i][j]);
}
}
printf ("Enter
elements of matrix B =");
for (i= 0; i< 5; i+ +)
{
for (j= 0; j< 5; j+ +)
{
scanf("%d",&b[i][j]);
}
}
for (i= 0; i< 5; i+ +)
{
for (j= 0; j< 5; j+ +)
{
c[i][j]
= a[i][j] +b[i][j];
}
}
for (i= 0; i< 5; i+ +)
{
for (j= 0; j< 5; j+ +)
{
printf("%d\t",c[i][j]);
}
}
getch();
}
17. Write a program
to find row sum and column sum of a matrix
18. Write a program
to obtain transpose of a 3X3 matrix. Ans: #include <stdio.h>
19. Write a program
to read a set of numbers from keyboard and to sort out the given array of
elements in ascending order using a function.
21. Read the maximum
and minimum temperature of 7 days of Kathmandu Valley and creates a function to
calculate minimum and maximum temperature, also find the average temperature.
22. Write a program
to enter 10 different number in array variable and check whether the entered
number is prime or not usin function.
#include
<stdio.h>
#include
<conio.h> #include <process.h>
void check (int n);
void main ()
{
int n[10], i;
for (i=0;i< 10;i++)
{
printf ("Enter 10 different
numbers :");
scanf("%d",
&n [i]);
check (n [i]);
}
getch();
}
void check (int n)
{
int i;
for (i = 2; i < = n/2; i ++)
{
if (n % i = = 0)
{
printf
("Not prime");
exit
(0);
}
printf ("\n Prime number");
}
}
23. Write a program
to enter a string and count total number of alphabet "A" occured in
the string.
#include
<stdio.h>
#include <conio.h>
void main ()
{
char sen [50];
int count = 0;
printf ("Enter a sentence:");
gets (sen);
for (i = 0; sen [i] ! = ‘\O’, i ++)
{
if(sen [i] = = ‘A’ && sen [i] = =
‘a’)
count=Count+ 1;
}
printf ("Total no. of alphabet of
occurred in a sentence : %d" count);
getch();
}
24. Write a program
to read a line and replace space by ".
25. Write a program
to input a message from keyboard and display
the menu.
1. Print message
length in terms of characters
2. Print the message
in re’’erse order
3. Print the message
in capital letters
4. Copy the message
from one location of screen to another location
5. Check the
palindrome
6. Exit
#include
<stdio.h>
#include
<conio.h>
#include
<string.h>
#include
<process.h>
void main ()
{
char str [40], dest [40], dest2 [40];
int
choice, l;
printf
("Main menu");
printf ("1. Print message length \n");
printf ("2. Print message in reverse
order \n");
printf
("3. Print the message in capital letters \n");
printf ("4. Copy the message from one
location to another\n");
printf ("5. Check the palindrome \n");
printf ("6. Exit \n\n");
printf ("Enter your choice
(1/2/3/4/5/6):");
scanf ("%d", & choice);
switch
(choice)
{
case 1:
printS ("Enter a
string\n");
gets (str);
l= strien (str);
printf ("Length
of message = %d", 1);
break;
case 2
printf ("Enter a
string \n");
gets (str);
printf ("String
in reverse order \n");
printf ("%s",
strrev (str));
break;
case 3:
printf ("Enter a
string \n");
gets (str);
printf ("%s",
strupr (str));
break;
case 4
printf ("Enter a
string \n");
gets (str);
strcpy (dest, str);
printf ("copied
string : %s", str);
break;
case 5
printf ("Enter a
string :");
gets (str);
strcpy (dest, str);
strcpy (dest2, strrev
(dest));
if (strcmp (str, dest2) = = 0)
printf ("Palindrome \n");
else
printf ("Not palindrome"); brealq
case 6:
exit (0);
default:
printf ("You aren’t
allowed to type otheis\n");
exit (0);
}
getch();
}
27. Write a menu
drIven program which has the following options:
1. Reverse order
2. Ascending order
3. Descending order
#include
<stdio.h>
#include
<conio.h>
#include <process.h>
void main ()
{
Int
i, num [10], ch, temp;
printf ("Enter 10 numbers \n");
for (i= 0; i< 10, i++)
scanf("%d",
& num [i]);
printf
("Main menu printf("l. Reverse order \n");
printf
("2. Ascending order \n");
printf
("3. Descending order \n");
printf ("4. Exit \n");
printf ("Enter your choice (1/2/3/4):".);
scanf ("%d", & ch);
switch (ch)
{
case 1
for(i = 9; i >= 0; i——)
printf (" % d\t", num [i]);
break;
case 2:
for (i= 0; i < = 9; i ++)
{
for(j=i+1;j<9;j++)
{
if(num [i] > num [j])
{
temp = num [i];
num [i] = num [j];
num [j] = temp;
}
}
printf("%d\t", num [i]);
}
break;
case 3:
for(i=0;i<9;i++)
{
for(j=i+1;j<9;i++)
{
if (num [1] <num [i])
{
temp =
num [i];
num
[i] = num [j];
num
[j] = temp;
}
}
printf ("%d \t’, num [i]);
}
break;
case 4:
exit(0);
default:
printf (\n Not
allowed to type other’);
exit (0);
}
getch();
}
28. Write a program
to read 10 different names and age into an array and sort them in ascending
order by age and print sorted list.
#include<stdio.h>
#include<conio.h>
#include<string.h>
void main ()
{
char name [10] [30], name1 [30];
int
age [10],i, j, temp;
for(i=0;i< 10;i++)
{
printf ("Enter
name \n")
scanf ("%s", name[10]);
printf ("Enter
age \n");
scanf("%d",
&age [i]);
}
for(i=0;i< 10;i++)
{
for(j=i+1;j < 10;j ++)
{
if (age [i] > age [j])
{
temp = age [i];
age [i] = age [j];
age [j] = temp;
strcpy (name1, name
[i]);
strcpy (name [i], name[j]);
strcpy (name [j],name1);
}
}
}
print1 (" \n
Name \ t \tAge \n");
for(i=O;i< 10;i-q-+)
printf(" % s t
\t %d\n", name [i], age [i]);
getch ();
}
29. Write a program
that reads a line and count the number of letters, vowels, consonants, words
and blank spaces present in the line.
30. Write a program
which will ask the user to input a single character and then a string and will
count the occurrence of that character in that string.
31. Write a program
that reads a string and prints the string in
1. UPPER CASE
2. Sentence case
3. Title Case
4. toGGLE cASE
32. Write a program
that will print all the rotations of a word typed into it. [e.g. space, paces,
acesp, cespa, espac]
33. Develop a program
that will read and store the details of a list of students in tabular format
and produce the following output
lists:
1. Alphabetical list
of names, roll number and marks obtained.
2. List sorted on
roll numbers.
3. List sorted on
marks.
34. Write a program
that reads the name, roll number and marks in
5 different subjects
of 10 students, and prints name, roll and total marks obtained by each student
in tabular form.
#include<stdio.h>
#include<conio.h>
void main ()
int
i,j,roll[10],total[1 0] ,mark[10] [5];
char name [10] [20];
for (i =0; i < 10;
i++)
{
printf ("Enter name :");
scanf ("%s \n", name[i]);
printf ("Enter roll number :\n");
scanf ("%d", &roll[i]);
printf ("Enter marks in 10 different
subjects :");
total [i]=0;
for(j0;j<5;j++)
{
scanf
("%d’, &mark[i] [i]);
total
[i] = total [i] + mark[i] [i];
}
}
printf ("\n Name
\t Roll number \t Total \n");
printf ("-------------------------------------------");
for (i = 0; i <
10; i++)
printf("% s t %
d \ t% d\n", name [i], roll [i], total [i]);
getch();
}
35. Write a program
to display the following patters:
H
H H
E E E
LLLL
0000
w w w w w
#include<stdio.h>
#include<conio.h>
void main()
{
char str[]="HELLOW";
int i,j;
for(i=O;i<=6;i++)
{
for(j=0;j<i;j++)
{
printf("%c" ,str[il);
}
printf(’\n");
}
getchO;
}
Function
A function groups a
number of statements into a unit and gives it a name. Then the unit can be
invoked from some other parts of the program. We can avoid rewriting of a group
of codes by defining them within a function block and use them by simply
calling the function name.
Advantages of
function:
(a) Easy to write a
correct small function.
(b) Easy to read,
write and debug function.
(c) Easier to
maintains or modify such function.
(d) Small function
tend to be self documenting and highly readable.
(e) It can be called
any number of times in any place with different parameters.
Modular Programming
When a program
becomes very large and complex, it becomes very difficult task for the
programmer to design, test and debug such a program. Therefore, a long program
can be divided into a smaller programs called modules. As the modules can be
designed, tested and debugged separately, the task of programmer becomes easy
and convenient. The division of a long program into a smaller programs (or
modules) is called modular programming.
Advantages of Modular
Programming
(a) It is easier to
design, test and debug a single modules as compared to an entire program.
(b) Usually, a module
of general nature is prepared so that it can be used elsewhere.
Disadvantages of
Modular Programming
(a)
Since
separate modules map repeat certain functions, the modular programming often
need extra time and memory.
Why modular style
Programming
There are many good
reasons to program in a modular style:
—
Don’t
have to repeat the same block of code many times in• your code. Make that code
block a function and call it when needed.
—
Function
portability: useful functions can be used in a number of programs.
—
Supports
the top-down technique for devising a program algorithm. Make an outline and
hierarchy of the steps needed to solve your problem and create a function for
each step.
—
Easy
to debug. Get one function working well then move on to the others.
—
Easy
to modify and expand. Just add more functions to extend program capability
—
For
a large programming project, you will code only a small fraction of the
program.
—
Make
program self-documenting and readable.
Function declaration:
It specifies function name, argument types and
return value. Alerts coniputer (and programmer) that function j is coming up
later.
Examples: void
display();
int sum (int, int,
int);
etc.
Function call :
It is also a component of the function and
causes the function to be executed.
Examples: display ();
result = sum(a, b,
c);
etc.
Function definition :
The function itself contains the lines of code
that constitute the function.
Examples: void
display()
{
for(int i=O;i<9;i+-i-)
printf ("+");
}
int sum(int x, int y,
jot z)
{
res = x÷ y + z;
return res;
}
Function parameter :
The parameter
specified in function call are known as actual parameter and the parameter
specified in function declaration are known as formal parameter
Example: res = sum(a,
b, c);
Here a, b, c are
actual parameter int sum (jot x, int y, jot z)
Here x, y z are
formal parameter.
Function return:
Function can be organized into two type.
(a) Function that do
not have a return type i.e. void function.
(b) Function that do
have a return value (i.e. return (res);)
Recursion
Recursion is a
process of a function calling itself again and again until some condition has
been satisfied. Using recursion, two condition must be satisfied.
(a) The program must
be written in a recursive form.
(b) The problem
statement must include a stopping condition. If not, computer will hang.
Example: To
calculate factorial using recursion
#include
<stdio.h>
#include
<conio.h>
int factorial (int);
void main ()
{
Int n;
printf ("Enter a
number =");
scanf ("%d",
&n);
printf ("Factorial no = %d, factorial
(n));
getch ();
}
}
int factorial (int n)
{
if(n < = I)
return 1.;
else
return (n * factorial
(n - 1));
}
Call by value:
value of actual
argument parameter is copied into the formal parameter of the function.
Example:
{
Int a= 5, b = 10;
fun (a, b);
printf("a = %d,b = %d",a, b);
getch();
void fun (int x, int
y)
{
x=x+ 100;
y=y+ 100;
}
Call by reference:
Definition address of actual argument
parameter i assigned to the formal argument parameter.
Example:
#include
<stdio.h>
#include
<conio.h>
void fun (int *, int
*);
void main ()
{
intt a = 5, b = 10;
fun (&a, &b);
printf ("a = %d,
b = %d", a,b);
getch();
}
void fun (int x, int
*y)
{
*x = *x +100;
*y= *y + 100;
}
1)Write a program to
calculate the area and circumference of a circle using a function where radius
of circle is input by user and define ‘pie’ as constant.
#include
<stdio.h>
#include
<conio.h>
#define pie 3.14
void findarea (int);
void findcircum
(int);
void main ()
{
int r;
printf ("Enter
the value of radius =");
scanf ("%d", &r);
findarea (r);
findcircum (r);
getch();
}
void findarea (int r)
{
float a;
a = pie * r * r;
printf ("Area of
a circle = %f", a);
}
void findcircum (int
r)
{
float C;
c = 2*pie * r;
printf ("\n circumference
of a circle = %f",c);
}
2) Write a program to
print all even numbers from 2-40 using nonreturnable function.
#include<stdio.h>
#include<conio.h>
void print_even ();
void main ()
{
printf ("Here
are even numbers from 2 to 40");
print_even ();
printf ("You got
the result");
getch ();
}
void print_even ()
{
Int a;
for (a =
2;a<=40;a+2)
printf ("%d\n"
a);
}
3) Write a program to
find multiplication table of any number using function.
#include<stdio.h>
#include<conio.h>
void numbers(int);
void main()
{
int n;
printf("Enter sny number=");
scanf("%d",&n);
numbers(n);
getch();
}
void numbers(int n)
{
int x,m;
for(x= 1 ;x<z 1
0;++x)
m=n*x;
printf("%d x
%d=%d\n",n,x,m);
}
4) Write a program to
calculate the factorial number of any number entered through the keyboard by
using returnable function.
#include
<stdio.h>
#include <conio.h>
long int factorial
(int);
void main ()
{
int n;
long int fact;
printf ("Enter a
number =");
scanf ("%d",
&n);
fact = factorial (n);
printf ("Factorial
number of %d = %ld", n, fact);
getch ();
}
long int factorial
(int n)
{
long int fact= 1;
for (inti=
1;i<n;i÷÷)
fact = fact *i;
return fact;
}
5) Write a function
power (a, b), to calculate the value of a raised to b.
#include
<stdio.h>
#include
<conio.h>
int powl (int x, int
y)
void main ()
{
int x, y;
pow1;
printf (‘Enter two
numbers =");
scanf ("%d %d",
&x, &y);
powl = power (x, y)
; printf("\n %d
to the power %d = %d", x, y, powl);
getch();
}
int powl (int x, int
y)
{
int i;
long p= 1;
for(i= 1;i<=y;i++)
p = p * x;
return p;
}
6) A digit positive
integer is entered through the keyboard, write a function to calculate sum of
digis of number.
(a) Without using
recursion.
(b) Using recursion.
#include
<stdio.h>
#include
<conio.h>
int wsum (int);
jut rsum (int);
void main ()
{
jut s, rs;
Int n;
printf ("Enter
number =");
scanf ("%d",
&n);
s = wsum (n);
printf ("Sum of
digits without recursion = %d\n",s);
rs = rsum (n);
printf ("Sum of
digits using recursion = %d\n", rs);
getch();
}
int wsum (int n)
{
Int r, sum 0;
while (n> 0)
{
r= n%10;
}
sum = sum + r; n =
n/10;
return sum;
}
int rsum (int n)
{
int r, sum = 0;
if(n! = 0)
{
r=n%10;
sum = r + rsum (n/l0);
}
return sum;
}
Write a program to
print 10 positive integers and their factorials. [HSEB-2062]
#include
<stdio.h>
#inclucle
<conio.h>
long int factorial
(int);
void main ()
{
jut ,num[10],i;
long int fact;
printf ("Enter any 10 numbers =");
for(i=0;i< 10;i++)
{
printf ("Enter
numbers\n");
scanf ("%d",
&num [i]);
fact = factorial (num [1]);
printf ("Factorial
no. of %d is %ld", num [i], fact);
}
getch();
}
long int factorial
(long int n)
{
long int fact= 1;
int i;
for(i=O;i<n;i++)
fact = fact *i;
return fact;
}
Write a c program to
find sum of ‘n’ numbers which is divisibi by 5 using function.
#include<stdio.h>
#include<conio.h>
int sum(int);
void main ()
{
int x, y;
printf ("Enter
two numbers =");
scanf ("%d", &x);
y=sum(x);
printf("sum=%d"
,y);
getch();
}
Int sum(int x)
{
int i,s=O;
for (i =1; i<=x;
i++)
{
if(i%5==0)
s=s+i;
}
return s;
}
7) Write a program to
read 100 different number from users, store them in an array, passes the array
through function and, find maximum number among them.
#includecstdio.h>
#include<conio.h>
int numbers(int
no[100], int n);
void main ()
{
int n,no[100],i;
printf ("Enter
the value of n =\n");
scanf (‘%d",
&n);
for (i = 1; i<n;
i++)
{
printf ("Enter
numbers : \n");
scanf("%d’,&no[i]);
printf("Maximum
number=%d",numbers(no,n));
}
getch();
}
int numbers(int
no[100],int n)
{
int max=0;
for (int
i=1;i<n;i++)
{
if(no[i]> max)
max=no [i];
}
return max;
}
Structure
A structure is a collection of one or more
variables grouped under a single name for easy manipulation. The variables in a
structure, unlike those in an array, can be of different variable types. A
structure can contain any of C’s data types, including arrays and other
structures. Each 3variable within a structure is called a member of the
structure.
Declaration of a
structure
e.g. struct student
{
char name [20]; int class; int age;
};
struct date char
month[2]; char day[2]; char year[4];
} current_date;
struct student a;
In the above example,
struct => keyword
student =>
structure data type name name[20] ,
class and age
=>Member name
a=>declaring structure variable
The data members are
accessed by structure variables with followed by a. (period sign), called dot
operator.
Differentiate between
array and structure with examples.
[HSEB-2O66]
|
Array
|
Structure
|
1
|
Array is the collection
of data items which will have the same name.
|
It is a kind of
user define data type which can store the data of various type such as
character, integer etc.
|
2
|
The individual
array elements are distinguished from one another by value that is assigned
to a subscript or index
|
Structure is not
represented by index or subscript.
|
3
|
Array has its type
and these
are:
(i) one dimensional
array
(ii) multi
dimensional
Array
|
Structure has no
type
|
4
|
The syntax of
array:
(i) One dimensional
array:
datatype array_name
[size of array];
It consists only
rows or columns
i.e. char name
[201;
(ii)
Multi-dimensional array:
data_type
array_name [exp 1] [exp2];
e.g. char name [5]
[25]; It contains rows and columns.
|
Syntax of
structure:
struct
user_defined_name data_type member 1;
data_type member2;
daa_type membern;
struct
user_defined_name van, var2
e.g. struct student
char name [20]; int
age;
struct student
one;
|
|
Example : Display
name & age:
#include
<stdio.h> #include <conio.h>
void main ()
char name [20]; int
age;
printf ("Enter
name:");
gets (name);
printf ("Enter age \n");
scanf ("%d",
&age);
printf("\n Name :%s", name);
printf ("Age:%d",
age);
getch();
}
|
Example : Display
name
age:
#include
<stdio.h> #include <conio.h>
void main ()
{
struct student{
char name [20]; int
age; one;
printf ("Enter
name");
scanf ("%s", one.name);
printf ("\n Enter age:");
scanf ("%d",
&one.age);
printf ("\n
Name : %s", one. name);
printf ("Age
:%d", one.age);
getch();
}
|
Differences between
structure and union .[HSEB-2065]
|
Structure
|
Union
|
1
|
It is a kind of
user defined data type which can store the data of various type such as
character, integer etc.
|
Union is a
collection of hetrogeneous data types
|
2
|
Each element has
specific memory space and takes more memory space than union.
|
Each element has no
specific
memory space but
space
allocated for
largest elements is
utilized by other
sized element.
|
3
|
Keyword,i.e.struct
is
required to declare
structure,
|
Keyword ,i.e.union
is required to declare union
|
Programming
1)
Write a program to read roll number,name and age of a
student
and display it in
proper format.
#include<stdio.h>
#include<conio
.h>
struct student{
int rollno;
char name[20];
int age;
}a;
void main()
{
printf("Enter
roll number:"):
scanf("%d",&a.rollno);
printf("Enter
nape:"):
scanf("%s",a.name);
printf("Ent’er
age:"):
scanf("%d",
&a.age);
print f("%d\t
%s\t %d",a. rollno,a.name,a.age);
getch();
}
2)
Write a program to enter name,address and age of 5
different persons,print it in tabular format.
#include<stdio.h>
#include<conio.h>
struct student{
char name[20];
char add[20]; int
age;
}a[5];
void main()
{
int i;
for(i=0;i<5;++i)
{
printf("Enter
name:"); scanf("%s",a[i] .narne); fflush(stdin);
printf(’ Enter address:");
scanf("%s"
,a[ij .add); printf("Enter age:");
scanf("%d",&a[i]
.age);
printf("\n\n");
printf("Name\tAddress\tAge\n");
printf("
for(i=0;i<5;++i)
printf(" %s\t
%s\t %d\n",a[iJ .name,a[i] .add,a[ij .age);
getch();
}
3)
Write a program to enter name, price and pages of 10
different books and display them in tabular format.
#include<stdio.h>
#include<conio.h>
void main ()
struct book
{
char name [15]; float
price;
int pages; } list
[10];
int i;
for(i=O;i< 10;i++)
{
printf ("Enter
name, price & pages of %d bq9k:",(i + 1));
scanf ("%s %f %d", list [ij.name,
&list [ii. price,&list [i].pages);
}
printf ("Name \t
price \t pages \n");
for (i=0;i< 10;i++)
{
printf("%s \ t %
f\t % d\n", list Ji].name, list [i].price, list[i]. pages);
getch ();
}
4)
Write a C program to read name,marks in 5 different
subjects of a student, find total, percentage. Print name, marks, total and
percentage in tabular format.
#include<stdio.h>
#include<conio.h>
struct student{
char name[20]; int mark[5];
}list;
void main()
{
int tot=0,per,i;
printf("Enter name:");
scanf("%s" ,list.name);
for(i=0;i<5;i++)
{
printf("Enter mark:");
scanf(’%d",&list.mark[i]);
tot=tot÷list.mark[i];
}
per=tot/5;
printf("NAME\tsub
1 \tsub2\tsub3\tsub4\tsub5\tTOTAL\t per\ n")
printf("%s"
,list. name);
for(i=0;i<5 ;i++)
{
printf("%d\t" ,list.mark[i]);
printf("%d\t%d\n’,per,tot);
}
getch();
}
5)
Write a program that reads different names and addresse
into
the computer; and
sorts the name into alphabetical order using
structure variables.
[HSEB-2064]
#include<stdio.h>
#include<conio.h>
#include<string.h>
struct stud{
char name [80]
,add[80] ,temp[80] ,temp 1 [801;
Ia[5];
void main()
{
int i,j;
printf("enter
name and age:");
for(i=0;i<5 ;i++)
{
scanf(’%s%s’ ,a[i] .name,a[i] .add);
for(i=0;i<5;i÷+)
{
for(j=i+1;j<5;j-t-÷)
if(strcmp (a[i]
.name,ã[j] .name) >0)
{
strcpy(a[il
.temp,a[i] .name);
strcpy(a[i]
.name,a[j] .name);
strcpy(a[j] .name,a
[i] .temp);
strcpy(a[i] .temp 1
,a[i] .add);
strcpy(a[i] .add,a[j] .add);
strcpy(a[jj .add,a[i]
.temp 1);
}
}
printf("The
result\n");
for(i=0;i<5;i+÷)
{
printf("%s\t%s\n" ,a[i] .name,a[i]
.add);
}
getch();
}
6)
Write a program to read a set of names, roll number, sex,
height
and weight of the
students from the keyboard and to sort them in ascending order using a
structure within an array data type.
#include<stdio.h>
#include<conio.h>
#include.cstring.h>
#define MAX 250
int i, n;
struct school
{
char name [25]; int
rolino;
char sex [7];
float height;
float weight;
}student [MAX];
void main ()
{
void output (school
student [MAX], int n);
void sort (school
student [MAX], int n);
printf ("How
many data ?");
scanf ("%d", &n);
for (i = 0; i < n;
i++)
{
printf ("Record
= %d \n", i + 1);
printf ("Enter
name : \n");
scanf("%s",
student [i].name);
fflush(stdin);
printf ("enter
roll number \n"); scanf("%d", &student[il. roilno);
fflush(stdin);
printf ("Enter
sex ");
scanf("%s",
student [i].sex);
printf ("Enter
height:\n");
scanf ("%f’,
&student[i]. height);
printf ("Enter
weight : \n");
scanf
(‘%f’,&student[i]. weight);
printf ("\n n");
}
printf ("Unsorted
data \n");
output (student, n);
printf ("Sorted
data \n\n");
output (student, n);
getch();
}
void output (school
student [MAX],int n)
{
printf ("Name \t
Roll no \t Sex \t Height \t Weight \n");
printf(" \n");
for (i = 0; i < n;
i++)
{
printf("%s \t %
d \t % s \t %f\t %f\t \n", student [i]. name, student [ii. rolino, student
[I]. sex, student [i]. height, student [i]. weight);
}
}
void sort (school
student [MAX), int n)
struct school temp;
int i, j;
for (i = 0; i < n;
i++)
{
for (j = i+1; j <n;j++)
{
if (strcmp(student[i] .name, student[j]
.name)<=O)
{
temp
= student[i];
student [i] = student
[j];
student [j] = temp;
}
}
}
7)
Write a C program to pass structure as parameter to
function.
#include<stdio.h>
#include<conjo.h>
struct data{
float amount;
char fname[30};
char lname [30];
} rec;
void print_rec(struct
data x);
void main()
{
printf("Enter
the donor’s first and last names,\n");
printf("separated by a space: ‘); scanf("%s
%s", rec.fname, rec.lname);
printf(’\nEnter the
donation amount:
scanf("%f’,
&rec.amount); print_rec( rec);
getch();
}
void print_rec(struct
data x)
{
printf("\nDonor
%s %s gave Rs%.2f.\n", x.fname, x.lname, x.amount);
}
Pointer
A pointer is a
variable which stores the address number of reference number of a cell, instead
of storing the actual value of the cell. It is really a very powerful variable
which is used tø directly deal with memory of computer. A pointer is denoted by
(indirection
operator) and has to be declared in the similar way as we declare other
‘ariables.
e.g. int a; //A normal variable
int *p; //A pointer that will point to an
integer data
p = &a; //Assign address of ‘a’ to ‘p’, pointer
‘p’ will II Point I/to the value of variable ‘a’.
Advantages of
pointers are:
(a) It allows us to
pass variables, arrays, functions, string and structures as function arguments.
(b) Pointers are more
in handling the data table.
(c) They increase the
execution speed.
(d) Pointer reduce
the length and complexity of a program.
(e) It supports
dynamic memory allocation and de allocation of memory arguments.
(f) The use of a
pointer array to character strings results in saving of data storage space in
memory.
Uses of Pointer
- Pointers are more
efficient in handling the data array. They are used to manipulate arrays more
easily by moving pointers to them instead of moving the arrays themselves.
- Pointers reduce the
length and complexity of a program.
- Pointers are used
to return more than one values from a function.
- Pointers are used
to create complex data structures such as linked lists, trees etc.
- Pointer increases
the execution speed.
- Pointers are used
to communicate information about memory, which returns the location of free
memory.
Eg. Using function
like malloc();
Declaration of
pointer variables
A pointer should be
declared before its use like any other variable. Data type of the pointer is
the data type of the variable to which it is pointing.
Pointer variable is
defined by using an indirection symbol ". Using this operator, it becomes
possible to point to the address of other variable. A pointer variable is
declared as follows;
Syntax: Data_type ‘
variable_name;
Eg; int *ptr;
Explain the meaning
of each of the following declarations:
(i) int *p;
(ii) int * [10];
(iii) int (*p) [10];
(iv) int *p [void];
(v) int [char *a];
[HSEB-2061]
Meaning of declared
pointer statements are:
(a) int *p; A point
that will point to an integer data.
(b) int [10]; p is
10-element array of pointer to integer data.
(c) int (*p) [10]; P
is a pointer to a 10-element integer data.
(d) int *p [void]: P
is a function that returns a pointer to an integer data.
(e) int "p
(char*a); P is a function that accepts an argument which is a pointer to a
character and returns a pointer to an integer data.
Relation between
array and pointer
In fact, the compiler
translate array notation into pointer notation when compiling. Since the
internal architecture of the microprocessor understands pointers but doesn’t
understand arrays.
1)
Write a program to swap the values of two members using
functions.
#include
<stdio.h>
#include <conio.h>
void swap (int *,
int*);
void main ()
{
int a, b;
printf ("Eiter
two integers :"); scanf ("%d%d", &a, &b);
fun (&a, &b);
printf (Now, a %d \t
b = %d", a, b); getch();
}
Void swap (int *x,
int *y)
{
Int temp;
Temp = *x;
*x = *y;
*y = temp;
}
2)
Write a program that reads N integers and prints them
ascending order using pointer and user defined function.
#include<stdio.h>
#include.cconio.h>
void arr(int 4’);
int i,j,n;
void main()
{
Int *p,*q,a[10];
q=p;
printf("enter
the value of N:"); scanf("%d",&n);
printf("enter
the %d numbers:\n",n);
for(i=0;i<n;j++)
{
scanf("%d",p);
p++;
}
arr(q);
printf( "the
array elements after sorting:\n");
for(i=O;i<n;i++)
{
printf(’%d\t",*q);
q++;
}
getch();
}
void arr(int *b)
{
for(i=0;i<n;i++)
{
for(j=i÷1 ;j<n;j++)
{
if(*(b+i)>*(b+j))
{
int temp=4’(b+i);
*(b+i)=*(b+j);
*(b+j)=temp;
}
}
}
return;
}
3)
Write a program that reads computer marks of N different
student and prints them. [Use malloc 0 function]
#include
<stdio.h>
#include
<conio.h>
#include
<malloch>
void main ()
{
int p, *q, i, N;
printf ("Enter N:");
scanf("%d",
& N); p = (int *)
malloc (size of (int)*N);
q = p;
printf ("Enter
computer marks of %d student", N);
for (i= 0; i< N;
i++)
{
scanf ("%d",
&p);
p=p+1;
}
printf ("The
elements are:\n");
for (i= 0; i< N;
i++)
{
printf ("The elements are :\n");
for (i=0;i<n;i++)
{
printf ("%d *q);
q = q + 1;
}
}
getch();
}
4)
Write a program that reads roll, name and marks in 5
different subjects of N different students and prints them in appropriate ormat
[Use structurepointer & malloc () function]
#include<stdio.h>
#include<conio.h>
#include<stdlib.h>
struct student
{
int roll;
char name[25];
float mark[5];
};
void main()
{
int n, i, j;
float total[5];
printf("enter
the no of student:");
canf("%d"
,&n);
J p=(struct student
*) malloc(sizeof(struct student)*n); q=p;
for(i=0; I<n;i++)
{
total[i]=0;
printf(’enter the
record ofstd[%d]:\n",i+l);
printf("enter the roll:");
scanf("%d"
,&p->roll);
fflush(stdin);
printf("enter the name:");
gets (p->name);
printf("enter
the marks in 5 subjects:\n");
for(j=0;j<5;j++)
{
scanf(’%f"
,&p->mark[j]);
total [ii =total[i] +p.->mark[j];
}
P++;
}
Clrscr();
printf("\nRoll\tName\tSUB
1\tSUB2\tSUB3\tSUB4\tSU l\tDivi\tRemarks\n"); printf("
for(i=0;i<n;i++)
{
printf("%d\t%s\t"
,q->roll,q->name);
for(j=0;j<5;j÷+)
{
if(q->mark[j]
<40)
printf("%O. 1 f"\t",q—>mark[j]);
else
printf("%. lf\t",q->mark[j]);
}
printf("%O. 1 f\n",total[i]);
q++;
}
getch();
}
Write a program which
concates a string to other [use pointer].
#include
<stdio.h>
#include
<conio.h> •
void main ()
{
char stri [20],
str2[20];
int i;
printf ("Enter
two strings :");
scanf ("%s %s’, strl, str2);
preconcatenate (str2,
str I);
printf (" \n \n
After adding str2 to other");
printf (" \n The new string : %s",
str2);
getch ();
}
preconcatenate
(char *i, char *s)
{
while (*i)
i ++;
while (*s)
*i++ = *s++;
*I = ‘\0’;
}
Data File
It is a data
structure which help us to store our data on the secondary storage media (i.e.
hard disk, floppy disks etc.)and to access and alter information whenever
necessary. C programming has different types of library functions for creating
and managing data files. Types of data files are:
A. High Level
Types of high level
files are:
a. Text files
A text file is a
human-readable sequence of characters and words they form that can be encoded
into computer-readable formats such as ASCII. A text file is also known as
ASCII file and can be read by any word processing package. There is no sound or
video files or graphical files.
b. Binary files
It organizes data
into blocks containing contiguous bytes of i information. It consists sound,
images, graphical files etc. A binary file is made up of machine-readable
symbols that represent l’s and, 0’s.
B. Low Level
Operation ‘modes’ of
files are:
(i) r: open file for
reading or display
(ii) w: open file for
writing
(iii) a: open file
for appending
syntax of character
input/output, string input/output, word input/output and formatted
input/output. Also write the syntax of block read and write.
a) Character
input/output
a.getc()
It is used to read a
single character from a file and returns the value of EOF.
The statement is ch=getc(fr);
b.putc()
It is used to write a
single character into a file. The function normally returns the character
written but will return value of EOF if error is encountered.
The statement is putc(ch,fp);
b) String
input/output
a.fgets()
It is used to read a
set of characters as a string from a given file and copies the string to a
given memory location normally in array. The general format of fgets() is
fgets(sptr, n,ptr);
Where sptr=pointer to
the location to receive string
n=count maximum
number of character to be in the string
ptr=pointer to the
file to be read
b) fputs
It is used to write a
string to a given file. The general format of
fputs() is
fputs(sptr,ptr);
where sptr=pointer to
the string to be written ptr=file pointer to file
c) Word input/output
a.getw()
It is used to read an
integer value from a given file. The format of getw() is
getw();
b.putw();
It is used to write
an integer quantity on the specified file. The syntax of putw() is
putw(w,fp);
where w is an integer
value and fp is file pointer.
d) Formatted
input/output
a.fscanf()
It is used to read a
formatted data from a specified file.The general format of fscanf 0 is
fscanf(ptr, "control
string’ clist);
where ptr is file
pointer,control is different format like %d,%f etc and list is variable
parameter list to be read from specified file.
b.fprinf()
It is used to write a
formatted data into a given file.The genera’ format of fprintf() is
fprintf(ptr, "control
siring",list);
where ptr is file
pointer,control string is a formatted comman and list is variable list to be
written on the file.
Block read and write(Binarv
files)
a.fwrite()
It is used to write a
binary data to a given file.The general form Is
fpritef(ptr,size,
nitems,fptr);
where ptr=pointer
that is first structure to be written. size=size in bytes of each structure
nitemsnumber of
structure to be written fptr=file pointer to the file
b.fread()
It is used to read a
block of binary data from a given file.
fread(ptr,size, nitems,fptr);
1) Steps for writing
a file
(a) Create a FILE
pointer
(b) Open fIle in
write (w or a) mode
(c) Perform general I/O
operations
(d) Save I/O results
using following syntax:
fprintf
(file_pointer, "format specifier lists", variable lists);
(e) close the file
using fclose (file_pointer)
Example:
{
Int age;
char name [20];
FILE *fp;
fp = fopen ("info.dat",
"w");
printf ("Enter
name:");
gets (name);
printf ("Enter
age:");
scanf ("%d",
&age);
fprintf (fp,"%s
%d", name, age);
fclose (fp); return
();
}
2) Steps for reading
a file
(a) create FILE
pointer
(b) open file in read
mode (r mode)
(c) Read the data
from file using following syntax:
fscanf (file_pointer,
"format specifier list", variable lists);
(d) Display data as
required
e.g.
int age;
char name[20];
FILE *fp;
fp = fopen ("iñlo.dat",
"r");
fscanf (fp, "%s %d", name,
&age);
printf ("Your name: %s", name);
printf ("Your
age: %d", age);
fclose (pp);
return ();
Write a program to
read data from the keyboard, write it to a file called INFO, again read tle
same data from INFO file, and display it on the screen. N
#include <stdio.h>
#include <conio.h>
void main ()
{
FILE *fp;
int st_no[MAXJ
,marks[MAXJ;
char name[MAXI[20];
int i,n;
printf( How many
data? );
scanf( /od ,&n);
fp = fopen(
record.dat , w+ );
for(i=0;i<n;++i)
{
printf("Enter
roll number:");
scanf(’%d",&std_no[iJ);
fflush(stdin);
prmntf("Enter
name");
scanf( %s"
,name[i]);
printf("Enter
marks:");
scanf(’%d",&marks[i]);
fprintf(fp,"%d%s%d",std_no[i]
,name[i] ,marks[i]);
}
•
rewind(fp);
printf("Roll
number\tName\tMarks\n");
printf(" \n");
for(i=0;i<n;÷+i)
{
fscanf(fp,"%d%s%d",&std_no
[i] ,name[i] ,&marks[i]);
printf("%d\t%s\t%d\n’
,std_no [i] ,name[i],marks [i]);
}
fclose(fp);
getch();
}
3) Write a program
for reading a data file. [HSEB-2064]
#include<stdio.h>
#include<coriio.h>
void main()
{
*
FILE fp;
int roll
number[10],marks[10];
char name[10][20];
int i,n;
fp=fopen("c:\play.dat","r");
printf("Rojl
numbertName\tMarks\n");
printf("-------\n");
for(i=0;i<10;++i)
{
fscanf(fp, "%d%s%dfl,&rofl number[i]
,name [i] ,&marks [i]);
printf("%d\t%s\t%d\n",roll_number[i]
,namc[i] ,marks [i]);
}
fclose(fp);
getch();
}
4) Write a program to
enter name,roll_number and marks of 10 students and store them in the fi1e-
[HSEB-2065]
#inckide<stdio.h>
#include<conio.h>
void main()
{
FILE *fp;
char name[JO][20J
int
roll_number[IOJ,marks{IOJ;
int i,n;
fp = fopen("c:\play.dat’,
"w");
for(i=0;i<10;++i)
{
printf("Enter roll number:");
scanf("%d",
&roll_number[j]);
fflush(stdjn);
printf("Enter name");
scanf(’%s",name[j]);
printf("Enter marks:");
scanf("%d’&marb[j]);
fprintf(fp, "%d%s%d,roII number[i]
,flame [i] marks [i]);
}
fclose(fp);
getch();
}
6) Write a program that
reads name, rank and country of N different players for a data file and prints
all the information in descending order on the basis of rank.
#include<stdio.h>
#include<conio.h>
#include<string.h>
#define MAX 500
struct player
{
int rank,
char name[15],
country[15]
}list[MAX];
void main()
{
FILE *fp;
int i,j,rtemp;
char
ntemp[15],ctemp[l 5];
int n;
printf("How many
records?:):
scanf("%d",&n);
printf("ADD
RECORDS\n\n");
fp=fopen("data.txt","w");
for(i=0;i<n;i++)
{
printf("enter
the record of player[%d]n ",i+ 1);
fflush(stdin);
printf("Enter
the Name:");
gets (list[i] .name);
printf("Enter
the rank");
scanf("%d",&{jst[j]
.rank);
fflush(stdjn);
printf("Enter
the country:");
gets (list[i] .country);
}
for(i=0;i<n;ji-+)
{
for(j=i+ 1 ;j<n;j++)
{
if(list[i] .rank>list[j] .rank)
{
rtemp=list[i] .rank;
strcpy(ntemp,list[il .name);
strcpy(ctemp,Iist[i}.country);
list[i] .rank=list[j] .rank;
strcpy(1ist[i] .name,Iist[j].name);
strcpy(list[i] .country,list[j].country);
list[j] .rank=temp;
strcpy(list[j] .name,ntemp);
strcpy(list[j] .country,ctemp);
}
}
}
fwrite(&list,sizeof(ljst),
1 ,fp);
fclosc(fp);
clrscr();
fp=fopen("data.txt",
"r");
prinrf("Rank\tName\tcountryressn
");
while(fread(&list,sjzeof(jjst)J
,fp) == 1)
{
for(i=0;i<n;i++)
printf("%d\t%s\t%s\n",list[i]
.rank,list[i] .name,list[i] .country);
}
fclose(fp);
getch();
}
7) Write a program
that ask the user to input Name, Age of N different film actors for a file and
prints them in appropriate format. [Use fwrite() and fread() functions]
#include
<stdio.h.> #include <conio.h>
struct actor
{
int age; char name
[25];
}rec;
void main ()
{
FILE *fp; int i, N;
fp =fopen ("dec.dat’,
"w+");
printf (‘Enter how many :");
scanf(’% d", &N);
for (i = 0; i <N;
i++)
{
printf ("Enter
name : \n");
gets (rec.name);
printf ("Enter
age : \n");
scanf ("%d",
&rec.age);
fwrite (&rec,
size of(rec), 1, fp);
}
rewind (fp);
printf ("Name \t
Age \n");
printf ("---------\n");
while (fread
(&rec, sizeof (rec), 1, fp) = = 1)
{
printf ("%s \t
%d \n", rec.name, rec.age);
}
fclose (fp);
getch();
}
List of graphics
functions in C programming
Some of graphics
functions are:
(a) getmaxx()— gets
maximum number of column
(b) getmaxy () — gets
maximum number of rows
(c) line (xi, y, X2,
y2) — draws a line starting from the coordinate (xi, yi) to (X2, y2)
(d) circle (c, y,’I)
— draws a circle with coordinate of center as x & y and radius
(e) arc (x, y, stan,
endan, hr, vr) : draws an arc with the center at x & y coordinate, starting
angle (stan), ending angle (endan), horizontal radius (hr) & vertical
radius (vr).
(f) ellipse (x, y, stan,
endan, hr, vr)
where, x & y = screen coordinate
stan = starting angle endan = ending angle
hr = horizontal
radius
yr = vertical radius
(g) rectangle
(left_x, top_y, right_x, bottom...y)
(h) setcolor (color
name) — color name means name of color i.e. RED, GREEN etc. —
(i) Cleardevice 0 —
clear graphics screen
(j) Closegraph ( ) —
use to close all graphics driver using this function.
1. Write a program to
display circle using function of graphics.
#include<stdio.h>
#include<conio.h>
#includeczgraphics.h>
void main ()
{
Int gd = DETECT, gm;
initgraph (&gd, &gm," \\ tc \\
bgi");
setcolor(GREEN);
circle (300, 250,
40);
getch();
closegraph ();
}
2. Write a program to
display rectangle using function of graphics.
#include<stdio.h>
#include<conio.h>
#include<graphics.h>
void main()
{
Int gd = DETEcT, gm;
initgraph (&gd,
&gm, " \\ tc \\ bgi’);
setcolor(GREEN);
reectangle(5O,
10,260,180);
getch ();
closegraph ();
}
3. Write a program to
display ellipse using function of graphics.
#include<stdio.h>
#include<conio.h>
#include<graphics.h>
void main ()
{
int gd = DETECT, gm;
initgraph (&gd, &gm, "\ tc \\ bgi");
setcolor(GREEN);
ellipse (100, 100, 0,
360, 30, 20);
getch();
closegraph ();
}
What do you mean by
OOPs? Write a the advantages of and disadvantages of OOPs?
OOP is a method of
implementation in which programs are organized as co-operative collections of
objects, each of which represents an instance of some class and whose classes
are all members of a hierarchy of classes united through the property.
Advantages of OOPs:
(a)
Code
reusability is much easier than conventional programming language.
(b)
Making
the use of in heritance, redundant code is eliminated and the existing class is
extended.
(c)
It
is possible to have multiple instances of an object to coexist without any
interference.
(d)
System
can be easily upgraded from small to large systems.
(e)
Software
complexity can be easily managed.
(f)
Aids
trapping in an existing patterns of human thought into programming.
Disadvantages of
OOPs:—
(a)
Benefits
only in long run while managing large software projects.
(b)
Compiler
and runtime overhead object oriented program required greater processing
overhead demands over resources.
(c)
Re-orientation
of software developer to object-oriented thinking.
How object oriented
programming is differ from procedure oriented programming?
Object oriented
programming is differ from procedure oriented:—
(a)
In
oop, emphasis is given on data but in pop, emphasis is given on procedure.
(b)
In
oop, programs are divided into objects but not in pop.
(c)
Data
hiding principle is used in oop but not in pop.
(d)
Oop
follows bottom up approach but pop follows top down approach.
(e)
Oop
provide the code reuse facility but pop does not.
(f)
In
oop, object can communicate with each other through, function but not in pop.
(g)
In
oop, new data and functions can be easily added.
Class in OOP:
A class is a
collection of objects of similar type which have same property and common
behaviour. For example, roll, name, age are member of class student and Pigeon,
Sparrow, Crow etc. are object of class bird. A class is a user defined data
type which holds both data and functions. The internal data of class is called
data member and functions are called member functions. The member functions
mostly manipulate the internaldata of a class. syntax> class class_name
{
private:
variable
declaration;
function declaration;
public:
variable declaration;
function declaration;
}
Object in OOP: Object is the
combination of data and functions in a single unit. Object can interact without
having to know details of each other’s data or code. It is sufficient to know
the type of message accepted and the type of response returned by the objects.
Explain the term
polymorphism and inheritance. [HSEB-20631
Polymorphism:
The word polymorphism
is derived from the Latin words poly means many and ‘morphos’ means form thus
‘polymorphism’ means many forms.
Polymorphism is the
process of defining a number of objects of different classes into a group and
call the methods to carry out the operation of objects using different function
calls.
Inheritance:
[HSEB-2066]
Inheritance is the
process of creating new class (i.e. derived class) from base class. Each such
class or derived class share common characteristics of base class. The main
advantages of inheritance are:—
(i) Code reusability
(ii) to increase the
reliability of code, and
(iii) to add some
enhancements to base class the following figure illustrate inheritance
Types of Inheritance
(a)
Single
inheritance: There is a derived class with only one base class.
(b)
(ii)
Multiple inheritance: The derived class has several base classes.
(c)
(iii)
Multi level inheritance: Mechanism of designing a class from another derived
class.
(d)
(iv)
Hierarchical inheritance: One class may be derived by more than one class.
What do you know
about data abstraction and encapsulation? Explain.
Data abstraction:
Data abstraction can
be defined as a list of abstract attributes such as size, weight and cost, and
Method that operate on these attributes. They encapsulate all the essential
properties of the objects that are to be created.
Encapsulation:
The wrapping up of
data and methods into a single unit (called class) is known as encapsulation.
The data is not accessible to the outside world and only those methods which
are wrapped in the class, can access it. These methods provide the interface
between object’s data and the program. This insulation of the data from direct
access by program is called data hiding.
No comments:
Post a Comment