Visit Our UNIX and Linux User Community


C++ inputting multiple strings

 
Thread Tools Search this Thread
Homework and Emergencies Homework & Coursework Questions C++ inputting multiple strings
# 1  
Old 10-20-2009
Power C++ inputting multiple strings

Hi All,

We've been given the exercise below and I'm stumbling at the first block because we have to take in 20 student names and I don't know how to store them! Smilie

I know that I can create (initialize) 20 different char arrays but this seems wrong somehow...

What's the best way to store these string inputs?

Thanks, p.

Quote:
Design, code and test a program, which accepts the names and examination marks
of 20 students, determine the grade for each student [Distinction (70 to 100), a
Merit (55 to 69), a Pass (45 to 54) fail (below 45). And displays the students’
names, their marks and grades. The output should look like:
Code:
Name Mark Grade
===== ===== =====
Sam 78 Distinction
Joe 54 Pass
………..


3. The attempts at a solution (include all code and scripts):

Code:
#include "stdafx.h"
#include <iostream>
#include <string.h>
using namespace std;

int main ()
{
	char aName[15];
	int aMark[15], iIndex;
	char cName;

	cout << "Enter Name and Mark: " << endl;

	for (iIndex = 0; iIndex < 15; iIndex++)
	{
		cout << "Enter Name: ";
		cin >> aName;


	}

	// test output
	for (iIndex = 0; iIndex < 6; iIndex++)
	{
		cout << "Name Array output: " << aName[iIndex] << endl;
		cout << "Mark Array output: " << aMark[iIndex] << endl;
	}

	return 0;
}

(obviously the above doesn't work...)



4. School (University) and Course Number:

Farnborough Tech - UK (C++ practitioners diploma)... Note this is NOT coursework it's just one of the examples we're given to work thru...

Thanks!
# 2  
Old 10-20-2009
Quick and dirty hint:


Code:
#include <iostream>
#include <string.h>
using namespace std;

struct student {
	char name[80];
	int mark;
} grade[20];


int main ()
{

	int i;
	
	for (i = 0; i < 20 ; i++)
	{
	
		cout << "Student name" << endl;
		cin >> grade[i].name;
		cout << "Mark: " << endl;
		cin >> grade[i].mark;
	}
	
}

# 3  
Old 10-20-2009
Ooh I thought structs may help but I haven't used them yet - I'll have a play with this and let you know how I get on Smilie

Thanks! Smilie

---------- Post updated at 04:41 PM ---------- Previous update was at 04:09 PM ----------

Sorted! Smilie

Thanks for your help jp2542a!

Here's my final code:

Code:
#include "stdafx.h"
#include <iostream>
#include <string.h>
using namespace std;

struct student {
	char name[80];
	int mark;
	char gradeText[12];
} grade[5];


int main ()
{

	int i;
	
	for (i = 0; i < 5 ; i++)
	{
	
		cout << "Student name (" << i << ") ";
		cin >> grade[i].name;
		cout << "Mark: ";
		cin >> grade[i].mark;

		if ( grade[i].mark <= 100 && grade[i].mark >= 70 )
		{
		
			strcpy(grade[i].gradeText, "Distinction");

		} else if ( grade[i].mark <= 69 && grade[i].mark >= 55 ) {

			strcpy(grade[i].gradeText, "Merit");

		} else if ( grade[i].mark <= 54 && grade[i].mark >= 45 ) {

			strcpy(grade[i].gradeText, "Pass");

		} else {

			strcpy(grade[i].gradeText, "Fail");

		}

	}

	cout << endl;
	cout << "\t\tName\t\tMark\t\tGrade" << endl;
	cout << "\t\t====\t\t====\t\t=====" << endl;

	for (i = 0; i < 5; i++)
	{
	
		cout << "\t\t" << grade[i].name << "\t\t" << grade[i].mark << "\t\t" << grade[i].gradeText << endl;

	}
	
	return 0;
}


Previous Thread | Next Thread
Test Your Knowledge in Computers #437
Difficulty: Medium
Vue.js is a free, proprietary JavaScript framework.
True or False?

10 More Discussions You Might Find Interesting

1. UNIX for Beginners Questions & Answers

How to pass strings from a list of strings from another file and create multiple files?

Hello Everyone , Iam a newbie to shell programming and iam reaching out if anyone can help in this :- I have two files 1) Insert.txt 2) partition_list.txt insert.txt looks like this :- insert into emp1 partition (partition_name) (a1, b2, c4, s6, d8) select a1, b2, c4, (2 Replies)
Discussion started by: nubie2linux
2 Replies

