Earn Higher Grades With Instant Assignment Help.Ask Question!

C Programming
(5/5)

university keeps records of students and companies engaged in the INTRA programme using a computer program. This program uses two files named students.txt and companies.txt

INSTRUCTIONS TO CANDIDATES
ANSWER ALL QUESTIONS

TERMINAL ASSIGNMENT

MODULE:  Software Development for Engineers (EM108)

the terminal assignment consists of one problem. You need to design a solution, write the code using the C programming language, test your program, write a report and submit your work in loop.

In order to compile and test your program, either a locally-installed compiler such as BorlandC or one of the following online compilers can be used:  https://www.onlinegdb.com/online_c_compiler https://www.tutorialspoint.com/compile_c_online.php

https://repl.it/languages/c

A report template is available at the end of this document and can also be downloaded from the EM108 loop site.

The input files can be created using the data at the end of this document or can be downloaded from loop.

 

Problem         

A university keeps records of students and companies engaged in the INTRA programme using a computer program. This program uses two files (named students.txt and companies.txt) which store details on the students and companies, respectively. The files use lines with the following format for storing information.

students.txt

Name Surname PPS Nationality Married Children Registration

Each line contains 7 pieces of information about a student, separated by space. The first two pieces of information represent the student name and surname, the third the associated PPS as an alphanumeric code, the fourth the student nationality as an alphabetic field, the fifth is an indication whether the individual is married or not (e.g. 1 or 0), the sixth is the number of children the student has and the final field is an alphanumeric entry which contains the registration code of the company the student performs his/her INTRA with.

companies.txt

Company Registration Salary Benefits

Each line contains 4 pieces of information about companies, separated by space. The first is the company name, the second is the company unique alphanumeric registration code, the third is the salary, expressed in euro and finally benefits indicates whether the company offers or not benefits (1 or 0).

You are required to develop a program which will perform the following steps:

  1. Write a function to read the data from the two input files into two arrays of structures (5 marks). Assume a maximum of 20 characters for each alphabetic name or alphanumeric code. Note there are no spaces introduced between the potential multiple words of any name. Once read, the program should not allow data to be read again from the files and a warning message will be displayed instead (5 marks). It is assumed that there are no more than 1000 entries in each (10 marks)
  1. Ask the user to input a company name. Write a function to search for the company in the company array of structure and return its registration if found or -1 otherwise (5 marks). Ask the user for a student name. Write a function to search for the student and - if found - record the fact that the student will do his/her INTRA with the inputted company by storing company’s registration in student’s record. If the student is not found, print a message (10 marks). (15 marks)

 

  1. Ask for a student PPS. Search for the student in the data structure and - if found - print his/her details: name, nationality, married status and number of children. Print a message if the student is not found (5 marks). Print also the INTRA-related details as follows: company name, registration code, salary (10 marks). You may find helpful if you write a function that receives as a parameter a company registration code, searches for the company in the company array of structure and returns its array index, if found or -1 otherwise.
  1. For each student, compute and store in the student array of structure their income according to their INTRA company details. In the student structure, add a new integer entry named income (5 marks). In the student array of structure, for all the students, fill this entry as follows. If the company does not offer benefits, the income is equal to the company advertised salary (10 marks). If the company does offer benefits, an additional allowance of 5% for married students and a child support of 3% for each of student’s children needs to be added. The international students get a fixed travel allowance of 200 euro (10 marks).
  2. Ask the user to input a letter. Print on the screen the list of students whose names start with that letter and for each student data in the following format:

| Name| Surname       | PPS               | Company      | Income          

e.g.      | John | OBrien          | 1234567D     | Vodafone      | 32500            

 

  1. Read a file name from the keyboard, and write in a file with that name (5 marks) student information in the following format: (5 marks):

Name Surname Nationality Company Registration Income

e.g.   John OBrien Irish Vodafone X4321674 32500

The program should include at least three functions, demonstrate good coding practices with regard to spacing, indentation, commenting, etc. and offer the user a menu and repeated access to the program options.  

 

Make sure the program compiles and executes. Test the program rigorously. Record, report and comment all test results.   

Attachments:
(5/5)

Related Questions

CSI 1420 Introduction to C Programming & Unix Fall 2018, CRN 44882, Oakland University Homework Assignment 6 - Using Arrays and Functions in C

DescriptionIn this final assignment, the students will demonstrate their ability to apply two majorconstructs of the C programming language – Fu

The standard path finding involves finding the (shortest) path from an origin to a destination, typically on a map. This is an

Path finding involves finding a path from A to B. Typically we want the path to have certain properties,such as being the shortest or to avoid going t

Develop a program to emulate a purchase transaction at a retail store. This program will have two classes, a LineItem class and a Transaction class. The LineItem class will represent an individual

Develop a program to emulate a purchase transaction at a retail store. Thisprogram will have two classes, a LineItem class and a Transaction class. Th

SeaPort Project series For this set of projects for the course, we wish to simulate some of the aspects of a number of Sea Ports. Here are the classes and their instance variables we wish to define:

1 Project 1 Introduction - the SeaPort Project series For this set of projects for the course, we wish to simulate some of the aspects of a number of

Project 2 Introduction - the SeaPort Project series For this set of projects for the course, we wish to simulate some of the aspects of a number of Sea Ports. Here are the classes and their instance variables we wish to define:

1 Project 2 Introduction - the SeaPort Project series For this set of projects for the course, we wish to simulate some of the aspects of a number of

Ask This Assignment To Be Done By Our ExpertsGet A+ Grade Solution Guaranteed

expert
joyComputer science
(4/5)
12 Answers Hire Me
expert
Robert DLaw
(4.8/5)
534 Answers Hire Me
expert
Dr Samuel BarberaStatistics
(5/5)
798 Answers Hire Me
expert
Tutor For YouEconomics
(5/5)
940 Answers Hire Me