نمونه سوال امتحان برنامه نویسی c

بسمه تعالی

1-  برنامه ای بنویسید که  36 جمله اولیه سری زیر را بصورت سطری در یک ماتریس M[6][6]  قرار داده و ماتریس حاصل را چاپ کند ؟

...+Y=1+1/2+1/4+1/6+1/8                                                                                   

2-  آرایه یک بعدی مرتب شده ی A  بصورت صعودی با 50  عنصر موجود است . برنامه ای بنویسید که یک عدد را خوانده و در آرایه A  طوری وارد نماید که ترتیب  sort  به هم نخورد؟ 

3-  یک دسته عدد صحیح مثبت مفروض است ، تعداد اعداد معلوم نیست ولی آخرین عدد صفر می باشد ، برنامه ای بنویسید که این اعداد را یکی یکی خوانده و با هم مقایسه کرده و سومین عدد از نظر بزرگی را پیدا کرده و در ضمن مشخص نماید که چندمین عدد بوده است و آن را چاپ کند؟

4- برنامه ای بنویسید که یک عدد صحیح مثبت (حداکثر 9 رقم) را بخواند و سپس ارقام آن را بصورت نزولی مرتب کرده و عدد جدید بدست اماده را چاپ کند ؟ 

(مثلا عدد 4513 را  بصورت 1345 چاپ کند )

5- یک اشاره گر به int  و یک اشاره گر به float  و یک اشاره گر به char  تعریف کنید که به متغییری از نوع خودش اشاره می کنند. سپس آدرس موجود در هر اشاره گر را چاپ کنید و در انتها با دستور ++ هر یک از اشاره گرها را به خانه ی بعدی خود اشاره داده و مجددا آدرس موجود در آنها را چاپ کنید؟

6- برنامه ای بنویسید که یک ماتریس را که دارای 5 سطر و 5 ستون است خوانده و سپس بزرگترین عنصر هر ستون را با کوچکترین عنصر همان ستون عوض کرده و ماتریس حاصل را چاپ کند؟

7- برنامه ای بنویسید که یک صد عدد صحیح مثبت با حداکثر 5 رقم را بخواند و کلیه اعداد اول چهار رقمی را که در آهنها صفر وجود ندارد را چاپ کند؟

 ( بررسی رقم صفر در عدد باید در یک برنامه فرعی صورت بگیرد )

8- برنامه ای بنویسید که x   را خوانده و از طریق برنامه اصلی و بوسیله برنامه فرعی  fun  بنام  test   مجموع  جملات سری زیر را تا دقت  ۱۰به توان ۶-  محاسبه و چاپ کند ؟

Y=(1/x) – (x^2/x - x^2/2) + (x^4/x -  x^2/2 + x^3/3 ) – ( x^6/x - x^2/2+x^3/3 – x^4/4) + …

 

 

 

How C Programming Works

The C programming language is a popular and widely used programming language for creating computer programs. Programmers around the world embrace C because it gives maximum control and efficiency to the programmer. If you are a programmer, or if you are interested in becoming a programmer, there are a couple of benefits you gain from learning C:

  • You will be able to read and write code for a large number of platforms -- everything from microcontrollers to the most advanced scientific systems can be written in C, and many modern operating systems are written in C.

  • The jump to the object oriented C++ language becomes much easier. C++ is an extension of C, and it is nearly impossible to learn C++ without learning C first.


This animation shows the execution of a simple C program. By the end of this article you will understand how it works!

In this article, we will walk through the entire language and show you how to become a C programmer, starting at the beginning. You will be amazed at all of the different things you can create once you know C

سخنان قصار

یا مؤدبانه سخن بگو یا عاقلانه سکوت کن.
حضرت علی (ع)

سخنان قصار

كسي كه از هيچ چيز كوچكي خوشحال نمي شود ، هيچگاه خوشبخت نخواهد شد. اپيكور

آرامش مدام نیز کسل کننده است. گاهی طوفان هم لازم است . فردریش نیچه

سخن های پست ، آدمهای حقیر را جذب و خردمندان را فراری می دهد . اُرد بزرگ

