some imp. concepts and basics of c

23
#include <stdio.h> void main() { printf("\"It's freezing in here,\" he said coldly."); } /* Program Characters and numbers */ #include <stdio.h> void main() { char first = 'A'; char second = 65; printf("\n letter looks like %c", first); printf("\n number looks like %d", first); printf("\n letter looks like %c", second); printf("\n number looks like this %d\n", second); } /* Program Finding the limits */ #include <stdio.h> #include <limits.h> #include <float.h> void main() { clrscr(); printf("char store values from %d to %d", CHAR_MIN, CHAR_MAX); printf("\nshort store values from %d to %d", SHRT_MIN, SHRT_MAX); printf("\nint store values from %d to %d", INT_MIN, INT_MAX); printf("\nlong store values from %ld to %ld",LONG_MIN, LONG_MAX); printf("\n\n smallest non-zero value of type float is %.3f",FLT_MIN); printf("\n largest value of type float is %.3f", FLT_MAX); printf("\nsmallest non-zero value of type double is %.3f",DBL_MIN); printf("\n largest value of type double is %.3f", DBL_MAX); }

Upload: anik

Post on 30-May-2018

215 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Some Imp. Concepts and Basics of C

8/14/2019 Some Imp. Concepts and Basics of C

http://slidepdf.com/reader/full/some-imp-concepts-and-basics-of-c 1/23

#include <stdio.h>

void main(){

printf("\"It's freezing in here,\" he said coldly.");}

/* Program Characters and numbers */

#include <stdio.h>

void main(){char first = 'A';char second = 65;

printf("\n letter looks like %c", first);printf("\n number looks like %d", first);printf("\n letter looks like %c", second);

printf("\n number looks like this %d\n", second);}

/* Program Finding the limits */#include <stdio.h>#include <limits.h>#include <float.h>void main(){clrscr();

printf("char store values from %d to %d",CHAR_MIN, CHAR_MAX);printf("\nshort store values from %d to %d",SHRT_MIN, SHRT_MAX);printf("\nint store values from %d to %d", INT_MIN, INT_MAX);printf("\nlong store values from %ld to %ld",LONG_MIN, LONG_MAX);printf("\n\n smallest non-zero value of type float is %.3f",FLT_Mprintf("\n largest value of type float is %.3f", FLT_MAX);printf("\nsmallest non-zero value of type double is %.3f",DBL_MINprintf("\n largest value of type double is %.3f", DBL_MAX);

}

Page 2: Some Imp. Concepts and Basics of C

8/14/2019 Some Imp. Concepts and Basics of C

http://slidepdf.com/reader/full/some-imp-concepts-and-basics-of-c 2/23

/* Program Finding the size of a type */#include <stdio.h>

void main(){clrscr();

printf("\nchar occupy %d bytes", sizeof(char));printf("\nshort occupy %dbytes",sizeof(short));printf("\nint occupy %d bytes", sizeof(int));printf("\nlong occupy %d bytes",sizeof(long));printf("\n float occupy %d ytes",sizeof(float));printf("\n double occupy %d bytes", sizeof(double));getch();}

/* Program Testing letters the easy way */#include <stdio.h>

void main(){char letter =0;clrscr();printf("Enter an upper case letter:");scanf(" %c", &letter);

if ((letter >= 'A') && (letter <= 'Z')){

letter += 'a'-'A';printf("You entered an upper-case %c.\n", letter);

}else

printf("You did not enter an uppercase letter.\n");

getch();}

Page 3: Some Imp. Concepts and Basics of C

8/14/2019 Some Imp. Concepts and Basics of C

http://slidepdf.com/reader/full/some-imp-concepts-and-basics-of-c 3/23

/*Example A calculator*/#include <stdio.h>

void main(){float number1 = 0.0;float number2 = 0.0;

char operation ;

clrscr();

printf("\nEnter the calculation\n");scanf("%f %c %f", &number1, &operation, &number2);

switch(operation){

case '+':printf("= %f\n", number1 + number2);break;

case '-':printf("= %f\n", number1 - number2);break;

case '*':printf("= %f\n", number1 * number2);break;

case '/':if(number2 == 0)

printf("\n\n\aDivision by zero error!\n");elseprintf("= %f\n", number1 / number2);break;

case '%':if((int)number2 == 0)

printf("\n\n\aDivision by zero error!\n");elseprintf("= %d\n", (int)number1 % (int)number2);

break;

default:printf("\n\n\aIllegal operation!\n");

}getch();

}

Page 4: Some Imp. Concepts and Basics of C

8/14/2019 Some Imp. Concepts and Basics of C

http://slidepdf.com/reader/full/some-imp-concepts-and-basics-of-c 4/23

/*A calculator that allows multiple calculations */#include <stdio.h>

void main(){double number1 = 0.0;double number2 = 0.0;

char operation ;char answer;

start:printf("\nEnter the calculation as number operator number\n");

scanf("%lf %c %lf", &number1, &operation, &number2);

/* Code to check the input goes here */switch(operation){case '+':printf("= %lf\n", number1 + number2);break;

case '-':printf("= %lf\n", number1 - number2);break;

case '*':printf("= %lf\n", number1 * number2);break;

case '/':

if(number2 == 0)printf("\n\n\aDivision by zero error!\n");

elseprintf("= %lf\n", number1 / number2);break;

case '%':if((long)number2 == 0)printf("\n\n\aDivision by zero error!\n");

elseprintf("= %ld\n", (long)number1 % (long)number2);

break;

default:printf("\n\n\aIllegal operation!\n");

} printf("\n Do you want to do another calculation? (y or n): ");scanf(" %c", &answer);if(answer == 'y' || answer == 'Y')goto start;

}

Page 5: Some Imp. Concepts and Basics of C

8/14/2019 Some Imp. Concepts and Basics of C

http://slidepdf.com/reader/full/some-imp-concepts-and-basics-of-c 5/23

#include <stdio.h>main(){int digit = 1;clrscr();while (digit <= 10){

printf ("%d\t", digit ) ;++digit;}getch();}

