المپدیا

دانش‌نامه‌ی المپیاد کامپیوتر ایران

ابزار کاربر

ابزار سایت


سوالات المپیاد:دوره ی تابستان:دوره ی ۱۸:برنامه نویسی:سوال ۱۱

مسیر تمرین‌های کاربر

  1. خروجی این برنامه چیست؟
  2. اگر خط (std::swap(p‎, ‎q به صورت ‎std::swap(*p‎, ‎*q)‎ نوشته شود در این صورت خروجی چیست؟
#include <cstdio>
#include <cstring>
#include <algorithm>
 
int main() {
  char s[100];
  strcpy(s, "\root\tamreen");
  /*         0123456789012 */
  int n = strlen(s);
  for (char *p = s, *q = s + n; p < q; p++, q--)
    std::swap(p, q);
  printf("%s\n", s);
  return 0;
}

ابزار صفحه