讲解CE243留学生、辅导C/C++程序、讲解C program、辅导C/C++

- 首页 >> C/C++编程

School of Computer Science and Electronic Engineering (CSEE)

1

CE243 Assignment 1 (2018-2019)

1. Objectives

This assignment aims to demonstrate your master of basic C programming skills.

2. The Task

You shall write a C program to implement some text handling task. Your C program shall firstly

ask for the name of the text file being inputted from the keyboard manually. Then, it shall open and

read this text file. Finally, your C program shall analyse the text and output a meaningful answer to

the screen and also to a file for submission with your C program.

Appendix 1 shows an example of the text file, which contains the following features:

The provided file contains typed text in the form of English words, punctuation marks and C

keywords, separated by space.

The punctuation marks in the text file include the following four: comma (,), full stop (.),

question mark, and exclamation mark (!).

The number of C keywords in the text file is more than 1 and less than 32.

At first, you shall create a header file (***.h) to include C keywords and 4 punctuation marks given

above, which will be then included in your C program. Your C program shall read and analyse the

text file, and then produce a correct output with the following format:

A line shall be output when your program reads either one of punctuation marks listed above or

one of C keywords from the text file. Note that the punctuation marks shall go with the text

being read already, e.g.

Do these capabilities exist in most other languages?

A keyword shall occupy one line itself, e.g.

goto

when a keyword is followed by a punctuation mark, they shall stay in one line, e.g.

char,

The total number of lines shall be counted and outputted as the last line with the prefix sentence

“Total number of lines is: **”.

3. Deadline and submission requirement

The deadline for the electric submission of your Assignment 1 report and associated C program is

11:59:59 on Monday 15th October 2018 (Week 6). Please email your assignment as ONE

attachment to ce243assignment@163.com prior to the above submission deadline. If you submit

multiple files then please do zip them into one file. The filename shall take the following format:

Surname_Firstname_RegistrationNumber_A1, all in English. Your email subject shall use exactly

the same format. No email content is necessary.

Your assignment report shall be written clearly, concise and easy to read.

Write your name (both English and Chinese), registration number and the module code (CE243-

NWU) clearly on the cover page, including a ToC (Table of Contents) (1 page).

You shall use a flow chart to describe your software design and explain how it works using text

(1 or 2 pages).

You shall test and run your code, collect the result and present the results in your written report

(1 or 2 pages).

School of  Computer Science and  Electronic Engineering (CSEE)?

2

Print your C program and output results at the end of the report (3 pages).

No extensions of the deadlines will be given. If, for any reason, you do not submit your code, there

will be no record of the submission time and you will automatically get a zero mark. You shall

submit your work through the proper channel (electronic submission) and on time, even if it is

incomplete - something is better than nothing.

This assignment is to be completed individually, i.e. whatever you hand in must be your own

individual work. Any software or any other materials that you use in this assignment, whether

previously published or not, must be referred and properly acknowledged.

4. Assessment

You will be assessed on the source code you submit. You are also expected to demonstrate its

performance on another text file in Lab 5, to explain your code and answer questions about your

code. Marks will be awarded for programming style, the number of features implemented (e.g., the

punctuation marks that can be detected by your program) as well as for your explanation of your

code. Programs will be assessed as follows:

Excellent (70 - 100%)

All features are implemented. The program is well-structured, commented and concise. It

works correctly with all test data. Its output is correct, with meaningful statistics. All

questions are answered correctly during your demonstration.

Good (55 - 69%)

The program implements all of the required features, but has poor structure and comments. Its

output is partially correct. Not all questions are answered correctly during your demonstration.

Poor (40 - 54%)

The program implements at least 50% of the required features. It has poor structure and

comments. The code executes but doesn’t work with all test data. Its output is partially correct.

At least half of the questions are answered correctly during your demonstration.

Awful (10 – 39%)

The program can open and read a file, but has poor structure and comments. It doesn’t work

with all test data. Its output is incorrect. It does not produce any meaningful statistics. Most of

the questions are not answered correctly during your demonstration.

Appendix 1

The following text is for you to type into a text file, namely “assignment1.txt”.

C allows the programmer to write directly to memory unlike most of other programming languages.

Key constructs in C such as pointers and arrays are designed to structure and manipulate memory in

a machine-independent fashion. Thirty two Keywords in C are also called as reserved words such as

char, int, float, goto and void. C gives control over the memory layout of data structures! Dynamic

memory allocation in C is under the control of the programmer unlike languages like Java and Perl

that shield the programmer from memory allocation and pointers. This can be useful since dealing

with memory allocation when building a high-level program is a highly error-prone process. C

provides a uniform interface when dealing with low-level code such as the part of the OS that

controls a device. Do these capabilities exist in most other languages? Answer is no.


站长地图