المپدیا

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

ابزار کاربر

ابزار سایت


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

سوال ۲

خروجی برنامه‌ی زیر را بنویسید.

#include<iostream>‎
‎using namespace std;‎
‎void swap(int *p‎,int **q){‎
  ‎int c=**q;‎
  ‎**q=*p;‎
  ‎*p=c;}void swap1(int **p‎,int **q){‎
  ‎int *c=*p;‎
  ‎*p=*q;‎
  ‎*q=c;}int main(){‎
  ‎int a‎,*p‎,**q;‎
  ‎q=new int *;‎
  ‎*q=new int;‎
  ‎p=*q;‎
  ‎*p=0;++**q;‎
  ‎a=*p+**q;‎
  ‎cout << a << '\n';‎
  ‎swap(p‎, ‎q);‎
  ‎cout << *p << '\n';‎
  ‎*q=&a;‎
  ‎swap(p‎, ‎q);‎
  ‎cout << *p << '\n';‎
  ‎swap1(&p‎, ‎q);‎
  ‎cout << *p << '\n';‎
  ‎a--;‎
  ‎cout << *p << '\n';}

ابزار صفحه