need to print a matrix with a string
3 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
Carly McKee
am 26 Okt. 2018
Kommentiert: madhan ravi
am 29 Okt. 2018
I have a structure composed of 3 students that have a letter for a last name, 3 quiz grades in a matrix, and a few more things. Im supposed to write a for loop to print just the last name and the quiz grades but that means printing a string and a matrix. This is what I tried.
for i=1:3
fprintf('%s %d\n',student(i).lastname,student(i).quiz)
my question is basically how do I print a string with a matrix?
2 Kommentare
Stephen23
am 29 Okt. 2018
Bearbeitet: Stephen23
am 29 Okt. 2018
This is MATLAB, so loops are totally superfluous:
>> S(1).name = 'anna';
>> S(1).quiz = 3;
>> S(2).name = 'bob';
>> S(2).quiz = 4;
>> S(3).name = 'cathy';
>> S(3).quiz = 2;
>> C = [{S.name};{S.quiz}];
>> fprintf('%10s %d\n',C{:})
anna 3
bob 4
cathy 2
Akzeptierte Antwort
madhan ravi
am 26 Okt. 2018
Bearbeitet: madhan ravi
am 26 Okt. 2018
or like this maybe?:
student(1).lastname='alex ';
student(1).quiz='3';
student(2).lastname='bob ';
student(2).quiz='4';
student(3).lastname='Alonso ';
student(3).quiz='2';
for i=1:3
string([student(i).lastname,student(i).quiz])
end
COMMAND WINDOW DISPLAYS:
>>
ans =
"alex 3"
ans =
"bob 4"
ans =
"Alonso 2"
>>
4 Kommentare
madhan ravi
am 29 Okt. 2018
was convenient while calling thats why? any better enhancement is welcomed @stephen
Weitere Antworten (1)
James Tursa
am 26 Okt. 2018
Assuming there are three grades in the quiz field, maybe this will work for you
fprintf('%s %d %d %d\n',student(i).lastname,student(i).quiz)
If not, then give us a short example of your structure and what you would like for output.
0 Kommentare
Siehe auch
Kategorien
Mehr zu Resizing and Reshaping Matrices finden Sie in Help Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!