#include <stdio.h>main(){int digit = 1;clrscr();

while (digit <= 10){printf ("%d\t", digit ) ;digit++;}getch();}

#include <stdio.h>main(){

int digit =1;clrscr();while (digit <= 10)printf ( "%d\t", digit++) ;getch();}

#include <stdio.h>main(){

int digit =1;clrscr();while (digit <= 10)printf ( "%d\t", ++digit) ;getch();}

Page 6: Some Imp. Concepts and Basics of C

8/14/2019 Some Imp. Concepts and Basics of C

http://slidepdf.com/reader/full/some-imp-concepts-and-basics-of-c 6/23

/* calculate the average of n numbers */#include <stdio.h>main(){int n, count = 1;float x, average, sum = 0;

clrscr();printf("How many numbers? " ) ;scanf ("%d", &n) ;

while (count <= n){printf ( " x = " ) ;scanf("%f", &x);sum += x;++count;}

/* calculate the average and display the answer */average = sum/n;printf("\nThe average i s %.2f\n", average);getch();}

#include <stdio.h>void main(){

int sum = 0;int i = 1;int count = 0;

clrscr();printf("\nEnter the number of integers you want to sum: ");scanf("%d", &count);

while(i <= count)sum += i++;

printf("Total of the first %d numbers is %d\n", count, sum);

printf("average=%.2f",(float)sum/count);

getch();}

Page 7: Some Imp. Concepts and Basics of C

8/14/2019 Some Imp. Concepts and Basics of C

http://slidepdf.com/reader/full/some-imp-concepts-and-basics-of-c 7/23

#include <stdio.h>main(){int digit = 1;clrscr();do{

printf("%d\t", digit++);}while (digit <= 10);getch();}

#include <stdio.h>main(){int digit = 1;do{

printf("%d\t", ++digit);}while (digit <= 10);getch();}

#include <stdio.h>

void main( void ){

int counter = 1;clrscr();

do{printf( "%d ", counter );

} while ( ++counter <= 10 );getch();

}

Page 8: Some Imp. Concepts and Basics of C

8/14/2019 Some Imp. Concepts and Basics of C

http://slidepdf.com/reader/full/some-imp-concepts-and-basics-of-c 8/23

/* calculate the average of n numbers */#include <stdio.h>main (){int n, count = 1 ;float x, average, sum = 0;

printf ("How many numbers? " ) ;scanf ("%d", &n) ;do{printf ( " x = " ) ;scanf("%f", &x);sum += x;++count;} while (count <= n);/* calculate the average and display the answer */average = sum/n;printf ( "\nThe average is %.2f", average) ;getch();}

#include <stdio.h>main(){int digit;

clrscr();for (digit = 0; digit <= 10; ++digit)printf ( "%d " ,digit );

getch();}

#include <stdio.h>main(){int digit = 0;clrscr();for (; digit <= 10; )printf ("%d " , digit++ ) ;

getch();}

Page 9: Some Imp. Concepts and Basics of C

8/14/2019 Some Imp. Concepts and Basics of C

http://slidepdf.com/reader/full/some-imp-concepts-and-basics-of-c 9/23

#include <stdlib.h>void main(){

