I've been trying to write some code to read a file in this sort of format

Code:
#comment blah blah

[catagory]
variable=value

[another catagory]
variable=value
variable=value
But I got lost and ended up with this useless piece of ****:

Code:
#include <string.h>
#include <stdio.h>
#include <stdlib.h>
#include <ctype.h>

#define TEST_FILE "test.dat"


int caseConvert(char *str)
{
    char a;
	while(*str)
	{
		*str=tolower(*str);
		*str++;
	}
	return 0;
}

int firstword(char *inputstring, char *output)
{
	int i = 0;
	int j = 0;
	int k = 0;
	while(*inputstring != '=')
	{
		i++;
		*output = *inputstring;
		*output++;
		*inputstring++;
	}
	return i + 1;
}

int getEntry(char *section,char *entryname, char *filename)
{
	FILE *datafile = fopen(filename,"r");
	int flag = 0;
	char line[100];
	char secname[BUFSIZ];
	char currentword[BUFSIZ];
	char thingy[BUFSIZ];
	caseConvert(section);
	caseConvert(entryname);
	int i = 0;
	int j = 0;
	int k = 0;

	int returnNumber=0;

	if(!datafile)
	{
		return -1;
	}

	while(fgets(line, 100, datafile)!=NULL && flag != 1)
	{
		j = firstword(line, currentword);
     	if(line[0] == '#') continue;
	 	else if(line[0] == '[')
	 	{
		 	do
		 	{
			 	i++;
			 	secname[i-1] = line[i];
		 	}
		 	while(line[i+1] != ']');
		}
		else if(strcmp(currentword,entryname) && strcmp(section,secname))
		{
			printf("%c",line[j]);
			while(line[j])
			{
				thingy[k] = line[j];
				j++;
				k++;
			}
		}
	}
	return 0;
}


int main(void)
{
	int i = 0;
	i = getEntry("other","percent", TEST_FILE);
	printf("%d",i);
	return 0;
}
If anyone could fix my hopeless code, I'd be very greatful

here's the file it needs to read:
Code:
#test.dat
[other]
percent=1
#'s are ignored lines