91精品国产91久久久久久_国产精品二区一区二区aⅴ污介绍_一本久久a久久精品vr综合_亚洲视频一区二区三区

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

CSE 3430代寫(xiě)、c/c++語(yǔ)言編程代做

時(shí)間:2023-11-03  來(lái)源:合肥網(wǎng)hfw.cc  作者:hfw.cc 我要糾錯(cuò)


CSE 3430代寫(xiě)、c/c++語(yǔ)言編程代做
CSE 3430 AU 23 LAB 1
Due: Friday, October 27, 2023 by 11:30 p.m. on Carmen
(If submitted before midnight, the lab will be counted as on time, but submissions
midnight or later will be counted as one day late. No one should wait until close to 11:30
pm to submit, or you risk submitting late. Plan to finish so that you can submit NO
LATER THAN 6:00 or 7:00 pm on October 27!)
Objectives:
· Pointers
· Statically allocated arrays (Part 1)
· Dynamic memory allocation (Dynamically allocated arrays) (Part 2)
· Deallocation of dynamically allocated memory (Part 2)
· Switch-case statements
· Functions: pass-by-reference, pass-by-value, parameters, return values and
reusability

REMINDERS and GRADING CRITERIA:
 This is an individual lab. You should make a lab1 folder/directory in your cse3430
folder/directory on stdlinux (assuming you followed the instructions for the earlier
homework assignment); if you did not make a cse3430 directory before, you should do that
now). After logging in to stdlinux using FastX v3, from your home directory, run these
commands (assuming you created a cse3430 directory earlier; otherwise, run the first
command below also):
$ mkdir cse3430
[The command above is only necessary if you did not make this directory before]
$ cd cse3430
$ mkdir lab1
$ cd lab1
 This lab has two parts, which need to be submitted separately. Please see the description
below.
 VERY IMPORTANT: I understand that the lab description seems long, but it is meant to
be very clear. Please read and follow the instructions carefully. When software is written in
the outside world, written specifications are always used, so getting used to following written
specifications is a very useful (and marketable!) skill! By doing this lab, you will acquire
some useful knowledge, and a number of skills which are both useful and marketable.
 Grading:
Comments and code formatting: 10%
Part 1 output: 70%
Part 2 output: 20%

 Note that the lab is due at 11:30 pm. You should aim to always hand an assignment in on
time or much better, early. If you are late (submitting at midnight or after), you will receive
75% of your earned points for the designated grade, as long as the assignment is submitted
by 11:30 pm the following day, based on the due date given above. If you are more than 24
hours late, you will receive a zero for the assignment and your assignment will not be graded
at all.
 You have 11 days to do the lab, which is plenty of time if you start early and ask questions
early if you need help. Do not wait more than one or two days to start the lab! Part 1 involves
more code, but the code is easier to write. You should be finished with Part 1 in 2 to 3 days
after starting, at most. That leaves 5 to 6 days to do Part 2, which involves less code, but the
code is more challenging to write. Asking questions about Part 1 of the lab 4 or 5 days before
the lab is due means you are behind, and it may be difficult to finish on time!

 Any lab submitted that does not compile – without errors - and run without crashing (meaning
no segmentation faults or other run time errors, such as infinite loops) WILL RECEIVE
AN AUTOMATIC GRADE OF ZERO. If your code generates warnings, you will lose
credit for each warning generated, depending on the warning (1 point per warning usually).
No exceptions are made for this rule - to achieve even a single point on a lab, your code must
minimally build (compile to an executable without errors) on stdlinux and execute on
stdlinux without crashing (that also means no segmentation faults, which is an example of
“crashing”), using the following compilation commands for each part:

For Part 1: $ gcc -std=c18 -pedantic lab1p1.c -o lab1p1
For Part 2: $ gcc -std=c18 -pedantic lab1p2.c -o lab1p2
To run Part 1 with redirection: $ lab1p1 < lab1p1in
To run Part 2 with redirection: $ lab1p2 < lab1p2in
 NOTE VERY CAREFULLY: It is YOUR RESPONSIBILITY to make sure that your
