ELECTRICAL AND ELECTRONICS ENGINEERING | |||||
Bachelor | TR-NQF-HE: Level 6 | QF-EHEA: First Cycle | EQF-LLL: Level 6 |
Course Code | Course Name | Semester | Theoretical | Practical | Credit | ECTS |
CMP1401 | Introduction to Programming (C) | Fall | 2 | 2 | 3 | 6 |
Language of instruction: | English |
Type of course: | Must Course |
Course Level: | Bachelor’s Degree (First Cycle) |
Mode of Delivery: | Face to face |
Course Coordinator : | Dr. Öğr. Üyesi GÖRKEM KAR |
Course Lecturer(s): |
RA ÇİĞDEM ERİŞ Dr. Öğr. Üyesi TARKAN AYDIN Dr. Öğr. Üyesi ERKUT ARICAN Dr. Öğr. Üyesi CEMAL OKAN ŞAKAR Dr. UTKU GÜLEN Dr. Öğr. Üyesi ÖVGÜ ÖZTÜRK ERGÜN Prof. Dr. NAFİZ ARICA |
Recommended Optional Program Components: | None |
Course Objectives: | The course aims to teach the syntax and use of major constructs of the C language. Fundamental programming concepts will be discussed and students will gain hands-on experience to develop their programming and algorithmic thinking skills. |
The students who have succeeded in this course; I. An ability to design elementary computer algorithms. II. An ability to develop code following the principles of C programming language. III. An ability to use various types of selection contructs in a C program IV. An ability to use repetition constructs in a C program. V. An ability to use simple data structures like arrays in a C program. VI. An ability to define and correctly call functions in a C program |
Introduction, printf, scanf, variables, operators, constants, data types, assignment, type conversions, type casting, post/pre-increment/decrement, if, nested if, logical operators, switch, while, for, do-while loops, nested loops, break, continue, functions, scope, macro-substitution, pointers, variable parameters, arrays, passing arrays to functions, sorting and binary search, File I/O, strings, multi-dimensional arrays, structures. |
Week | Subject | Related Preparation |
1) | Introduction, printf, scanf, variables, operators, constants | |
2) | Data types, assignment, type conversions, type casting, post/pre-increment/decrement | |
3) | If, nested if, logical operators, switch | |
4) | While, for, do-while loops | |
5) | Nested loops, break, continue | |
6) | Functions, scope, macro-substitution | |
7) | Pointers, variable parameters | |
8) | Arrays, passing arrays to functions | |
9) | Sorting and binary search | |
10) | File I/O | |
11) | Strings | |
12) | Multi-dimensional arrays | |
13) | Structures | |
14) | Review | |
15) | Final | |
16) | Final |
Course Notes / Textbooks: | C How to Program, 6/E, Paul Deitel Harvey M. Deitel, Prentice Hall, 2009 |
References: | The C Programming Language, Brian W. Kernighan, Dennis M. Ritchie, Prentice Hall |
Semester Requirements | Number of Activities | Level of Contribution |
Laboratory | 12 | % 25 |
Midterms | 1 | % 35 |
Final | 1 | % 40 |
Total | % 100 | |
PERCENTAGE OF SEMESTER WORK | % 60 | |
PERCENTAGE OF FINAL WORK | % 40 | |
Total | % 100 |
Activities | Number of Activities | Workload |
Course Hours | 14 | 28 |
Laboratory | 14 | 28 |
Study Hours Out of Class | 15 | 79 |
Midterms | 1 | 2 |
Final | 1 | 2 |
Total Workload | 139 |
No Effect | 1 Lowest | 2 Low | 3 Average | 4 High | 5 Highest |
Program Outcomes | Level of Contribution | |
1) | Adequate knowledge in mathematics, science and electric-electronic engineering subjects; ability to use theoretical and applied information in these areas to model and solve engineering problems. | 4 |
2) | Ability to identify, formulate, and solve complex engineering problems; ability to select and apply proper analysis and modeling methods for this purpose. | 4 |
3) | Ability to design a complex system, process, device or product under realistic constraints and conditions, in such a way as to meet the desired result; ability to apply modern design methods for this purpose. (Realistic constraints and conditions may include factors such as economic and environmental issues, sustainability, manufacturability, ethics, health, safety issues, and social and political issues, according to the nature of the design.) | 4 |
4) | Ability to devise, select, and use modern techniques and tools needed for electrical-electronic engineering practice; ability to employ information technologies effectively. | 4 |
5) | Ability to design and conduct experiments, gather data, analyze and interpret results for investigating engineering problems. | 3 |
6) | Ability to work efficiently in intra-disciplinary and multi-disciplinary teams; ability to work individually. | 4 |
7) | Ability to communicate effectively in English and Turkish (if he/she is a Turkish citizen), both orally and in writing. | 2 |
8) | Recognition of the need for lifelong learning; ability to access information, to follow developments in science and technology, and to continue to educate him/herself. | 2 |
9) | Awareness of professional and ethical responsibility. | 2 |
10) | Information about business life practices such as project management, risk management, and change management; awareness of entrepreneurship, innovation, and sustainable development. | 2 |
11) | Knowledge about contemporary issues and the global and societal effects of engineering practices on health, environment, and safety; awareness of the legal consequences of engineering solutions. | 2 |