2. Shell Programming and Scripting

Inputting multiple files into one command

I am trying to read 30 files into a command. The first file contains 10 lines and goes into this part of the command as "x" /tmp/filearrange.sh $x The group of files (20 files, I call them variable $i) need to be the second argument in the command and they need to be read so that they are... (9 Replies)
Discussion started by: newbie2010
9 Replies

3. Shell Programming and Scripting

Grep multiple strings in multiple files

Hi, every one! I have a file with multiple strings. file1 ATQRGNE ASQGVKFTE ASSQYRDRGGLET SPEQGARSDE ASSRDFTDT ASSYSGGYE ASSYTRLWNTGE ASQGHNTD PSLGGGNQPQH SLDRDSYNEQF I want to grep each string in hundreds of files in the same directory, further, I want to find out the string... (7 Replies)
Discussion started by: xshang
7 Replies

4. Shell Programming and Scripting

Search & Replace: Multiple Strings / Multiple Files

I have a list of files all over a file system e.g. /home/1/foo/bar.x /www/sites/moose/foo.txtI'm looking for strings in these files and want to replace each occurrence with a replacement string, e.g. if I find: '#@!^\&@ in any of the files I want to replace it with: 655#@11, etc. There... (2 Replies)
Discussion started by: spacegoose
2 Replies

5. UNIX for Dummies Questions & Answers

Inputting info

Hey guys! So I'm working on a program in linux terminal, using perl, to convert dna alignments to amino acid. It involves reading in one sequence and outputting another. I have it set so I can input a file but I can't input any sequences manually, anyone got any ideas about it? I have it set up... (0 Replies)
Discussion started by: PerlNutt
0 Replies

6. Programming

Inputting with SPACES...

I can't seem to successfully output characters with spaces. I inputted using getchar(). Any other ideas? Thank you in advance! printf ("Enter the Title : "); int i = 0; int c1; while (( c1!= '\n')&& (i <21)) { new_name->title = c1; i++; ... (0 Replies)
Discussion started by: Nephilim.F
0 Replies

7. UNIX for Dummies Questions & Answers

Grep multiple strings in multiple files using single command

Hi, I will use below command for grep single string ("osuser" is search string) ex: find . -type f | xarg grep -il osuser but i have one more string "v$session" here i want to grep in which file these two strings are present. any help is appreciated, Thanks in advance. Gagan (2 Replies)
Discussion started by: gagan4599
2 Replies

8. UNIX for Dummies Questions & Answers

grep command to find multiple strings in multiple lines in a file.

I want to search files (basically .cc files) in /xx folder and subfolders. Those files (*.cc files) must contain #include "header.h" AND x() function. I am writing it another way to make it clear, I wanna list of *.cc files that have 'header.h' & 'x()'. They must have two strings, header.h... (2 Replies)
Discussion started by: ritikaSharma
2 Replies

9. UNIX for Dummies Questions & Answers

best method of replacing multiple strings in multiple files - sed or awk? most simple preferred :)

Hi guys, say I have a few files in a directory (58 text files or somthing) each one contains mulitple strings that I wish to replace with other strings so in these 58 files I'm looking for say the following strings: JAM (replace with BUTTER) BREAD (replace with CRACKER) SCOOP (replace... (19 Replies)
Discussion started by: rich@ardz
19 Replies

10. Shell Programming and Scripting

Problem with inputting password

Hi all, In one of my script, somewhere I need to input password of a server when ssh password's prompt comes. I've tried with EOF but it's not taking. I don't want to disable password through ssh. I want the password should be passed with my script. Any suggestion? Thanks in advance! (2 Replies)
Discussion started by: naw_deepak
2 Replies

Featured Tech Videos