code compiles (using the compilation command shown above) before submitting it. If you modify
your code in any way after it compiles successfully, you must compile AGAIN after making any
changes to make sure there are no errors. We have had students in the past who added comments
or made what they thought was a “minor” change, but did not recompile and retest before
submitting. This can result in disaster, and must not be done! This is often the result of waiting
too late to start and/or not working steadily enough on the lab assignment. Be sure you do not do
things this way; do yourself a favor and be careful and be thorough! Although the requirements
may seem harsh to some students, your manager in a work environment will have requirements at
least this strict; if they do not, the business loses customers and/or loses money or closes, and not
only does your manager lose their job, everyone else may as well.

 You should not add features to your program that are not required; this makes it more difficult
for the grader to test whether the program meets the requirements, and that is what your score
depends on.
 To create a C source code file, you can use any of the text editors available on stdlinux. I
recommend you use either emacs or gedit. Here is how to create a source file for Part 1 with
gedit:
$ gedit lab1p1.c
Or if you want to use emacs:
$ emacs lab1p1.c
There are other text editors also available on stdlinux (the two above are quite adequate for
the code we write for this course), but if you decide to explore them, you will need to figure
out how they work.
[We will tell you below how you can copy the source file for Part 1 to a new source file for
Part 2 BUT ONLY AFTER YOU HAVE FINISHED ALL THE WORK FOR Part 1,
including TESTING, DEBUGGING, AND COMMENTS.]
The first time you use one of the above commands to start a text editor, the file will be created
by the operating system, and the file will be empty. You can type your source code into the
file and save it. After the first time you run the command, save the file, and close it, every
time you run the command after that will just reopen the file that was already created (make
sure you run the command from the directory/folder where the file is saved), and you will be
able to edit it and resave it.
Emacs has some nice features which many students like. PLEASE NOTE: When you save
files created with gedit, you will get an error related to saving metadata for the file from
stdlinux, but you can ignore it. This will not normally cause any problems.


LAB DESCRIPTION
This lab has two parts, Part 1 and Part 2. For Part 1, we will write code to do calculations on
data in a single statically allocated array (as described in slide set B-5), and we will read input
for the program from a file using redirection of the input as described in class slide set B-3 on
Input and Output in C. In Part 2, the data will consist of a data set of an unknown size, so we
will need to use dynamic allocation of memory for the array (as described in slide set B-6).
For Part 2, again, we will read input for the program from a file using redirection of the input as
described in slide set B-3. A great deal of the code (almost all of the code) that you write for Part
1, you will be able to reuse for Part 2, but you will also need to write some new code for Part 2
(see the description below). See the instructions below on how to make a copy of your source
code file for Part 1 to a source code for Part 2 (BUT DO NOT DO THIS UNTIL YOU HAVE
THOROUGHLY TESTED AND DEBUGGED THE CODE FOR Part 1, and WRITTEN
COMMENTS for Part 1), so that you can then modify the code for Part 2.
Part 1.
DATA SET CALCULATOR Mandatory filename: lab1p1.c
PROBLEM:
The user of your program will use it to do some elementary calculations for a single
floating point data set of size 6; the user will enter the data for the data set as input to the
program (we will read it from a file using redirection of input; see below). Since the
number of data sets is known (one) and the size of the data set is also known (8), you can
use a static array to store the values. As we have seen in lecture, a static array in C to
handle this problem can be declared as follows:
float dataSet[6];
int dataSetSize = 6;
You should declare this array and the dataSetSize variable in main, as shown above. When
you call any function in the program that will need to access the array or that will call another
function which needs to access the array, YOU WILL HAVE TO PASS BOTH dataSet (which
is the address of the first element; we will learn later that this is a pointer to the element) and
dataSetSize to the function as parameters.

 In writing your code, you should remember the principle of reusability. In general, each
of your functions should do a single thing. If there are several tasks that are clearly steps in
doing a single thing, they can be put into the same function, as long as we would ALWAYS
want to do all of them when we do any of them, but if you have any doubt, separate the tasks
into different functions. By writing code in this way, functions are more reusable, and this is a
very important property. See the class slide set B-7 C Software Design Principles.
 Related to reusability is the principle that IN main, ONLY VARIABLE
DECLARATIONS AND CALLS TO OTHER FUNCTIONS SHOULD APPEAR. THE
main FUNCTION IN YOUR PROGRAM SHOULD HAVE NO CODE OTHER THAN
THIS.
 You should first call a function to print a single prompt to the user to enter the data for the
