المپدیا

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

ابزار کاربر

ابزار سایت


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

چه‌کسی عاشق C‎ است؟

  1. تابع ‎JJ‎ در حالت عادی چه‌کاری را انجام می‌دهد؟
  2. هدف نویسنده‌ی این کد چه بوده است؟
  3. ‎‎ خروجی این برنامه چیست؟
  4. با توجه به هدف نویسنده‌ی این کد، آیا این برنامه از نظر زمان اجرا بهینه است؟
#include <cstdio>
#include <cstring>
char s[20] = "I LOVE C!";
void JJ(int i1, int i2) {
    s[i1] = s[i1] + s[i2];
    s[i2] = s[i1] - s[i2];
    s[i1] = s[i1] - s[i2];
}
int main() {
    for (int i=0; i<strlen(s); i++)
        JJ(i, strlen(s)-1-i);
    printf("%s\n", s);
    return 0;
}

ابزار صفحه