合肥生活安徽新聞合肥交通合肥房產(chǎn)生活服務(wù)合肥教育合肥招聘合肥旅游文化藝術(shù)合肥美食合肥地圖合肥社保合肥醫(yī)院企業(yè)服務(wù)合肥法律

        EP3BB3編程代寫、C++程序設(shè)計(jì)代做
        EP3BB3編程代寫、C++程序設(shè)計(jì)代做

        時(shí)間:2025-01-15  來源:合肥網(wǎng)hfw.cc  作者:hfw.cc 我要糾錯(cuò)



        EP3BB3 Lab #1-2024/25-V1.3 

        Lab 1: Introduction to C Programming 
        1 Introduction 
        This lab serves as an introduction to C programming language for those who may be new to it, and a 
        refresher for those familiar with it. The aim is not an in-depth exploration of C but a review of the basics 
        through exercises to ensure your readiness for its applications in the upcoming labs. 
        1.1 Software Installation 
        In case you haven’t done so already, install Visual Studio Code and C using the instructions provided on 
        Avenue to Learn. Please note that this step is time consuming and therefore, you should do this ahead 
        of your lab. 
        1.2 Hello World! 
        To ensure that you have set up Visual Studio Code correctly, open Visual Studio Code and create a New 
        File. Name it as you want as file_name.c. Copy the following code: 
        #include <stdio.h> 
         
        int main(void){ 
         printf("Hello World!"); 
         return 0; 

         
        Then use the icon “Debug C/C++ File” from the top right corner of the page (see the image below). You 
        should see the phrase “Hello World” in the terminal window. Now that we confirmed everything works, 
        let’s get to the lab! 
         
         
          EP3BB3 Lab #1-2024/25-V1.3 
         
         

         
        2 Lab 1 – The Real Thing 
        In this lab, we will have different exercises with a strong focus and emphasis on binary and bitwise 
        operations as these will be an essential concept throughout this semester. 
        2.1 Sample Program 
        Recommended duration for task completion: 10 minutes 
        Recall this program from your lecture notes which reads three integer values from the user and prints the 
        average. Let’s quickly review this program: 
        #include <stdio.h> 
         
        int main(void) 

         int value1, value2, value3; 
         float sum, average; 
         
         printf("What is the first value? "); 
         scanf("%d", &value1); 
         
         printf("What is the second value? "); 
         scanf("%d", &value2); 
         
         printf("What is the third value? "); 
         scanf("%d", &value3); 
         
         sum = value1 + value2 + value3; 
         average = sum / 3; 
         
         printf("The average of %d, %d, and %d is %f\n", value1, value2, value3, 
        average); 
         
         return 0; 

         
        We will be using this example to introduce debuggers! Debuggers help you inspect different portions of 
        the code and understand how different variables change as the program runs. You can add “Breakpoints” 
        to force your code to pause when it reaches certain points. To enable breakpoints for different lines, you 
        can simply click in the area next to the line number (see below).  EP3BB3 Lab #1-2024/25-V1.3 
         
         

         
         
         
        In the example above, we have added two breakpoints in lines 17 and 18. When you run the code by 
        pressing Debug C/C++ File, an icon bar appears on the top of screen and when it reaches the breakpoint, 
        it will look similar to the image below. Visit this page and review the “Debug actions” table to learn more 
        about these icons. 
         
         
         
        Now, the values for different variables before calculations of lines 17 and 18 are listed on the left side of 
        your screen (see below, picture “a”). When you press “Step Over” from the icon bar above, the values will 
        be updated (see below, picture “b”). 
         
         
        In addition, after running the debugger, you can right click on any variable in your code and select “Add 
        to Watch” to inspect that variable. 
         
        Task #2.1: Use the debugger yourself and explain the program above to your TA line by line. 
        (a) (b)  EP3BB3 Lab #1-2024/25-V1.3 
         
         

         
        2.2 if-else Conditional Statements 
        Recommended duration for task completion: 20 minutes 
        Task #2.2: Write a program that reads a non-zero number from the user and determines if it is even or 
        odd. Explain the program to your TA line by line. 
        #include <stdio.h> 
         
        int main(void) 

         // Declare an integer. 
         
         printf("Please enter a non-zero number: "); 
         
         // read the number from the user using scanf. 
         
         // In the following if statement, determine if the number is divisible by 2 
        using the modulo operator. 
         
         /* 
         if (CONDITION) { 
         // Print the entered number is even/odd. You must show the number entered 
        by the user. 
         } 
         
         else { 
         // Print the entered number is odd/even. You must show the number entered 
        by the user. 
         } 
         */ 
         
         return 0; 

          EP3BB3 Lab #1-2024/25-V1.3 
         
         

         
        2.3 While Loops 
        Recommended duration for task completion: 20 minutes 
        Task #2.3: Write a program, using while loops, that writes numbers from 1 to 10. Explain the program to 
        your TA line by line. 
        #include <stdio.h> 
         
        int main(void){ 
         
         // Declare an integer here and initialize it with a reasonable value. 
         
         
         // The while loop (below) prints the integer and then increments it, as long 
        as it satisfies the CONDITION. 
         
         // while (CONDITION) { 
         
         // Print the integer. 
         
         // Increment the integer. 
         
         } 
         return 0; 
        }  EP3BB3 Lab #1-2024/25-V1.3 
         
         

         
        2.4 For Loops 
        Recommended duration for task completion: 20 minutes 
        Task #2.4: Write a program, using for loops, that prints all the even numbers between 1 to 10. Explain the 
        program to your TA line by line. 
        #include <stdio.h> 
         
        int main(void){ 
         
         // Declare an integer. 
         
         //The for loop (below) should go through the numbers from 0 to 10 and check 
        if the number is divisible by 2. 
         
         //for (start from 0 and increment until 10){ 
         
         /*if (divisible by 2, for example using the modulo operator){ 
         // Print the value. 
         } 
         else 
         { 
         // Don't do anything. 
         }*/ 
         
         
         } 
         return 0; 

          EP3BB3 Lab #1-2024/25-V1.3 
         
         

         
        2.5 User-Defined Functions 
        Recommended duration for task completion: 20 minutes 
        Task #2.5: Rewrite the sample program of task 2.1. Once the user inputs three integers, pass them to 
        another function called averageCalculator, which calculates the average and returns the value to the main 
        function. The main function, then, prints the calculated average value. Explain the program to your TA line 
        by line. 
        #include <stdio.h> 
         
        float averageCalculator (int a, int b, int c); 
         
        float average; 
         
        int main(void) 

         int value1, value2, value3; 
         
         printf("What is the first value? "); 
         scanf("%d", &value1); 
         
         printf("What is the second value? "); 
         scanf("%d", &value2); 
         
         printf("What is the third value? "); 
         scanf("%d", &value3); 
         
         // Call the averageCalculator function and pass the values. 
         
         printf("The average of %d, %d, and %d is %f\n", value1, value2, value3, 
        average); 
         
         return 0; 

         
        // Define a function name averageCalculator which reads three integers (as 
        arguments) and returns the parameter average as a float. 
        /* 
        return_type averageCalculator(arguments) 

         Do the calculations here and return the average! 

        */ 
          EP3BB3 Lab #1-2024/25-V1.3 
         
         

         
        3 Bitwise operations 
        Due to the importance of bitwise operations in the future labs, we will now work on some exercises 
        related to this topic. 
        3.1 Exercise 3.1 
        Recommended duration for task completion: 30 minutes 
        Task #3.1: Study and complete the following code. In this code, the user enters two decimal numbers. The 
        code will calculate different bitwise operations and prints the results represented in decimal. For example, 
        take a value of 7 for a (0000 0111 in binary) and a value of 12 for b (0000 1100 in binary). A bitwise AND 
        of these values is 4 represented in decimal which is 0000 0100 in binary. Complete the code, use a 
        different set of input number, and show that your results from your on-paper calculations and those 
        derived from your code match. 
         
        #include <stdio.h> 
         
        int main(void) 

         int a, b; 
         
         printf("What is the first value (in decimal)? "); 
         scanf("%d", &a); 
         
         printf("What is the second value (in decimal)? "); 
         scanf("%d", &b); 
         
         printf("The bitwise AND of %d, and %d, REPRESENTED IN DECIMAL, is %d\n", a, 
        b, a & b); 
         
         // Print the bitwise OR of the two numbers. 
         
         // Print the bitwise XOR of the two numbers. 
         
         // Print the bitwise NOT of one of the numbers. 
         
         // Print the bitwise left shift (shifted by one bit) of one of the numbers. 
         
         // Print the bitwise right shift (shifted by one bit) of one of the numbers. 
         
         return 0; 

          EP3BB3 Lab #1-2024/25-V1.3 
         
         

         
        3.2 Exercise 3.2 
        Recommended duration for task completion: 30 minutes 
        Imagine you are in a room which has 8 LED light switches controlling 8 different LED lights. Of course, at 
        any given time, each light can be either on or off. The goal is to independently control these LEDs without 
        unintentionally affecting the others. Maybe you want to turn on (or SET) specific LEDs. Maybe you want 
        to turn off (or CLEAR) some or all of them. Maybe, and maybe, you want to flip (or TOGGLE) specific ones. 
        Or perhaps, you want to play a prank on your roommate by flipping all the switches, turning on what’s off 
        and turning off what’s on (INVERT). 
        LED 7 LED 6 LED 5 LED 4 LED 3 LED 2 LED 1 LED 0 
        OFF OFF ON OFF ON OFF ON ON 
         
        Well, as it turns out, this is what your microcontroller looks like. For instance, PORT1 of your 
        microcontroller has 8 pins (labeled from 0 to 7). Let’s do ourselves a favor and consider them a binary 
        sequence. Each pin can have a value of 0 or 1 (i.e., binary). In these cases, it is important to know the 
        current state of the system as well as the change you want to impose on the system. You can then 
        calculate the final state of the system using the bitwise assignment operators. These are basically the 
        same bitwise operators from Exercise 3.1, however they are now followed by the assignment “=” sign. So, 
        what’s the difference? 
        The bitwise AND assignment (&=) first calculates the bitwise AND operation between operands and then 
        assigns the value to the left operand. It can be used to clear bits. 
        The bitwise OR assignment (|=) first calculates the bitwise OR operation between operands and then 
        assigns the value to the left operand. It can be used to set bits. 
        The bitwise XOR assignment (^=) first calculates the bitwise XOR operation between operands and then 
        assigns the value to the left operand. It can be used to toggle bits. 
        Lastly, the operation ~ can be used to invert bits: turning all ones to zeros and vice versa. 
        Let’s work through an example. Imagine the initial state of the system of LEDs in the table above is 0010 
        1011 (equivalent to 43 in decimal), where each bit represents the state of a specific pin, with 0 and 1 
        indicating states such as ON/OFF. Now, let’s say you want to turn off all LEDs except the 6th bit (or LED #5) 
        i.e., 0010 0000 (or 32 in decimal). You can CLEAR using the bitwise AND assignment operation (&=). Use 
        the following code for a practical demonstration. 
        Task #3.2: After making this observation, complete the code below to calculate the bitwise OR assignment 
        and the bitwise XOR assignments for a different set of input states (initial state and change). Show that 
        your results from your on-paper calculations and those derived from your code match. More importantly, 
        explain how these different operations can be used to set/clear/toggle/invert bits. 
          EP3BB3 Lab #1-2024/25-V1.3 
         
         
        10 
         
        #include <stdio.h> 
         
        int main(void) 

         
         int initialstate, change, tempstate; 
         
         printf("What is the initial state (in decimal)? "); 
         scanf("%d", &initialstate); 
         tempstate = initialstate; 
         
         printf("What is the change (in decimal)? "); 
         scanf("%d", &change); 
         
         initialstate &= change; 
         printf("The &= of %d, and %d is %d\n", tempstate, change, initialstate); 
         
         return 0; 

         
          EP3BB3 Lab #1-2024/25-V1.3 
         
        4 Code Submission 
        Codes for all tasks must be submitted before the deadline (Jan 12th, 2025 by 7:30 PM EST) on Avenue to 
        Learn. 
          EP3BB3 Lab #1-2024/25-V1.3 
         
        5 What’s Next? 
        5.1 Assessment and Reflection on the Lab 
        Spend a few minutes and reflect on what you learned today. Your TAs will assess your lab based on your 
        understanding and explanation of what you have done, observed, and learned during this lab (and the 
        pre-lab when applicable). Explain the technical details to your TAs and share your takeaways of the lab. 
        Half of your mark for the lab is dedicated to your code and its functionality and the other half to your 
        understanding and explanations. 
        Even though you are working in groups of 2, you are expected to write your own codes and do each tasks 
        individually. However, you are encouraged to discuss your approach with your lab partner. 
         
        5.2 Tidying Up 
        Firstly, great work finishing your lab! You can leave the lab after cleaning your workstation: 
        • Remove the jumper wires from your breadboard and dump them in the wire containers on your 
        workstation. 
        • Remove the components from your breadboard and place them in the component containers at 
        your workstation. Make sure to put the components back in the right drawers. 
        • Disconnect the probes from your power supply, function generator, multimeter, and oscilloscope, 
        and hang them from the wire rack on the wall. 
        • Remove any pieces of paper, garbage, etc., from and clean your workstation before leaving the 
        lab. 
        Note: You are always expected to clean your workstation before leaving the lab. 
         
        5.3 Next Lab’s Preparation 
        The lab manual for the next lab on “Introduction to Microcontrollers” is available on Avenue to Learn. 
        Please review the lab manual before attending the lab. In particular: 
        • Follow the instructions published on Avenue to Learn to purchase the microcontroller and bring 
        your microcontroller to the lab. 
        • Before coming to the lab, you must review the prelab and follow the instructions to install 
        CCSTUDIO — Code Composer Studio™ integrated development environment (IDE). This should be 
        done before coming to the lab. 
        • After installing the IDE, follow the prelab’s blink test to make sure everything is set properly. 

        請(qǐng)加QQ:99515681  郵箱:99515681@qq.com   WX:codinghelp





         

        掃一掃在手機(jī)打開當(dāng)前頁
      1. 上一篇:優(yōu)易花唄客服電話在線解決客戶強(qiáng)制下款問題!
      2. 下一篇:防靜電門禁系統(tǒng)-ESD防靜電門禁工程方案-蘇州訊諾
      3. 無相關(guān)信息
        合肥生活資訊

        合肥圖文信息
        出評(píng) 開團(tuán)工具
        出評(píng) 開團(tuán)工具
        挖掘機(jī)濾芯提升發(fā)動(dòng)機(jī)性能
        挖掘機(jī)濾芯提升發(fā)動(dòng)機(jī)性能
        戴納斯帝壁掛爐全國售后服務(wù)電話24小時(shí)官網(wǎng)400(全國服務(wù)熱線)
        戴納斯帝壁掛爐全國售后服務(wù)電話24小時(shí)官網(wǎng)
        菲斯曼壁掛爐全國統(tǒng)一400售后維修服務(wù)電話24小時(shí)服務(wù)熱線
        菲斯曼壁掛爐全國統(tǒng)一400售后維修服務(wù)電話2
        美的熱水器售后服務(wù)技術(shù)咨詢電話全國24小時(shí)客服熱線
        美的熱水器售后服務(wù)技術(shù)咨詢電話全國24小時(shí)
        海信羅馬假日洗衣機(jī)亮相AWE  復(fù)古美學(xué)與現(xiàn)代科技完美結(jié)合
        海信羅馬假日洗衣機(jī)亮相AWE 復(fù)古美學(xué)與現(xiàn)代
        合肥機(jī)場(chǎng)巴士4號(hào)線
        合肥機(jī)場(chǎng)巴士4號(hào)線
        合肥機(jī)場(chǎng)巴士3號(hào)線
        合肥機(jī)場(chǎng)巴士3號(hào)線
      4. 上海廠房出租 短信驗(yàn)證碼 酒店vi設(shè)計(jì)

        主站蜘蛛池模板: 亚洲高清美女一区二区三区 | 2021国产精品视频一区| 亚洲综合av一区二区三区| 国内精品无码一区二区三区| 日韩精品一区二区午夜成人版| 亚洲一区二区三区高清不卡| 国产一区二区三区在线观看精品| 国产伦精品一区二区三区四区 | 国产91精品一区二区麻豆亚洲 | 一区视频免费观看| 一区二区三区在线观看| 2022年亚洲午夜一区二区福利| 中文字幕在线无码一区| 精品一区二区三区高清免费观看 | 亚洲高清日韩精品第一区| 国产精品视频一区二区三区无码| 亚洲美女高清一区二区三区| 痴汉中文字幕视频一区| 亚洲国模精品一区| 亚洲一区二区三区在线播放| 无码人妻精品一区二| 亚洲人AV永久一区二区三区久久| 波多野结衣在线观看一区二区三区| 大帝AV在线一区二区三区| 日韩一区在线视频| 日本精品一区二区三区四区| 狠狠做深爱婷婷综合一区 | 久久国产高清一区二区三区| 国产激情精品一区二区三区| 国产精久久一区二区三区| 亚洲人AV永久一区二区三区久久| 成人区人妻精品一区二区不卡视频 | 正在播放国产一区| 视频一区二区精品的福利| 一本色道久久综合一区| 国产一区二区电影| av无码免费一区二区三区| 国语对白一区二区三区| 一区二区在线视频观看| 国产乱码精品一区二区三区中文 | 精品国产一区二区三区AV性色 |