data set (DO NOT PRINT THE PROMPT IN MAIN). Your program needs to read the user
input and store the float values in the data set in the array that you declared in main, as
shown above. The user will enter each of the 6 floating point values on separate lines (but
remember that scanf will skip white space characters (such as new lines) when you call it to
read numeric values such as floats). If you do not completely understand this description
jump to the bottom of this file and check out the example data for Part 1. You will be given a
file on Carmen called lab1p1in to test and debug your program code, so after writing and
compiling your code as shown above, you should run it as follows using redirection:
$ lab1p1 < lab1p1in
 After reading the values in the data set into the array, you should call another function
which should repeatedly do the following (put this in a loop inside a function):

Prompt the user to choose one of the following options for a calculation to perform on the
data set (ask the user to enter one of the six numbers, followed by enter):

Enter a number to choose one of the following options:
1) Find the minimum value.
2) Find the maximum value.
3) Calculate the sum of all the values.
4) Calculate the average of all the values.
5) Print the values in the data set.
6) Exit the program.
Your code should print a blank line both before, and at the end of the menu (to separate it from
the preceding and following output). You can put code to print this menu of choices in the same
function with a function that has a switch-case statement, and also put a call to scanf before the
switch-case to get the user’s choice of option. After the user selects one of the six options, your
program should use a switch-case statement to call a function to perform the necessary calculation,
or terminate the program. The calculation function which is called should not also be used to
print the result; the result should be printed out by a call to printf which is not in the calculation
function (but you can call printf to print the result of the calculation inside the code for
operation 5, since the purpose of this function is to print the values in the data set); for the first
four calculations, though, there should be a call to printf to print the result after returning from the
call to the calculation function in the switch-case code (that is, call printf in the code for the case
that calls the calculation function). The program should output the result with an appropriate
message which specifies the calculation which was performed, for example:

The maximum value is: 569.45
NOTE that there will be a deduction for unlabeled output! The results for options 1, 2, 3,
and 4 should be printed out as floating point values with 2 digits of precision, preceded and
followed by a blank line to separate the output from preceding and following output, and
the result for option 5 should be to output a label, such as Data set: on one line, followed
by the values in the data set in the order in which they were input, each on a separate line
starting on the line after the label, with 2 digits of precision for each value. Also print a
blank line after all of the values, to separate the output for this operation from any
following output.

➢ After your program outputs the result of the operation, it should prompt the user again
to select an option for a calculation (by returning back to the top of the loop in which
the switch-case statement is contained), until the user selects option 6 to exit the program.
Therefore, the function with the switch-case statement which gets the user’s choice of
calculation should put the switch-case statement inside a loop, which will terminate when
the user chooses option 6. Also, when the user chooses option 6 to exit, the function should
return to main (but no return statement should be used in the function; use a variable for the
condition in the while loop which can be set to a value which will terminate the loop when
option 6 is entered by the user), and main should then return 0, and the program will
terminate.

CONSTRAINTS (IMPORTANT):
· Program structure (typical for C programs) should be:
-Any necessary #include directives for library header files (stdio.h and stdlib.h)
-Declarations of all functions in the program (except main) (ALL FUNCTIONS OTHER
THAN main SHOULD BE DECLARED, BUT NOT DEFINED, BEFORE main is defined).
-Definition of main
-Definitions of all other functions (the order does not matter)
·Requirements for main:
-main should only do the following:
-Declare variables that are needed by other functions in the program. You will need
the following variables in main for the code for Part 1:
float dataSet[6];
int dataSetSize = 6;
-Call other necessary functions
-NOTE: Reading of input, getting user choice of calculation to perform, and
calculations should NOT be done in main (THERE WILL BE A DEDUCTION
IF THE CODE IS WRITTEN TO DO THESE THINGS IN main); all of these
should be done in functions separate from main.
· You can use a statically declared array for Part 1 (this means the memory for the array is
allocated by the compiler), as explained above, because the size of the array is known when the
code is written.
· Remember that C programs should exhibit the Unix/Linux feature of reusability of
functions; each function should do only one well-defined thing (or perhaps two things
that are so closely related that they would ALWAYS be done together).
· Use a separate function to do each type of calculation (some of these functions might call other
ones; for example, the code for average option might call the function for sum option).
· Use a function to get the input from the user about the float values in the data set.
· Also use a separate function to get the user's choice of the calculation to perform. Use a different
function for each of the 5 calculation options, other than option 6, which will just terminate the
loop, and return to main.
· Be sure to document with a brief comment what each function does. Documentation is a
necessary part of software for organizations. You should put a brief comment before each
function definition explaining what the function does (not how it does it), and a brief
comment for each block of code documenting what the code in the block does (not how it
does it).
· Even though you will have a number of functions, all code must be in a single file named
lab1p1.c
· Your program should be able to work if it receives input by redirection of stdin to a file (use
the test input file provided to verify this, and when testing your program). The grader will
grade your lab using redirection of input, so you should make sure your lab works when it is
executed this way. NOTE: Please do not test your code by typing input from the keyboard! C
code in industry is NEVER, EVER tested this way, for many reasons, but one very practical
reason is that it is MUCH MORE WORK, and you cannot be sure that the input is the same
each time you test the program!
· Be sure to follow the software design principles in C identified in the class slide set B-7 C
Software Design Principles posted on Carmen.
 You should pay attention to the order in which you write code for the functions in the
