South Africa captain Faf du Plessis won the toss and elected to bat in the second test against England at Trent Bridge on Friday.
England were unchanged from the side that marked Joe Root's first match as captain with a 211-run win inside four days at Lord's on Sunday – a fixture where the new skipper scored 190 – to go 1-0 up in this four-match series.
South Africa, however, made three changes.
Regular captain Du Plessis, who did not play at Lord's following the birth of his first child, returned in place of struggling fellow batsman JP Duminy.
Since his 155 against Sri Lanka at Johannesburg's Wanderers in January, Duminy has averaged 17 in four tests, with a top score of just 39.
Fast bowler Duanne Olivier, playing in his second test, started in place of Kagiso Rabada, suspended from this match as a result of swearing at England allrounder Ben Stokes at Lord's.
Meanwhile the Proteas bolstered their attack by bringing in pace-bowling allrounder Chris Morris for Theunis de Bruyn.
This is England's first test at Trent Bridge since their 2015 Ashes-clinching win when paceman Stuart Broad took eight for 15 on his Nottinghamshire home ground as Australia collapsed to 60 all out on the opening morning.
England have not lost a test at Trent Bridge in a decade.
South Africa, however, have a proud away test record. In their past 19 series spanning some 10 years on the road, they've won 13, drawn five and lost just one – in India in 2015/16.
ENGLAND: Alastair Cook, Keaton Jennings, Gary Ballance, Joe Root (capt), Jonny Bairstow (wk), Ben Stokes, Moeen Ali, Liam Dawson, Stuart Broad, Mark Wood, James Anderson
SOUTH AFRICA: Dean Elgar, Heino Kuhn, Hashim Amla, Faf du Plessis (capt), Temba Bavuma, Quinton de Kock (wk), Vernon Philander, Chris Morris, Keshav Maharaj, Morne Morkel, Duanne Olivier.