من هفتصد بار اشتباه نكردم. من يك بار اشتباه نكردم من زماني موفق شدم كه هفتصد راهي را كه موفقيت آميز نبود اصلاح كردم. هر گاه راهي را كه عمل نمي كرد حذف كردم راهي را پيدا كردم كه كار مي كرد. توماس اديسون


زمانيكه دانش يك مرد براي موفقيت كافي است. ولي تقواي او كافي نيست. هر چه را كه او ممكن است بدست آورد دوباره از دست خواهد داد. كنفسيوس

براي قضاوت در مورد موفقيت خودت ببين چه بدست آورده اي و در قبال آن چه از دست داده اي. دالاي لاما

از  گفتن نمي‌دانم نهراس . مارك مك كورميك

سخنان قصار

انسان همچون رودخانه است ؛ هر چه عميق تر باشد ، آرام تر و متواضع تر است. منتسكيو

آموزش

هر چیز تازه ای که می آموزی, شخصیت تازه ای به تو می دهد. (تور گنیف)

ویژوآل بیسیک بررسی عنصر Timer با طرح یک مثال

از عنصر تایمر زبان ویژوال بیسیك برای بوجود آوردن مفهوم زمان در برنامه ها استفاده می شود. در این فرصت با ذكر یك مثال با این عنصر بیشتر آشنا می شویم.

یک عنصر Timer (به شكل ساعت در جعبه ابزار محیط برنامه نویسی ویژوال بیسیك) وارد فرم کنید...
ادامه نوشته

ساختمان داده ها اشاره گر و کاربرد آن

1- همونطور که می دونید تک تک بایتهای حافظه برای خودشون آدرسی دارن ، که یه عدد صحیح و مثبته! این آدرسها دقیقا مثل کد پستی عمل می کنن؛ یعنی کاملا منحصربفرد هستن ، و می شه ازشون برای ارجاع به بایت استفاده کرد...
ادامه نوشته

ساختمان داده ها پیمایش درخت جستجوی دودویی - قسمت اول

سه روش استاندارد برای پیمایش درختهای دودویی وجود داره: پیمایش پیشوندی (preorder)، پیمایش میانوندی (inorder) و پیمایش پسوندی (postorder).

تعاریف بازگشتی این پیمایش ها به ترتیب زیره:

...
ادامه نوشته

ساختمان داده ها پیمایش درخت جستجوی دودویی - قسمت دوم

تذکر: در این مقاله منظور از درخت دودویی، درخت جستجوی دودویی است!

همونطور که عنوان شد سه روش برای پباده سازی پیمایشهای درخت دودویی وجود داره:

۱- پیمایش بازگشتی

۲- پیمایش غیر بازگشتی با استفاده از پشته

۳- پیمایش غیر بازگشتی بدون استفاده از پشته

...

ادامه نوشته

ساختمان داده ها صف اولویت دار

صف اولویت دار (Priority Queue) از جمله ساختمان داده های بسیار پرکاربرد است.

در صف عادی از تکنیک FIFO - مخفف First In First Out - استفاده می شود. در این تکنیک مثل یک صف نانوایی داده ها به ترتیب ورود پشت سر هم در صف قرار می گیرند. بنابراین اولین داده ورودی اولین داده خروجی نیز خواهد بود...

ادامه نوشته

ساختمان داده ها مساله هشت وزیر

هشت وزیر از جمله مسائل پرمخاطب مباحث طراحی الگوریتمه:

۸ مهره وزیر رو روی صفحه شطرنج چنان بچینید که نتونن همدیگه رو تهدید کنن.

 

برای افرادی که با بازی شطرنج آشنایی ندارن:

...
ادامه نوشته

ساختمان داده ها آشنایی با درخت Heap - قسمت اول

درخت Heap (یا هرم، یا کپه!) از جمله ساختارهای پرکاربرد بحث ساختمان داده هاست. در این مجموعه مقالات سعی می کنم شما را با این ساختار آشنا کرده و مسائل مرتبط با آن را تشریح کنم.