program. This is a critical part of writing, testing, and debugging software. We always want
to write and test functions on which other functions depend before writing and testing
the functions which depend on them. For the program for Part 1, main, and the function
which reads input from the input file into the array should be written first, along with the
function to print out the elements of the array (see the description of that function above),
and the function with the switch-case statement embedded in a loop. DO NOT WRITE the
code for any other functions before you write, test, and debug these first four functions. For
other functions, until you are ready to write them, you can use “stub” functions. This is
always done by writers of C code in the outside world. A stub function is a function
definition with a return type and parameter names and types, but A CODE BLOCK
WHICH IS EMPTY – with no statements. Here is an example:
int sumArray (float *array, int size) {
 /* no code, because it is a stub function */
}
If this function is called in the program, IT WILL IMMEDIATELY RETURN, and it will
DO NOTHING. Thus, any calls to the stub function will not interfere with testing and
debugging any other functions that this sumArray function depends on. Of course, as
mentioned above, you also need to have a declaration of this function at the top of your code
file after your #include directives, as mentioned above under “Constraints” related to
program structure.

Part 2.
DATA SET CALCULATOR - MODIFIED Mandatory filename: lab1p2.c
VERY IMPORTANT: DO NOT work in any way on Part 2 until you have completed your
code for Part 1 and tested and debugged it thoroughly! Failing to follow this advice will make
the work MUCH harder, and will make it much more likely that you will not be able to complete
Part 2 correctly!
After you finish, test, and debug Part 1 thoroughly (you have verified all code works correctly,
and added all comments), you should copy your C source code file for Part 1 to a source file for
Part 2, using the following command in your cse3430 lab1 directory on stdlinux:
$ cp lab1p1.c lab1p2.c
This will copy the source code file lab1p1.c to a new file named lab1p2.c, but you will still have
lab1p1.c in your files (it will not be deleted, only copied). The code for Part 1 will work correctly
for Part 2, except for the modifications described below.
ALSO IMPORTANT: Do not start writing code for Part 2 till you have watched the Zoom video
on Part 2, which is linked in the Zoom video links.pdf file on Carmen, and is labeled Lab 1 Part
2.
MODIFIED PROBLEM:
The user of your program will use it to do some elementary floating point calculations for a
single data set of AN UNKNOWN SIZE. The data set consists of a list of floating point
values, but the number of values in the data set will also be specified by the user in the
input to the program, so you do not know in advance how many values there will be in the
data set. THEREFORE, YOU CANNOT USE A STATIC ARRAY, as you did in Part
1, to store these values. As we will see in lecture, a static array in C is one declared as
follows:
float array[6];
This kind of array can only be used in C when the length or size of the array, 6 in this
example, IS KNOWN when writing the code. If the size of the array is not known while
writing the code, the kind of array declared above, a static array, CANNOT be used
(There are sometimes students who doubt this, and think there is some trick that can be
used to make this work, but PLEASE BELIEVE ME, this kind of array CANNOT be
used when the size of the array is unknown at coding time!); instead, A DYNAMIC
ARRAY must be used, and the space to store the elements of the array must be
allocated at run time (after the program starts running). This must be done by calling a
library function, malloc or calloc, to allocate the space. These functions and their use are
covered in the class slides (B-6 C Pointers Part 2.pptx). The variables we will declare
instead in main for the modified problem are these:
float *dataSetPtr = NULL; /* Replace declaration in lab1p1.c with this one */
int dataSetSize = 0;
We will discuss in class why, in Lab 1 Part 2, these variables are declared this way in main.

 As in Part 1, in writing your code, you should remember the principle of reusability. In
