Menu

Tuesday, 23 June 2015

C PROGRAM TO CREATE A STRUCTURE TO SPECIFY DATA ON STUDENTS ROLL NUMBER, NAME, YEAR OF JOINING. WRITE A FUNCTION TO PRINT NAMES OF ALL STUDENTS WHO JOINED IN PARTICULAR YEAR AND PRINT DATA OF STUDENTS WHOSE ROLL NUMBER IS GIVEN.



#include<stdio.h>
void getbyyear(int y,int no);
void getbyrollno(int n,int no);
struct student
{
    int rollno;
    char name[80];
    int year;
};
struct student stud[100];
main()
{
    int i,j,no,choice,yr,rno;
    char ans;
    printf("Enter number of students :");
    scanf("%d",&no);
    for(i=0;i<no;i++)
    {
        printf("Enter data for student(rollno,name,year) :");
        scanf("%d %s %d",&stud[i].rollno,stud[i].name,&stud[i].year);
    }
    do
    {
        printf("\nEnter your choice:\n");
        printf("1:Students in particular year ");
        printf("2:Students by roll number ");
        printf("3:Exit : ");
        scanf("%d",&choice);
        switch(choice)
        {
            case 1:
                printf("Enter year :");
                scanf("%d",&yr);
                getbyyear(yr,no);
                break;
            case 2:
                printf("Enter roll no :");
                scanf("%d",&rno);
                getbyrollno(rno,no);
            case 3:
                exit(0);
            default:
                printf("Invalid choice");
        }
        printf("\n do you want to continue ?(y/n):");
        fflush(stdin);
        ans=getche();
    }while(ans=='y');
}
void getbyyear(int y,int no)
{
    int i,flag;
    for(i=0;i<no;i++)
    {
        if(stud[i].year==y)
        {
            flag=1;
            printf("%5d %10s %5d \n",stud[i].rollno,stud[i].name,stud[i].year);
        }
    }
    if(!flag)
    {
        printf("No Data Found");
    }
}
void getbyrollno(int n,int no)
{
    int i,flag;
    for(i=0;i<no;i++)
    {
        flag=1;
        if(stud[i].rollno==n)
        printf("%5d %10s %5d \n",stud[i].rollno,stud[i].name,stud[i].year);
    }
    if(!flag)
    {
        printf("No Data Found");
    }
}


OUTPUT

Enter number of students :3
Enter data for students(rollno,name,year) :512
raj
4
Enter data for students(rollno,name,year) :516
venky
4
Enter data for students(rollno,name,year) :551
ravi
4
Enter your choice:
1:Students in patriculat year 2:Students by roll number 3:Exit :1
Enter year :4
512   raj   4
516 venky   4
551   ravi   4
do you want to continue ?(y/n):n