ابتدا با تعریف درخت دودویی کامل شروع می کنیم.

...
ادامه نوشته

ساختمان داده ها برج هانوی

تاریخچه و صورت مساله:

مساله برج هانوی (Tower of Hanoi) یکی از مسائل جذاب، قدیمی و مشهور است که به یک مساله کلاسیک در علوم کامپیوتر تبدیل شده است. تاریخچه مساله از این قرار است

...

ادامه نوشته

ساختمان داده ها مرتب سازی هرمی

یکی دیگر از کاربردهای درخت heap مرتب سازی داده ها است. این روش مرتب سازی به روش مرتب سازی هرمی (Heap Sort) موسوم است. همانطور که می دانید در یک درخت max-heap (یا min-heap) بزرگترین (یا کوچکترین) عنصر همواره در ریشه قرار دارد...
ادامه نوشته

ساختمان داده ها آشنایی با درخت Heap - قسمت سوم

حذف گره از درخت هیپ عموما از ریشه آن صورت می گیرد. حذف گرهی غیر از گره ریشه ممکن است هزینه ای معادل ساخت مجدد درخت تحمیل کند! چرا که با حذف یک گره غیر ریشه و جایگزین کردن گرهی دیگر با آن، نه تنها شرط heap بودن که شرط درخت کامل بودن هم ممکن است نقض شود!!! اکثر کاربردهای این نوع درخت نیز تنها با حذف گره از ریشه سر و کار دارند...
ادامه نوشته

VPN - وی پی ان چیست ؟

همزمان با عمومیت یافتن اینترنت، اغلب سازمانها و موسسات ضرورت توسعه شبکه اختصاصی خود را به درستی احساس کردند. در ابتدا شبکه های اینترانت مطرح گردیدند. این نوع شبکه بصورت کاملاً اختصاصی بوده و کارمندان یک سازمان با استفاده از رمز عبور تعریف شده، قادر به ورود به شبکه و استفاده از منابع موجود می باشند...
ادامه نوشته

موتورهای جستجو چگونه کار ميکنند؟

موتورهاي جستجو به دو دسته کلي تقسيم مي‌شوند. موتورهاي جستجوي پيمايشي و فهرستهاي تکميل دستي. هر کدام از آنها براي تکميل فهرست خود از روشهاي متفاوتي استفاده مي‌کنند که هر يک را بطور جداگانه مورد بررسي قرار مي‌دهيد
ادامه نوشته

جستجوی دودویی (باینری) به روش بازگشتی

int BinarySearch(int list[], int start, int last, int x)
{
int middle;
if (start > last)
return -1;
else
{
middle = (start + last) /2;
if(x == list[middle])
return middle;
else if( x < list[middle])
return BinarySearch(list,start,middle-1,x);
else
return BinarySearch(list,middle,last,x);
}
}

ساختار های تکرار

ساختار چند انتخابی switch

در دو مبحث قبلی ساختارهای if و if/else را بررسی کرديم. در برنامه نويسی گاهی به الگوريتمی نياز پيدا می کنيم که در آن متغيری به ازای هر مقدار صحيح ثابتی، باعث اجرای يک دستور خاص شود و به ازای هر مقدار اعمال مختلف انجام پذيرد...
ادامه نوشته

برنامه چاپ يک متن

برنامه چاپ يک متن

در مباحث قبلی با مفاهيم حافظه و انواع داده، اعمال محاسباتی، عبارات منطقی ودستورات ورودی وخروجی آشنا شديم. با اين مقدمات می توان نوشتن اولين برنامه را آغاز کرد و با اين برنامه نحوه اجرا و ساير جزئيات را مورد بررسی قرار خواهيم داد...

ادامه نوشته

الگوریتم و فلوچارت