general, each of your functions should do a single thing. If there are several tasks clearly
relating to doing a single thing, they can be put into the same function, but if you have any
doubt, separate the tasks into different functions (most of this was dealt with in the code for
Part 1, but it will also come up in the code you add for this part). By writing code in this way,
functions are more reusable, and this is a very important property. See the class slide set B-7
C Software Design Principles.
 Related to reusability is the principle that in main, only variable declarations and calls
to other functions should appear (see the discussion above in Pat 1). The main function
should have no code other than this (declaration of variables and calls to other functions).
 First, you should call a function from main which will prompt the user to enter the size of
the data set, and then call scanf to read the size entered by the user. You will need a new
function (not needed in Part 1) to do this (REMEMBER to also add a declaration of this new
function where other functions are declared before main). The user will enter an integer greater
than or equal to 1 to indicate the size of the data set. Your program should have a separate
function to get the size of the data set (that is, you cannot put code to do this in main; you
should call the function you write to do this from main). This function must be declared to
return void (it cannot return an int, a pointer, or any other type of value). Remember the
principle that the main function in a C program should only have declarations of variables and
calls to other functions; no other code should appear in main (no loops, no if or if-else or elseif, no switch-case, etc., but only variable declarations, function calls and return (0)).
 After calling the function to get the size of the data set, your program should call a separate
function to dynamically allocate an array with the right amount of memory to hold the elements
of the array. This is a second function which was not needed for Part 1, but must be added for
Part 2 (REMEMBER to also add a declaration of this new function where other functions are
declared before main). This function also must return void (it cannot return a pointer or any
other type of value).
 You should then call a function to print a single prompt for the user to enter values for
the data set; you should be able to reuse the same function you wrote for Part 1 to get the
float input for the data set, and pass it the same types of parameters (a float pointer and an
int) that you passed in Part 1, and it should work correctly. You can assume that the user will
enter the input as described in Part 1, so you do not need to do error checking for this.
NOTICE HOW WE ARE REUSING CODE WE WROTE BEFORE FOR PART 1
HERE: Once the user enters the size of the data set and malloc or calloc is called to allocate
space for the float data set, the function which you wrote for Part 1 to read the float data into
the float array can be called to read the float values from input and store them in the data set.
You do not need to, and YOU SHOULD NOT, write new code to do this again; instead,
reuse the function you wrote to do this before for Part 1 by calling it!

 After getting the values in the data set from the user input, you should call another function
which should repeatedly do the following two things (put this in a loop in a function):

Prompt the user to choose one of the following options for a calculation to perform on
the data set chosen by the user (ask the user to enter one of the six options, followed by
enter):
 Enter a number to choose one of the following options:
1) Find the minimum value.
2) Find the maximum value.
3) Calculate the sum of all the values.
4) Calculate the average of all the values.
5) Print the values in the data set.
6) Exit the program.
You can reuse the code you wrote for Part 1 for this function. Each of the calculation functions
should work the same way as for Part 1 (so you can and should reuse the calculation functions
you wrote for Part 1), for example:

The maximum value in data set 1 is: 569.45

The results for all options should be output in the same way which was described for Part 1,
above (reuse the code you wrote before).

➢ After your program outputs the result of the operation, it should prompt the user again
to select another option for a calculation, till the user selects operation 6, which should
cause the function TO CALL A FUNCTION TO FREE THE DYNAMICALLY
ALLOCATED MEMORY for the float array (or, if you prefer, the function can return
to main, and main can call a function to free the dynamically allocated memory for the
array). The function to free the dynamically allocated memory will be a third new
function you will need to write for Part 2.
 The calculation functions for Part 1 should all be reused.
 As stated above, for Part 2, since memory was dynamically allocated, you need to write a