int i;clrscr();for ( i = 1; i <= 20; i++ ) {

printf( "%d ", 1 + ( rand() % 6 ) );

if ( i % 5 == 0 )printf( "\n" );

}getch();

}

/*Randomizing die-rolling program */#include <stdlib.h>#include <stdio.h>

void main(){

int i;unsigned seed;

clrscr();printf( "Enter seed: " );scanf( "%u", &seed );srand( seed );

for ( i = 1; i <= 20; i++ ){

printf( "%d ", 1 + ( rand() % 6 ) );

if ( i % 5 == 0 )printf( "\n" );

}getch();

}

Page 10: Some Imp. Concepts and Basics of C

8/14/2019 Some Imp. Concepts and Basics of C

http://slidepdf.com/reader/full/some-imp-concepts-and-basics-of-c 10/23

/* Roll a six-sided die 6000 times */#include <stdio.h>#include <stdlib.h>

void main(){

int face, roll, frequency1 = 0, frequency2 = 0,

frequency3 = 0, frequency4 = 0,frequency5 = 0, frequency6 = 0;

for ( roll = 1; roll <= 6000; roll++ ) {face = 1 + rand() % 6;

switch ( face ){case 1:

++frequency1;break;

case 2:++frequency2;break;

case 3:++frequency3;break;

case 4:++frequency4;break;

case 5:++frequency5;break;

case 6:++frequency6;break;

}}

 printf( "%s%13s\n", "Face", "Frequency" );printf( " 1%13d\n", frequency1 );printf( " 2%13d\n", frequency2 );printf( " 3%13d\n", frequency3 );printf( " 4%13d\n", frequency4 );

printf( " 5%13d\n", frequency5 );printf( " 6%13d\n", frequency6 );

}

Page 11: Some Imp. Concepts and Basics of C

8/14/2019 Some Imp. Concepts and Basics of C

http://slidepdf.com/reader/full/some-imp-concepts-and-basics-of-c 11/23

/* Program Reversing the digits */#include <stdio.h>void main(){

int number = 0;int rnum = 0;int temp = 0;

printf("\nEnter a positive integer: ");scanf("%d", &number);

temp = number;

do{rnum = 10*rnum + temp % 10;temp = temp/10;

} while (temp);

printf ("\nThe number %d reversed is %d \n", number, rnum );}

/* What does this program print? */#include <stdio.h>

void main( void ){

int count = 1;while ( count <= 10 ) {

printf( "%s\n", count % 2 ? "****" : "++++++++" );count++;}

}

/* Initializing an array with a initializer list */#include <stdio.h>

void main( void ){ 

int n[ 10 ] = { 32, 27, 64, 18, 95, 14, 90, 70, 60, 37 };int i; /* counter */

 printf( "%s%13s\n", "Element", "Value" );

 

for ( i = 0; i < 10; i++ ) {printf( "%7d%13d\n", i, n[ i ] );

}

Page 12: Some Imp. Concepts and Basics of C

8/14/2019 Some Imp. Concepts and Basics of C

http://slidepdf.com/reader/full/some-imp-concepts-and-basics-of-c 12/23

/* Program Averaging ten numbers - storing the numbers the easy wa#include <stdio.h>

void main(){int numbers[10];

int count = 10;int sum = 0;float average = 0.0f;int i = 0;

printf("\nEnter the 10 numbers:\n");

/* Read the ten numbers to be averaged */for(i = 0; i < count; i ++){printf("%2d> ",i+1);scanf("%d", &numbers[i]);sum += numbers[i];

}

average = (float)sum/count;

printf("Average of the ten numbers entered is: %.2f\n", average);}

/* Histogram printing program */#include <stdio.h>#define SIZE 10

void main( void ){

/* use initializer list to initialize array n */int n[ SIZE ] = { 19, 3, 15, 7, 11, 9, 13, 5, 17, 1 };int i; /* outer for counter for array elements */int j; /* inner for counter counts *s in each histogram bar */

printf( "%s%13s%17s\n", "Element", "Value", "Histogram" );

/* for each element of array n, output a bar of the histogram */for ( i = 0; i < SIZE; i++ ) {

printf( "%7d%13d ", i, n[ i ]) ;

for ( j = 1; j <= n[ i ]; j++ ) {printf( "%c", '*' );

}

printf( "\n" );}

Page 13: Some Imp. Concepts and Basics of C

8/14/2019 Some Imp. Concepts and Basics of C

http://slidepdf.com/reader/full/some-imp-concepts-and-basics-of-c 13/23

}

/*Creating and using a programmer-defined function */#include <stdio.h>

int square( int y );

