Ваши два объявленных объекта типа student
.
Первый объявлен в глобальном пространстве имен
struct student
{
char name [50];
int roll;
float marks;
}s = {"Karthik",1,95.3};
и инициализирован, а второй - в области видимости блокафункция main
struct student s;
, кроме того, не инициализированная.
Объект, объявленный в области видимости блока, скрывает объект с тем же именем, объявленным в глобальном пространстве имен.
Удалите локальную декларацию или используйте полное имя, чтобы указать объект, объявленный в глобальном пространстве имен, например
cout<<"\nDisplaying Information : "<<endl;
cout<<"Name : "<< ::s.name<<endl;
cout<<"Roll : "<< ::s.roll<<endl;
cout<<"Marks : "<< ::s.marks<<endl;