function to deallocate, or free, this memory before the program terminates (see the description
above). When the user chooses option 6 to exit, this function to free all dynamically allocated
memory should be called (or the program can return to main and the function can be called
from there).


CONSTRAINTS:
· Program structure should be (this is all essentially the same as Part 1, except what is printed in
bold type below):
-Any necessary #include directives for library header files (stdio.h and stdlib.h)
-Declarations of all functions in the program (except main)
-Definition of main
-Definitions of all other functions (the order does not matter)
·Requirements for main:
-main should only do the following:
-Declare variables that are needed by other functions in the program. You will need
the
 following variables in main:
float *dataSetPtr = NULL; /*pointer to data set */
int dataSetSize = 0; /* variable to hold size of data set */
-Call other functions
-NOTE: Reading of input, dynamic allocation of memory, getting user choice of
data set and calculation to perform, calculations, and freeing of dynamically
allocated memory should NOT be done in main; all of these should be done in
functions separate from main.
· You cannot use a statically declared array for Part 2, as explained above, because the size of the
array is unknown when the code is written.
· Your code should work correctly for a data set of any size (including size 1),
(including size just 1 and up to the limits of available memory, of course), and these
numbers are not known in advance. If your code works for the test data shown
below, you should be fine, but explicitly test data with a data set of size 1 (we may
do this in grading the lab).
·
GUIDANCE ON DOING THE LAB
-Make sure you are comfortable with the concepts in the two slides set on pointers (B-5 C Pointers
Part 1 before writing Part 1, and B-6 C Pointers Part 2, before writing Part 2 of the lab) before you
start writing code for each part of the lab! Also, before you start Part 2, be sure to watch the Zoom
video on Lab 1 Part 2 linked in the Zoom video links.pdf on Carmen.
LAB SUBMISSION
You should submit the files for your lab assignment on Carmen, as follows:
- First, make sure that you are in the stdlinux directory where your Lab 1 files are.
- There are two separate assignments, and two separate drop boxes, on Carmen for Lab 1, called
Lab 1 P1 and Lab 1 P2. Run firefox from stdlinux:
$ firefox https://carmen.osu.edu/#
- Log in to Carmen using your name.number and password, and select this course in Carmen.
- Choose the Lab 1 P1 assignment on Carmen, and submit your lab1p1.c file.
- Choose the Lab 1 P2 assignment on Carmen, and submit your lab1p2.c file.
Be sure to submit the following files (see above):
lab1p1.c for Lab 1 P1, and lab1p2.c for Lab 1 P2.
BE CAREFUL: DO NOT SUBMIT EXECUTABLE VERSIONS OF YOUR PROGRAMS,
lab1p1 or lab1p2 (WARNING: YOU WILL GET NO CREDIT); only submit C source
code files, lab1p1.c and lab1p2.c!
See below for a sample data set inputs to the programs for Part 1 and Part 2. You can download
these from Carmen into your cse3430/lab1 directory, as follows:
$ firefox https://carmen.osu.edu/#
Log in to Carmen, and go to the class Carmen page, and then download the two input files to
stdlinux. You can go to your cse3430 lab1 folder to copy them there:
$ cp ~/Downloads/lab1p1in ./
$ cp ~/Downloads/lab1p2in ./

Then, run a list command (still in your lab1 directory) to see the files were copied:
$ ls
You should see the lab1p1in and lab1p2in files in the list of files.
See sample input data on next page.
Sample Data Set Input for Part 1: provided on Carmen as the file lab1p1in
NOTE: First 6 lines are 6 values in the data set, and remaining lines are choice of
calculation to perform:

Sample Data Set Input for Part 2: provided on Carmen as the file lab1p2in (This
includes user responses to the prompts to select an operation to perform)
NOTE: 1st line is the size of the data set; 2nd through 7
th lines are the 6 floating point
values in the data set (in this case the size is 6, but it could be a different size for a
different data set); remaining lines are choice of calculation to perform.
請(qǐng)加QQ:99515681 或郵箱:99515681@qq.com   WX:codehelp