الگوريتم ها

   برای حل مسائل مختلف توسط کامپيوتر بايد اين مسائل را به صورت مراحل عملياتی و تصميم گيری ساده ای که کامپيوتر قادر به اجرای آن باشد تبديل کرد. بدين ترتيب ليست مرتبی از مراحل عملياتی بدست می آيد که اجرای مرتب آنها منجر به حل مسئله توسط کامپيوتر می شود. اين ليست مرتب از مراحل عملياتی و تصميم گيری ، الگوريتم ناميده می شود.

   در حالت کلی الگوريتم ها بايد ويژگی های زير را داشته باشند: ...
ادامه نوشته

دستورات ورودی خروجی در ++c

دستورات ورودی و خروجی

واحد ورودی که ما در اينجا استفاده می کنيم صفحه کليد می باشد و واحد خروجی مورد استفاده نيز صفحه نمايش خواهد بود.



برای دريافت اطلاعات از صفحه کليد ، زبان ++C دستوری به نام cin را در اختيار ما قرار داده است، و برای ارسال اطلاعات به صفحه نمايش دستور cout موجود می باشد ...


ادامه نوشته

مثلث خیام پاسکال

مثلث خیام-پاسکال(نیوتن-پاسکال)

1

1 1

1 2 1

1 3 3 1

1 4 6 4 1

1 5 10 10 5 1

1 6 15 20 15 6 1

...

 

مثلث خیام-پاسکال مثلثی از اعداد است که هر عدد از جمع دو عدد بالای خودبدست می آید...
ادامه نوشته

برج هانوی

هانوی , معمایی است که از سه میله و N دیسک با اندازه های متفاوت . فرض شود که اگر دیسکی روی یک میله باشد , فقط دیسکی که قطر آن کوچکتر است می تواند بالای آن قرار گیرد مسئله چنین است که هر بار فقط یک دیسک انتقال یابد ...
ادامه نوشته

برنامه نویسی

مقدمه

شروع برنامه نویسی با الگوریتم آغاز می شود و پس از نوشتن الگوریتم و احیانا رسم فلوچارت، برنامه نویسی آغاز می شود. ماشین (کامپیوتر) از برنامه ایی که ما نوشتیم سر در نمی آورد وما هم از زبان ماشین سر در نمی آوریم! ما برنامه را به یک زبان برنامه نویسی سطح بالا (یعنی برنامه ایی که به سطح زبان انسان نزدیک است) نوشته و بعد آن را تبدیل به یک برنامه قابل اجرا بر روی کامپیوتر(زبان سطح پایین یا زبان ماشین) می نماییم.
انواع زبانهای برنامه نویسی...
ادامه نوشته

کارنو

ساده کردن مدارات


مدارهایی که به صورت معمولی طراحی می شوند بدون آنکه روی آنها عملیاتی برای ساده کردن انجام گیرد بسیار غیر اقتصادی هستند و بنابراین نامناسبند. برای طراحی مدارهای قابل قبول لازم است روشهایی برای ساده کردن آنها داشته باشیم به طوری که به مدارهای ساده تری برسیم تا تعداد گیت کمتری در ساخت مدار به کار رود و مدار ارزانتری بسازیم...
ادامه نوشته

مدار منطقی ترکیبی

مدارات منطقی ترکیبی ،مداراتی هستند که خروجی آنها در هر لحظه فقط به ورودی های همان لحظه بستگی دارد. به بیان دیگر یک مدار ترکیبی، مداری است بدون پسخورد و یا بدون عنصر حافظه ای برای ذخیره وضعیت قبلی مدار...
ادامه نوشته

علم طراحي سخت‌افزار با مدارات منطقی پايه‌ريزي مي‌شود كه كوچكترين جز در طراحي مي‌باشد. اصولاً علم مدار منطقي به لحاظ ساده‌كردن طراحي سخت‌افزارها شكل گرفته است و بوسيله آن مي‌توان پيچيده‌ترين مدارها را با ابزار و روشهايي كه در اختيار مي‌گذارد طراحي و سپس پياده‌سازي كرد. در مدارهاي منطقي براي سادگي طراحي، از گيت‌هايي پايه‌اي (مانند AND, OR, NAND, NOR,XNOR, XOR, ...) استفاده مي‌شود كه بوسيله اين گيتها يك مدار طراحي مي‌شود. در واقع آنچه كه امروزه در مدارات واقعي بصورت يكسري آی‌سی(مدارات مجتمع) ديده مي‌شود تشكيل شده از گيتهاي پايه‌اي كه در درون آي‌سي‌ها گنجانده شده است. بنابراين در واقعيت چيزي بصورت گيت پايه‌اي AND يا OR پيدا نخواهيد كرد، بلكه با آي‌سي‌هايي روبرو خواهيد بود كه اين گيتها بصورت مجتمع درون آن گنجانده شده است.

