Need help using fprintf for cell array

I have a structure named 'shape' that contains three sub-structures ('circle', 'triangle', 'square') and need to print them out in a list. Here is my code:
%Create shape super-structure.
shape = struct('circle', [], 'triangle', [], 'square', []);
%Print names of created shapes.
fields = fieldnames(shape);
fprintf('You created these shapes:\n%s\n', fields{:});
I need the command window to show this... You created these shapes:
circle
triangle
square
...but instead, it prints "You created these shapes:" before every single shape. How should I go about fixing this?

 Respuesta aceptada

Ruger28
Ruger28 el 10 de Oct. de 2019
Editada: Ruger28 el 10 de Oct. de 2019
Give this a go:
shape = struct('circle', [], 'triangle', [], 'square', []);
%Print names of created shapes.
fields = fieldnames(shape);
% fprintf('You created these shapes:\n%s\n', fields{:});
fprintf('You created these shapes:\n');
fprintf('%s\n',fields{:})
You need to seperate the first line from the rest if you don't want repeats.

Más respuestas (0)

Categorías

Más información sobre Linear Algebra en Centro de ayuda y File Exchange.

Etiquetas

Preguntada:

el 10 de Oct. de 2019

Comentada:

el 10 de Oct. de 2019

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by