You can use geoprocessing and summary tools in either ArcGIS or QGIS to get the answer. There are several potential approaches, but I suggest union.
ArcGIS 10.1 union: http://resources.arcgis.com/en/help/main/10.1/index.html#//00080000000s000000
QGIS Vector Union: http://hub.qgis.org/wiki/17/Vector_union (requires fTools plugin)
Regardless of the platform, the general steps will be the same.
Make sure both datasets are in the same coordinate system, because
you are calculating/comparing areas, probably most convenient to use
a meters-based projection. Make sure area is calculated on country.
Union the datasets together to produce an output showing all shapes from both.
Update an area field to show the area of each new intersected polygon
Summarize the attribute table to get a new table showing the sum of tribe area per country. I've never done this in QGIS but looks like a plugin like GroupStats will be required. You can also export the union attribute table to an external spreadsheet or database program for calculating summaries.
It's unlikely the last step will produce a result in the format specified above (NIGERIA | Tribe 1: 20% of land | Tribe 2: 40% of land | Tribe 3: 40% of land); instead each of these will occupy one row in the summary table. Something like:
Country, Tribe, Area_percent
Nigeria, Tribe1, .20
Nigeria, Tribe2, .40
Nigeria, Tribe3, .40
You can then use a spreadsheet program or similar to reformat as needed.