void main( void ){

int x;

for ( x = 1; x <= 10; x++ ) {printf( "%d ", square( x ) );

}

printf( "\n" );

}

int square( int y ){

return y * y;

}

Page 14: Some Imp. Concepts and Basics of C

8/14/2019 Some Imp. Concepts and Basics of C

http://slidepdf.com/reader/full/some-imp-concepts-and-basics-of-c 14/23

/* Finding the maximum of three integers */#include <stdio.h>

int maximum( int x, int y, int z );

void main( void )

{ int number1;int number2;int number3;

printf( "Enter three integers: " );scanf( "%d%d%d", &number1, &number2, &number3 );

 printf( "Maximum is: %d\n", maximum( number1, number2, number3 )

 }

int maximum( int x, int y, int z ){

int max = x;

if ( y > max ){

max = y;}

if ( z > max )

{max = z;

}

return max;}

Page 15: Some Imp. Concepts and Basics of C

8/14/2019 Some Imp. Concepts and Basics of C

http://slidepdf.com/reader/full/some-imp-concepts-and-basics-of-c 15/23

/* A scoping example */#include <stdio.h>

void useLocal( void );void useStaticLocal( void );void useGlobal( void );

int x = 1;

main( void ){

int x = 5;

printf("local x in outer scope of main is %d\n", x );

{int x = 7;

printf( "local x in inner scope of main is %d\n", x );}

printf( "local x in outer scope of main is %d\n", x );

useLocal();useStaticLocal();useGlobal();useLocal();useStaticLocal();useGlobal();

printf( "\nlocal x in main is %d\n", x );

}

void useLocal( void ){

int x = 25;

printf( "\nlocal x in useLocal is %d after entering useLocal\n",x++;

printf( "local x in useLocal is %d before exiting useLocal\n", x}

void useStaticLocal( void ){

/* initialized only first time useStaticLocal is called */static int x = 50;

Page 16: Some Imp. Concepts and Basics of C

8/14/2019 Some Imp. Concepts and Basics of C

http://slidepdf.com/reader/full/some-imp-concepts-and-basics-of-c 16/23

printf( "\nlocal static x is %d on entering useStaticLocal\n", xx++;printf( "local static x is %d on exiting useStaticLocal\n", x );

}

void useGlobal( void ){

printf( "\nglobal x is %d on entering useGlobal\n", x );

x *= 10;printf( "global x is %d on exiting useGlobal\n", x );}

/*Passing arrays to functions */#include <stdio.h>#define SIZE 5

void modifyArray( int [], int );int main()

{ int a[ SIZE ] = { 0, 1, 2, 3, 4 }, i;

for ( i = 0; i < SIZE; i++ )printf( "%3d", a[ i ] );

printf( "\n" );modifyArray( a, SIZE ); /* passed call by reference */printf( "The values of the modified array are:\n" );

for ( i = 0; i < SIZE; i++ )printf( "%3d", a[ i ] );

return 0;}

void modifyArray( int b[], int size ){

int j;

for ( j = 0; j <= size - 1; j++ )b[ j ] *= 2;

}

Page 17: Some Imp. Concepts and Basics of C

8/14/2019 Some Imp. Concepts and Basics of C

http://slidepdf.com/reader/full/some-imp-concepts-and-basics-of-c 17/23

/* Demonstrating the const type qualifier with arrays */#include <stdio.h>

void tryToModifyArray( const int [] );

int main()

{ int a[] = { 10, 20, 30 };

tryToModifyArray( a );printf("%d %d %d\n", a[ 0 ], a[ 1 ], a[ 2 ] );return 0;

}

void tryToModifyArray( const int b[] ){

b[ 0 ] /= 2; /* error */b[ 1 ] /= 2; /* error */b[ 2 ] /= 2; /* error */

}

Page 18: Some Imp. Concepts and Basics of C

8/14/2019 Some Imp. Concepts and Basics of C

http://slidepdf.com/reader/full/some-imp-concepts-and-basics-of-c 18/23

/* Initializing multidimensional arrays */#include <stdio.h>

void printArray( const int [][ 3 ] );

int main(){

int array1[ 2 ][ 3 ] = { { 1, 2, 3 }, { 4, 5, 6 } },array2[ 2 ][ 3 ] = { 1, 2, 3, 4, 5 },array3[ 2 ][ 3 ] = { { 1, 2 }, { 4 } };

printf( "Values in array1 by row are:\n" );printArray( array1 );

printf( "Values in array2 by row are:\n" );printArray( array2 );

printf( "Values in array3 by row are:\n" );printArray( array3 );

return 0;}

void printArray( const int a[][ 3 ] ){

int i, j;

for ( i = 0; i <= 1; i++ ) {

for ( j = 0; j <= 2; j++ )

printf( "%d ", a[ i ][ j ] );

printf( "\n" );}

}

/* Recursive factorial function */#include <stdio.h>

long factorial( long number );

void main( void ){

int i;

for ( i = 0; i <= 10; i++ ){

printf( "%2d! = %ld\n", i, factorial( i ) );}

Page 19: Some Imp. Concepts and Basics of C

8/14/2019 Some Imp. Concepts and Basics of C

http://slidepdf.com/reader/full/some-imp-concepts-and-basics-of-c 19/23

}long factorial( long number ){

if ( number <= 1 ){

return 1;}else{

return ( number * factorial( number - 1 ) );}}

/* Program Displaying a string */#include <stdio.h>

void main(){printf("The character \0 is used to terminate a string");

}

/* Program Lengths of strings */#include <stdio.h>void main(){char str1[40] = "To be or not to be";int count = 0;while (str1[count] != '\0')count++;printf("\nThe length of the string %s is %d characters.", s

count);}

Page 20: Some Imp. Concepts and Basics of C

8/14/2019 Some Imp. Concepts and Basics of C

http://slidepdf.com/reader/full/some-imp-concepts-and-basics-of-c 20/23

/* Program Joining strings */#include <stdio.h>void main(){char str1[40] = "To be or not to be";char str2[40] = ",that is the question";int count1 = 0;

int count2 = 0;

while (str1[count1] != '\0')count1++;

while (str2[count2] != '\0')count2++;

 /* Check that we have enough space for both strings */if(sizeof str1 < count1 + count2 + 1)printf("\length is small");

else{

count2 = 0;while(str2[count2] != '\0')str1[count1++] = str2[count2++];

str1[count1] = '\0';printf("\n%s\n", str1 );

}}

/* Program Joining strings - revitalised */#include <stdio.h>#include <string.h>#define STR_LENGTH 40

void main(){char str1[STR_LENGTH] = "To be or not to be";char str2[STR_LENGTH] = ",that is the question";

 

if(STR_LENGTH > strlen(str1) + strlen(str2)) /* Enough spa*/

printf("\n%s\n", strcat(str1, str2) );elseprintf("\n can't combine");

}

Page 21: Some Imp. Concepts and Basics of C

8/14/2019 Some Imp. Concepts and Basics of C

http://slidepdf.com/reader/full/some-imp-concepts-and-basics-of-c 21/23

/* Program Testing characters in a string */#include <stdio.h>#include <ctype.h>void main(){char buffer[80];int i = 0;

int num_letters = 0;int num_digits = 0;

printf("\nEnter an interesting string of less thancharacters:\n");gets(buffer); /* Read a string into buffer */

while(buffer[i] != '\0'){if(isalpha(buffer[i]))num_letters++; /* Increment letter count */

if(isdigit(buffer[i]))num_digits++; /* Increment digit count */

i++;}printf("\nYour string contained %d letters and %d digits.\n",num_letters, num_digits);}

