Datatypes Sample in C

//Datatype's program in C using char,int,float,double,pointer,array,structure,union
#include<stdio.h>
#include<conio.h>
void primary();
void user();
void derived();
struct student
{
    int d2;
    char s2[20];
}stu;

union student1
{
    int d1;
    char s1[20];
}stu1;

void main()
{
    char ch;
    //clrscr();
    while(1)
    {
    printf("\nDISPLAYING BASIC DATATYPE");
    printf("\na.primary datatype\nb.derived datatype\nc.exit");
    printf("\nenter your choice:");
    scanf("%c",&ch);
    switch(ch)
    {
    case 'a':primary(); break;
    case 'b':derived();break;
    case 'c':exit(0);
    default:printf("\nwrong choice");
    }
    }
    getch();
}

void primary()
{
    int i,ch;
    char c1;
    float f;
    double d;
    do
    {
    printf("\nPRIMARY DATATYPES\n1.integer\t2.float\t3.character\t4.double\t5.return to main");
    printf("\nenter ur choice:");
    scanf("%d",&ch);
    switch(ch)
    {
    case 1:printf("\nenter any integer");
           scanf("%d",&i);
           printf("INTEGER: %d",i);
           break;
    case 2:printf("\nenter any float");
           scanf("%f",&f);
           printf("FLOAT: %f",f);
           break;
    case 3:printf("\nenter any character");
           fflush(stdin);
           scanf("%c",&c1);
           printf("CHAR: %c",c1);
           break;
    case 4:printf("\nenter any double value");
           fflush(stdin);
           scanf("%lf",&d);
           printf("DOUBLE: %lf",d);
    }
    }while(ch<=4);
}

void derived()
{
    int ch,a[10],i,n,a1,*p;
    p=&a1;
    do
    {
    printf("\nDERIVED DATATYPE\n1.array\t2.pointer\t3.structure\t4.union\t5.return to main");
    printf("\nenter ur choice:");
    scanf("%d",&ch);
    switch(ch)
    {
    case 1:
        printf("enter no.of integer elements");
        scanf("%d",&n);
        printf("\nenter the elements");
        for(i=0;i<n;i++)
            scanf("%d",&a[i]);
        printf("\nDISPLAYING ARRAY");
        for(i=0;i<n;i++)
        {
            printf("\na[%d]=%d",i,a[i]);
        }
        break;
    case 2:
        printf("enter an integer");
        scanf("%d",&(*p));
        printf("\n*p=%d",(*p));
        printf("\n&p=%u",p);
        break;
    case 3:
        printf("\nenter student rollno");
        fflush(stdin);
        scanf(" %d",stu.d2);
        printf("\nenter student name:");
        scanf("%s",stu.s2);
        printf("\nDISPLAYING STRUCTURE FROM PROGRAM");
        printf("\nstruct student\nint d2: %d\nchar s2[20]: %s",stu.d2,stu.s2);
        break;
    case 4:
        printf("\nenter student rollno");
        fflush(stdin);
        scanf(" %d",stu1.d1);
        printf("\nenter student name:");
        scanf("%s",stu1.s1);
        printf("\nDISPLAYING UNION FROM PROGRAM");
        printf("\nunion student1\nint d: %d\nchar a[20]: %s",stu1.d1,stu1.s1);
        break;
    }
    }while(ch<=4);
}