首页
网站开发
桌面应用
管理软件
微信开发
App开发
嵌入式软件
工具软件
数据采集与分析
其他
首页
>
> 详细
CSE240程序讲解、c/c++设计程序辅导、c++编程辅导 辅导R语言程序|辅导Web开发
项目预算:
开发周期:
发布时间:
要求地区:
CSE240 – Introduction to Programming Language 1 | Page
Homework 07
CSE 240 Spring 2021 Homework 7:
Linked List of Containers (50 points)
Due Saturday, March 13, 2021 at 11:59PM, plus a 24-Hour grace period
Introduction
The aim of this assignment is to make sure that you understand and are familiar with the
concepts covered in the lectures, including linked list, pointer operations, and parameter
passing mechanisms. This two-assignment combination allows you to put all together that you
have learned in C programming language into a large program. By the end of the assignment,
you should have understood and exercised
● Pointer and pointer to pointer operations accessing structured data
● Linked list of structures, with complex manipulations of pointer and structure
● Different types of parameter passing mechanisms and return values of different types.
● Solving problems in recursion
Reading: Textbook Chapter 2, Section 2.5.4 on linked list and Section 2.6 on parameter passing
and Section 2.10.
Preparation: Complete the multiple choice questions in the textbook exercise section. The
answer keys can be found in the course Web site. These exercises can help you prepare for your
weekly quiz and the exam. You are encouraged to read the other exercise questions and make
sure you understand these questions in the textbook exercise section, which can help you
better understand what materials are expected to understand after the lectures and homework
on each chapter.
You are expected to do the majority of the assignment outside of class meetings. Should you
need assistance, or have questions about the assignment, please contact the instructor or TA
during their office hours.
You are encouraged to ask and answer questions on the course discussion board. However, do
not share your answers and code in the course discussion board.
Homework Description
The following figure shows an instance of the linked list that you will be building and managing
in these two homeworks. The node of the main linked list ‘list’ is called libraryList, which
contains two members: (1) book member is a pointer to the book node, (2) a pointer to next
libraryList node. The book node contains three members: (1) book title, (2) aisle number, and
(3) a pointer to bookType list. The node in the bookType list has two members: (1) book type (2)
a pointer to next bookType node.
CSE240 – Introduction to Programming Language 2 | Page
Homework 07
libraryList
HW 7 Programming Assignment (50 points)
You are given a partially completed program hw7.c. You should follow the instructions given in
the program to complete the functions so that the program executes properly. You will be
completing a program that creates a list of books. It is a menu driven program where user is
given following options:
a) Add an book’s information (Book title and aisle number) is already implemented. The
new book is added to the head of the linked list. We do not ask user for bookTypes to
add in this function. So simply NULL is assigned to *bookType member of the ‘book‘
node when a new book is added to the list in this function. (Note: *bookType is used in
further functions)
b) Display the book list is already implemented. This function prints each book’s title and
aisle number. It does not print bookType of the book.
These functions need to be implemented:
c) Search a book in the list by book title. It prints if the book exists on the list or not. This
function should return the ‘book‘ node if that book is found in the list, else return NULL.
It is used as a helper function in executeAction() to check if the book exists in the list.
The next part focuses on using ‘bookType’ linked list. In this part, the user should be able to use
the following menu options:
a) Add a bookType to an book’s profile. This function assumes that the book is added in
the list and assigns book type using the *bookType member of ‘book’ node. You may
add the new bookType to the head or tail of the ‘bookType’ linked list. (Sample solution
adds the bookType to the tail)
*list *book
*next
*book
*next
*book
*next
Book title
aisle
*bookType
Book title
aisle
*bookType
Book title
aisle
*bookType
type
*next
type
*next
type
*next
null
null
nul null l
book
bookType
CSE240 – Introduction to Programming Language 3 | Page
Homework 07
b) This function prompts the user to input a book type. Then it displays the list of books
that have the entered book type only. Lastly, it should display the number of books that
met this requirement. This function should display both book’s title and aisle number.
See expected output below.
c) Removes the book from the list. This function removes the book’s title, aisle number
and bookType list of the book when removing the book from the list.
Expected outputs:
addBook (already implemented)
CSE240 – Introduction to Programming Language 4 | Page
Homework 07
displayLibraryList (already implemenetd)
(New books are added to the head of ‘list’. So newer books appear first. Not necessary to print
‘end of list’ message.)
searchBook (5 points)
CSE240 – Introduction to Programming Language 5 | Page
Homework 07
addBookType (15 points)
displayBookTypeList (15 points)
( Sapiens recently added book type as ‘Nonfiction’ which was added to tail of her *bookType
list. So, it’s name appears when ‘l’ option is used ).
CSE240 – Introduction to Programming Language 6 | Page
Homework 07
removeBook (15 points)
(After removing a book, you should use the display option to verify it functioned correctly)
What to Submit?
You are required to submit your solution in a compressed format (.zip). Make sure your
compressed file is label correctly - lastname_firstname7.zip. (All lowercase, do not put
anything else in the name like "hw7".)
The compressed file MUST contain the following:
hw7.c (completed code)
No other files should be in the compressed folder.
If multiple submissions are made, the most recent submission will be graded. even if the
assignment is submitted late.
Submission preparation notice: The assignment may consist of multiple files. You must copy
these files into a single folder for canvas submission. To make sure that you have all the files
included in the zip file and they work after unzip operation, you must test them before
submission. You must also download your own submission from the canvas. Unzip the file on a
different machine and test your assignment and see if you can open and test the files in a
different location, because the TA will test your application on a different machine. If you
submitted an empty project folder, an incomplete project folder, or a wrong folder, you cannot
resubmit after the submission linked is closed! We grade only what you submitted in the canvas.
CSE240 – Introduction to Programming Language 7 | Page
Homework 07
We cannot grade the assignment on your computer or any other storage, even if the modification
date indicated that the files were created before the submission due dates. The canvas submission
may take a few minutes. Be patient and wait for it to complete.
Where to Submit?
All submissions must be electronically submitted to the respected homework link in the course
web page where you downloaded the assignment.
Late submission deduction policy
● No penalty for late submissions that are received within 24 hours after the deadline;
● 10% grade deduction for every day it is late after the grace period;
● No late submission after Tuesday at 11:59PM.
Grading Rubrics
Each sub-question (programming tasks) has been assigned certain points. We will grade your
programs following these steps:
(1) Compile the code. If it does not compile, 50% of the points given for the code under
compilation will be deducted. Then, we will read the code and give points between 50%
and 0, as shown in right part of the rubric table.
(2) If the code passes the compilation, we will execute and test the code using test cases. We
will assign points based on the left part of the rubric table.
(3) In both cases (passing compilation and failed compilation), we will read your program and
give points based on the points allocated to each sub-question, the readability of your code
(organization of the code and comments), logic, inclusion of the required functions, and
correctness of the implementations of each function.
(4) Please notice that we will not debug your program to figure out how big or how small the
error is. You may lose 50% of your points for a small error such missing a comma or a
space!
(5) We will apply the following rubrics to each sub-question listed in the assignment. Assume
that points assigned to a sub-question is pts:
Major Code passed compilation Code failed compilation
Please read the FAQ file in the Course Information folder:
Q: For some reason, my assignment submission did not go through, but I thought it went
through. I can show you on my local disk or in my Dropbox that I completed the assignment
before the due date. Can my assignment be graded?
A: You should always download your own submission from the blackboard after submission and
test if the submission contains all the required files. We will grade the assignment submitted to
Canvas only. We cannot grade the assignment sent from email or stored in any other places,
regardless its last-modified-time. If you submitted your assignment into the blackboard, it cannot
be downloaded from the instructor side, but it can download from your side, we can download
from your blackboard and grade the assignment. Please meet the instructor or TA in this case.
软件开发、广告设计客服
QQ:99515681
邮箱:99515681@qq.com
工作时间:8:00-23:00
微信:codinghelp
热点项目
更多
代做ceng0013 design of a pro...
2024-11-13
代做mech4880 refrigeration a...
2024-11-13
代做mcd1350: media studies a...
2024-11-13
代写fint b338f (autumn 2024)...
2024-11-13
代做engd3000 design of tunab...
2024-11-13
代做n1611 financial economet...
2024-11-13
代做econ 2331: economic and ...
2024-11-13
代做cs770/870 assignment 8代...
2024-11-13
代写amath 481/581 autumn qua...
2024-11-13
代做ccc8013 the process of s...
2024-11-13
代写csit040 – modern comput...
2024-11-13
代写econ 2070: introduc2on t...
2024-11-13
代写cct260, project 2 person...
2024-11-13
热点标签
mktg2509
csci 2600
38170
lng302
csse3010
phas3226
77938
arch1162
engn4536/engn6536
acx5903
comp151101
phl245
cse12
comp9312
stat3016/6016
phas0038
comp2140
6qqmb312
xjco3011
rest0005
ematm0051
5qqmn219
lubs5062m
eee8155
cege0100
eap033
artd1109
mat246
etc3430
ecmm462
mis102
inft6800
ddes9903
comp6521
comp9517
comp3331/9331
comp4337
comp6008
comp9414
bu.231.790.81
man00150m
csb352h
math1041
eengm4100
isys1002
08
6057cem
mktg3504
mthm036
mtrx1701
mth3241
eeee3086
cmp-7038b
cmp-7000a
ints4010
econ2151
infs5710
fins5516
fin3309
fins5510
gsoe9340
math2007
math2036
soee5010
mark3088
infs3605
elec9714
comp2271
ma214
comp2211
infs3604
600426
sit254
acct3091
bbt405
msin0116
com107/com113
mark5826
sit120
comp9021
eco2101
eeen40700
cs253
ece3114
ecmm447
chns3000
math377
itd102
comp9444
comp(2041|9044)
econ0060
econ7230
mgt001371
ecs-323
cs6250
mgdi60012
mdia2012
comm221001
comm5000
ma1008
engl642
econ241
com333
math367
mis201
nbs-7041x
meek16104
econ2003
comm1190
mbas902
comp-1027
dpst1091
comp7315
eppd1033
m06
ee3025
msci231
bb113/bbs1063
fc709
comp3425
comp9417
econ42915
cb9101
math1102e
chme0017
fc307
mkt60104
5522usst
litr1-uc6201.200
ee1102
cosc2803
math39512
omp9727
int2067/int5051
bsb151
mgt253
fc021
babs2202
mis2002s
phya21
18-213
cege0012
mdia1002
math38032
mech5125
07
cisc102
mgx3110
cs240
11175
fin3020s
eco3420
ictten622
comp9727
cpt111
de114102d
mgm320h5s
bafi1019
math21112
efim20036
mn-3503
fins5568
110.807
bcpm000028
info6030
bma0092
bcpm0054
math20212
ce335
cs365
cenv6141
ftec5580
math2010
ec3450
comm1170
ecmt1010
csci-ua.0480-003
econ12-200
ib3960
ectb60h3f
cs247—assignment
tk3163
ics3u
ib3j80
comp20008
comp9334
eppd1063
acct2343
cct109
isys1055/3412
math350-real
math2014
eec180
stat141b
econ2101
msinm014/msing014/msing014b
fit2004
comp643
bu1002
cm2030
联系我们
- QQ: 9951568
© 2021
www.rj363.com
软件定制开发网!