Page 22: Some Imp. Concepts and Basics of C

8/14/2019 Some Imp. Concepts and Basics of C

http://slidepdf.com/reader/full/some-imp-concepts-and-basics-of-c 22/23

/* Program Arrays of strings */#include <stdio.h>void main(){char str[][40] = {

"To be or not to be" ,

",that is the question"};int count1 = 0; /* Length of first string */int count2 = 0; /* Length of second string */

/* find the length of the first string */while (str[0][count1] != '\0')count1++;

/* Find the length of the second string */while (str[1][count2] != '\0')count2++;

/* Check that we have enough space for both strings */if (sizeof str[0] < count1 + count2 + 1)printf("\n can't combine");

else

{ /* Copy 2nd string to first */count2 = 0;while ((str[0][count1++] = str[1][count2++]) != '\0');

printf("\n%s", str[0]); /* Output combined string */

}}

Page 23: Some Imp. Concepts and Basics of C

8/14/2019 Some Imp. Concepts and Basics of C

http://slidepdf.com/reader/full/some-imp-concepts-and-basics-of-c 23/23

/* Comparing strings */#include <stdio.h>

#include <string.h>

void main(){

char word1[20];char word2[20];

printf("\nType in the first word:\n1: ");scanf("%s", word1);printf("Type in the second word:\n 2: ");scanf("%s", word2);

/* Compare the two words */if(strcmp(word1,word2) == 0)printf("You have entered identical words");

elseprintf("%s comes before %s",

(strcmp(word1, word2) < 0) ? word1 : word2,(strcmp(word1, word2) < 0) ? word2 : word1);

}