掃一掃在手機(jī)打開(kāi)當(dāng)前頁(yè)
  • 上一篇:指標(biāo)代寫(xiě) 公式代做 神秘機(jī)構(gòu)組合主圖指標(biāo)
  • 下一篇:ACS130代做、代寫(xiě)C++語(yǔ)言編程
  • 無(wú)相關(guān)信息
    合肥生活資訊

    合肥圖文信息
    2025年10月份更新拼多多改銷(xiāo)助手小象助手多多出評(píng)軟件
    2025年10月份更新拼多多改銷(xiāo)助手小象助手多
    有限元分析 CAE仿真分析服務(wù)-企業(yè)/產(chǎn)品研發(fā)/客戶(hù)要求/設(shè)計(jì)優(yōu)化
    有限元分析 CAE仿真分析服務(wù)-企業(yè)/產(chǎn)品研發(fā)
    急尋熱仿真分析?代做熱仿真服務(wù)+熱設(shè)計(jì)優(yōu)化
    急尋熱仿真分析?代做熱仿真服務(wù)+熱設(shè)計(jì)優(yōu)化
    出評(píng) 開(kāi)團(tuán)工具
    出評(píng) 開(kāi)團(tuán)工具
    挖掘機(jī)濾芯提升發(fā)動(dòng)機(jī)性能
    挖掘機(jī)濾芯提升發(fā)動(dòng)機(jī)性能
    海信羅馬假日洗衣機(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)線
  • 短信驗(yàn)證碼 目錄網(wǎng) 排行網(wǎng)

    關(guān)于我們 | 打賞支持 | 廣告服務(wù) | 聯(lián)系我們 | 網(wǎng)站地圖 | 免責(zé)聲明 | 幫助中心 | 友情鏈接 |

    Copyright © 2025 hfw.cc Inc. All Rights Reserved. 合肥網(wǎng) 版權(quán)所有
    ICP備06013414號(hào)-3 公安備 42010502001045

    91精品国产91久久久久久_国产精品二区一区二区aⅴ污介绍_一本久久a久久精品vr综合_亚洲视频一区二区三区
    日韩国产欧美在线视频| 风流少妇一区二区| 中文字幕视频一区| 久久久精品国产免大香伊| 精品日韩成人av| 久久亚洲春色中文字幕久久久| 88在线观看91蜜桃国自产| 欧美视频精品在线观看| 欧美日韩一级片网站| 欧美日韩国产片| 日韩美女主播在线视频一区二区三区| 欧美精品v日韩精品v韩国精品v| 欧美丝袜自拍制服另类| 91麻豆精品国产91久久久更新时间 | 欧美精品久久久久久久多人混战 | 激情欧美一区二区| 韩国精品主播一区二区在线观看 | 国产麻豆精品视频| 韩国精品免费视频| 黄色小说综合网站| 成人黄色在线视频| 成人高清视频在线| 亚洲欧美综合| 最新亚洲激情| 91久久精品日日躁夜夜躁欧美| 欧美性一二三区| 欧美电影免费观看高清完整版在线| 欧美一区永久视频免费观看| 久久亚洲二区三区| 一区二区三区在线视频免费| 日本不卡在线视频| 福利电影一区二区三区| 亚洲国产精品一区制服丝袜| 亚洲欧洲午夜| 欧美色综合久久| 国产亚洲一区二区三区在线观看 | 久久久精品一品道一区| 亚洲一区av在线| 精品一区二区三区的国产在线播放| 成人夜色视频网站在线观看| 亚洲国产欧美不卡在线观看| 色一情一乱一乱一91av| 久久女同互慰一区二区三区| 悠悠色在线精品| 国产精品影视天天线| 欧美特黄一区| 久久久久se| www国产亚洲精品久久麻豆| 国产精品福利一区| 久久99久久99小草精品免视看| 91丨九色丨蝌蚪丨老版| 一本到不卡精品视频在线观看| 久久久久国产精品免费免费搜索| 亚洲超碰精品一区二区| 成人教育av在线| 久久综合九色99| 欧美国产日本视频| 国产一区二区在线电影| 亚洲作爱视频| 久久久久国产一区二区三区四区| 亚洲第一福利一区| 欧美一区国产一区| 欧美男生操女生| 亚洲国产日韩a在线播放| 99久久99久久久精品齐齐| 先锋影音国产精品| 久久综合狠狠综合| 国产在线精品一区二区不卡了 | 欧美激情第二页| 欧美亚州韩日在线看免费版国语版| 中文av一区二区| 风间由美中文字幕在线看视频国产欧美| 亚洲自啪免费| 日韩毛片一二三区| 国产精品一区二区在线播放| 亚洲欧美日韩国产一区| 欧美高清在线一区| 成人的网站免费观看| 欧美三级电影在线观看| 亚洲第四色夜色| 在线成人国产| 久久亚洲欧美国产精品乐播| 日韩和的一区二区| 亚洲毛片在线| 日韩一区在线免费观看| 亚洲欧美网站| 亚洲品质自拍视频网站| 欧美在线免费一级片| 欧美电视剧免费观看| 精品一区二区三区视频在线观看| 美女成人午夜| 亚洲国产成人高清精品| 亚洲一级高清| 国产精品嫩草影院com| 国产**成人网毛片九色| 色狠狠综合天天综合综合| 亚洲国产一区二区视频| 国产精品欧美日韩一区| 中文字幕一区二区三中文字幕| 91免费版在线| 日本一区二区三级电影在线观看| av电影在线观看一区| 精品国产乱码久久久久久久久 | 欧美亚洲自偷自偷| 午夜精品久久久久久久99樱桃| 国产精品久久久久久模特| 亚洲一区免费在线观看| 久久av最新网址| 丝袜a∨在线一区二区三区不卡| 国产嫩草一区二区三区在线观看 | 成人免费不卡视频| 久久综合视频网| 欧美色123| 亚洲欧美偷拍另类a∨色屁股| 亚洲精品1234| 亚洲第一av色| 欧美日韩在线观看一区二区| 国产激情偷乱视频一区二区三区 | 婷婷开心激情综合| 欧美视频在线一区| 国产丶欧美丶日本不卡视频| 久久先锋影音av鲁色资源网| 99re热视频精品| 中文字幕亚洲电影| 亚洲欧美日韩在线综合| 久久精品久久99精品久久| 91精品久久久久久久99蜜桃 | 亚洲激情影院| 婷婷国产在线综合| 91精品婷婷国产综合久久性色| 97久久精品人人做人人爽 | 狠狠久久婷婷| 亚洲一区二区视频在线| 欧美视频在线不卡| 99视频精品全部免费在线| 国产精品成人免费| 一本大道av伊人久久综合| 国产精品77777竹菊影视小说| 久久久久久久久久久久电影| 在线视频一区观看| 激情图片小说一区| 国产精品色婷婷久久58| 91精品福利视频| 99re8在线精品视频免费播放| 亚洲一二三区视频在线观看| 91精品免费在线| 夜夜嗨网站十八久久| 国产制服丝袜一区| 中文字幕视频一区二区三区久| 在线免费观看不卡av| 91麻豆国产福利在线观看| 亚洲国产成人av好男人在线观看| 欧美一区二区三区白人| 亚洲精选国产| 国产成人av电影在线观看| 亚洲免费在线视频| 欧美一区二区黄| 国产精品呻吟| 成人av片在线观看| 免费高清视频精品| 中文字幕在线免费不卡| 亚洲综合激情网| 日韩欧美一二三四区| 久久av免费一区| 91婷婷韩国欧美一区二区| 日本vs亚洲vs韩国一区三区 | 日本一区免费视频| 欧美三日本三级三级在线播放| 欧美三级视频| 国产99久久久国产精品免费看| 亚洲一区二区三区自拍| 国产欧美日韩一区二区三区在线观看 | 国产精品夜夜夜| 欧美激情视频一区二区三区在线播放| 久久精品99国产精品日本| 国产精品情趣视频| 精品久久久久av影院| 久久99精品一区二区三区三区| 国产精品美女久久久久久久| 国产精品久久国产愉拍| 亚洲网友自拍偷拍| 欧美激情综合在线| 午夜一级在线看亚洲| 蜜桃av一区二区在线观看| 精品少妇一区二区| 亚洲三级电影在线观看| 亚洲视频图片小说| 欧美在线短视频| 国产精品多人| 成人爽a毛片一区二区免费| 久久久国产精品不卡| 欧美日韩中文国产| 成人网页在线观看| 国产精品高潮呻吟| 久久久精彩视频| 久久成人免费网| 亚洲精品免费在线观看| 日韩视频免费观看高清完整版 | 久久综合av免费| 国产精品丝袜91|