how to print the data that we collect using structure and loop
    9 次查看(过去 30 天)
  
       显示 更早的评论
    
function details =  my_details()
x=input('Enter number to details needed to be entered : '); 
for m=1:x
    name=input('name ','s');
    age=input('age ');
    contact_number=input('contact number ');
    details=struct('name',name,'age',age,'contact',contact_number);   
end
end
0 个评论
回答(2 个)
  Yongjian Feng
    
 2021-7-1
        Hello Prateek,
A simple way to print out the struct. Just get rid of the ';' at the end of the line. 
function details =  my_details()
x=input('Enter number to details needed to be entered : '); 
for m=1:x
    name=input('name ','s');
    age=input('age ');
    contact_number=input('contact number ');
    % remove ';' at the end, command line window will print this
    details=struct('name',name,'age',age,'contact',contact_number)
end
end
Thanks,
Yongjian
2 个评论
  Yongjian Feng
    
 2021-7-1
				Then you need to store the data first into an array of structs.
Once you get all the inputs, iterate the array of structs, and do the same thing here (a line without ';').
  Mili Goyal
 2021-7-1
        
      编辑:Mili Goyal
 2021-7-1
  
      I think in the above code, details is storing the last struct. To store all the structs, we can make details as an array of structs and finally print that. The following is the modified code for the above which stores the structs in an array and finally prints them:
CODE
--------------------------------------------------------------------------------------------------------------------------------------------
function details =  my_details()
    details = [];
    x=input('Enter number to details needed to be entered : '); 
    for m=1:x
        name=input('name ','s');
        age=input('age ');
        contact_number=input('contact number ');
        details= [details struct('name',name,'age',age,'contact',contact_number)];   
    end
    for i = 1:length(details)       % print the details
        disp(['The details of entry number ' int2str(i)]);
        disp(['name :' details(i).name]);
        disp(['age :' int2str(details(i).age)]);
        disp(['contact :' int2str(details(i).contact)]);
    end
end
-------------------------------------------------------------------------------------------------------------------------
Hope this helps!
0 个评论
另请参阅
类别
				在 Help Center 和 File Exchange 中查找有关 Matrices and Arrays 的更多信息
			
	Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!