Opengl import 3d model problem

Hey im ive been working on importing 3d models from 3ds max and blender as a obj file as they are simple and texted based. Im wanting to be able to read all the vertices and faces into my prgram and display my models using opengl. I am able to read in all my data into my program from one of my model txt files but then when i come to draw them in 3D space the triangles do not draw correctly. triangular model class ive been working on can anyone give us a hand?? or point me in a better direction.

#pragma once
#include “Model.h”
#include “stdafx.h”
#include <Windows.h>
#include <string>
#include <iostream>
using namespace std;
class Triangular
{
public:
struct point3D {
float x;
float y;
float z;
};
struct colour{
float r;
float g;
float b;
};

struct polygon {
int a;
int b;
int c;
int d;
};
int NUM_VERTS;
int NUM_COL;
int NUM_POLY;
point3D * vertices;
colour * colours;
polygon * indices;
Triangular(string fName)
{
Triangular::readFile(fName);
}
virtual ~Triangular(void)
{
delete vertices;
delete colours;
delete indices;
}

int readFile(string fileName)
{
	ifstream inFile;
	inFile.open(fileName.c_str());
	if (!inFile.good())
	{
		cerr  &lt;&lt; "Can't open file" &lt;&lt; endl;
		NUM_POLY = 0;
		return 1;
	}
	inFile &gt;&gt; NUM_VERTS;
	vertices = new point3D[NUM_VERTS];
	for (int i=0; i &lt; NUM_VERTS; i++)
	{	
		inFile &gt;&gt; vertices[i].x;
		inFile &gt;&gt; vertices[i].y;
		inFile &gt;&gt; vertices[i].z;
		string temp;
		inFile &gt;&gt; temp;
		cout &lt;&lt; vertices[i].x &lt;&lt; " " &lt;&lt; vertices[i].y &lt;&lt; " " &lt;&lt; vertices[i].z &lt;&lt; "

";
}

	/*inFile &gt;&gt; NUM_COL;
	colours = new colour[NUM_COL];

	for (int i=0; i &lt; NUM_COL; i++)
	{	
		inFile &gt;&gt; colours[i].r;
		inFile &gt;&gt; colours[i].g;
		inFile &gt;&gt; colours[i].b;
	}*/

	inFile &gt;&gt; NUM_POLY;
	indices = new polygon[NUM_POLY];
	for(int i=0; i &lt; NUM_POLY; i++)
	{
		inFile &gt;&gt; indices[i].a;
		inFile &gt;&gt; indices[i].b;
		inFile &gt;&gt; indices[i].c;
		string temp;
		inFile &gt;&gt; temp;
		cout &lt;&lt; indices[i].a &lt;&lt; " " &lt;&lt; indices[i].b &lt;&lt; " " &lt;&lt; indices[i].c &lt;&lt; "

";
}

	/*Reading 3ds max polys
	for (int i=0; i &lt; NUM_POLY; i++)
	{	
		string temp;
		inFile &gt;&gt; temp;
		string ind;
		if (temp != "f")
		{
			bool first = true;
			ind = "";
			for(int j=0; j &lt; temp.length(); j++)
			{
				if(temp.at(j) != '/')
				{
					ind += temp.at(j);
				}
				else if(temp.at(j) = '/')
				{
					if(first)
					{
						indices[i].a = atoi(ind.c_str());
						first = false;
					}
					else
					{
						indices[i].b = atoi(ind.c_str());
					}
					ind = "";
				}
			}
			indices[i].c = atoi(ind.c_str());
			cout &lt;&lt; indices[i].a &lt;&lt; " " &lt;&lt; indices[i].b &lt;&lt; " " &lt;&lt; indices[i].c &lt;&lt; "

";
}
else{i–;}
}*/
inFile.close();
return 0;
}
void drawPolygon(int a,int b,int c){
glVertex3fv(&vertices[a].x);
glVertex3fv(&vertices[b].x);
glVertex3fv(&vertices[c].x);

}
void draw(){glBegin(GL_TRIANGLES);
	for (int i = 0; i &lt; NUM_POLY; i++){
		glColor3f(6.0, 0.0, 0.0);
		drawPolygon(indices[i].a, indices[i].b, indices[i].c);
	}glEnd();
}

};

Are you exporting your .OBJ as triangles only? .OBJ faces can be polygons