Cloud computing aims at providing elastic applications that can be scaled at runtime. In practice, traditional service composition methods are not flexible enough to changes in cross-cloud environment. In view of this challenge, an adaptive service selection method for cross-cloud service composition is proposed in this paper, by dynamically selecting proper services with near-optimal performance for adapting to changes in time. First, concretely speaking, the service selection and execution are modeled with Markov decision process to ensure flexibility. Second, service pair is defined, and the way to build service pairs set is proposed to predict the performance of candidate services. Third, the adaptive service selection algorithm is designed to select proper cloud services for changing cross-cloud environment. Finally, a case study for cross-cloud service composition and experiments are presented for validating the feasibility of our proposal. Concurrency and Computation: Practice and Experience, 2013.© 2013 Wiley Periodicals, Inc.