تمرین درس c

۱- برنامه ای بنویسید که تعدادی عدد را از ورودی گرفته و تعداد اعدادی را که بر ۹ بخشپذیرند را مشخص کند؟

  ۲- برنامه ای بنویسید که مجموع N  جمله اول از سری فیبوناچی را حساب کند واگر آن عدد اول بود با ذکر پیغام مناسب در خروجی مشخص می کند؟                                                                           

وقتي يك مشكل بزرگ داري به خدات نگو من يه مشكل بزرگ دارم بلكه به مشكلت بگو من يه خداي بزرگ دارم

لینک به سایت دایتل

سایت دایتل

تمرینهای مدار منطقی "سری اول" تاریخ تحویل : شنبه  12/5/87

۱- با روش جدول کارنو عبارات زیر را ساده کنید؟

۱-        مینترم : ۱-۲-۸-۹-۱۱-۱۲                              حالات بی اهمیت : ۵ -۱۴

۲-        مینترم : ۴-۵-۶-۸-۱۵-۲۹-۳۰-۳۱                    حالات بی اهمیت :۱۱-۱۲-۲۴-۲۵

۳-        مینترم :۰-۱-۹-۱۰-۱۴-۲۷-۲۹-۳۰                   حالات بی اهمیت :۵-۸-۱۷

۴-        مینترم : ۰-۵-۱۰-۱۱-۱۲-۱۳-۲۸-۳۰                حالات بی اهمیت :۱۷-۱۸-۱۹

۵-        مینترم : ۴-۵-۱۳-۱۹-۲۰-۲۴-۲۸-۳۰-۳۱            حالات بی اهمیت :۲۵ -۲۶ -۲۹

۶-        مینترم : ۰-۳-۶-۷                                        حالات بی اهمیت :۱- ۴     

۷-        مینترم : ۲-۳-۸-۱۷-۲۶-۲۷-۳۰                        حالات بی اهمیت :۰- ۱-۹- ۱۶- ۲۴

۸-        ماکسترم : ۰-۱-۴-۵                                     حالات بی اهمیت :ندارد.

۹-        ماکسترم : ۲-۵-۷-۹-۱۵-۱۶-۱۷-۲۵-۲۹-۳۱         حالات بی اهمیت :ندارد.

۱۰-      ماکسترم :۲-۵-۷-۹-۱۵-۱۶-۱۷-۲۵-۲۹-۳۱           حالات بی اهمیت :۱-۴-۱۰

معرفی سایت رسمی دایتل و دایتل نویسندگان کتاب های آموزشی برنامه نویسی

دانشجویانی که اهمیت بیشتری به برنامه نویسی می دهند می توانند از سایت رسمی دایتل استفاده کنند.
www.deitel.com

در این سایت شما می توانید با کتاب های مختلف نوشته شده توسط دایتل و دایتل آشنا شوید و همچنین در صورت عضویت در خبرنامه سایت اطلاعات مفیدی را دریافت کنید.

همچنین می توانید اشکالات برنامه نویسی خود را با گروه دایتل درمیان بگذارید.

بعضی از کتاب های معروف دایتل و دایتل که در اکثر دانشگاه های دنیا به عنوان مرجع اصلی تدریس می شوند عبارتند از :
How to program C , How to program C++ , How to program C# , How to program Java
How to program Internet & World Wide Web , How to program Visual Basic 2005

شما می توانید با مراجعه به وبلاگ eketab.persianblog.ir تعدادی از این کتاب ها را دانلود کنید.