Я бы сделал это так:
NSArray *myImageNames = [NSArray arrayWithObjects:@"rock.png", @"paper.png", @"scissors.png", nil];
int index = arc4random() % [myImageNames count];
UIImage *myImage = [UIImage imageNamed:[myImageNames objectAtIndex:index]];
myUIImageView.image = myImage;
Очевидно, что вы можете держаться за myImageNames, чтобы вам не приходилось обновлять его каждый прогон, если вы сочтете это полезным.
Edit:
Понял. Смотрите обновленный код. Предполагается, что вы уже добавили UIImageView с именем myUIImageView к вашему представлению. Я полагаю, вы знаете, как это сделать, если на экране уже есть кнопка UIB.
Чтобы добавить UIImageView:
Объявите UIImageView * myUIImageView в вашем заголовке.
Поместите это в viewDidLoad, если вы используете xib:
myUIImageView = [[UIImageView alloc] initWithFrame:CGRectMake(x, y, width, height)];
[self.view addSubview:myUIImageView];
Заменить x, y, width и height на соответствующие значения. Они будут определять, где в представлении появляется UIImageView и насколько оно велико.