MATLAB的输入与输出函数

2023-09-15 15:56:13

标题

  • 输入:input()
    • 1. 输入单个数值
    • 2. 输入字符串
    • 3. 输入以空格隔开的一行数值
    • 4. 输入以空格与换行符隔开的多行数值
  • 输出
    • 1. disp()
      • (1)输出单个数值
      • (2)输出一维数组
      • (3)输出矩阵
      • (4)输出字符串
    • 2. fprintf()
      • (1)输出格式化的单个数值
      • (2)输出格式化的一维数组
      • (3)输出格式化的矩阵
      • (4)输出格式化的字符串

由于 MATLAB不使用 stdin 和 stdout,而是使用command window进行交互。因此不需要使用 scanf 和 printf 等 C/C++ 函数来提示用户进行输入。但在某些情况下需要提示用户进行输入并打印相关结果时,可使用如下函数。

输入:input()

MATLAB中使用input()函数获取用户输入。

1. 输入单个数值

a = input('');                          %不含提示的单个数值输入
a = input('Please input a number:');    %含提示的单个数值输入

2. 输入字符串

a = input('', 's');                          %不含提示的字符串输入
a = input('Please input a string:', 's');    %含提示的字符串输入

3. 输入以空格隔开的一行数值

a = input('', 's');   %以字符串读入
a = str2num(a);       %将字符串转化为一维向量,方便后续处理

4. 输入以空格与换行符隔开的多行数值

例如输入以空格和换行符输入三维矩阵:

a = zeros(3,3);
for i =1:3A{i} = input('','s');           %使用胞元数组获取字符串a(i,:) = str2num(A{i});         %将字符串转化为一维数组
end

在不知道用户即将输入几行几列时,该方法不适用。等日后了解到好的方法再来补充。

输出

1. disp()

disp()函数表示显示变量的值,对于单个数值、字符串、数组、矩阵都按照其格式显示。

(1)输出单个数值

A = 5;
disp(A)

5

(2)输出一维数组

A = [5 10];
disp(A)

5 10

(3)输出矩阵

A=[1 2;3,4];
disp(A)

1 2
3 4

(4)输出字符串

A = 'Hello World ! ';
disp(A)

Hello World !

2. fprintf()

fprintf()函数为格式化输出函数,用法与C语言printf类似。

(1)输出格式化的单个数值

a = 3.1415926;
fprintf('PI is %.5f.\n', a);

pi is 3.14159.

(2)输出格式化的一维数组

对于一维数组,根据格式化字符逐个进行输出。

a = [1 3 5];
fprintf('%d\n',a);

1
3
5

(3)输出格式化的矩阵

对于矩阵,可以使用以下方式输出。

a = [1.02 2.21 3.58;4.12 5.85 6.58;7.96 8.73 9.86];
for i =1:9if mod(i,3) == 0fprintf('%.2f\n',a(i));else fprintf('%.2f ',a(i));endend
end

1.02 2.21 3.58
4.12 5.85 6.58
7.96 8.73 9.86

(4)输出格式化的字符串

对于字符串,使用%s格式化字符。

s = 'hello world!';
fprintf('%s\n',s)

hello world!

更多推荐

数学建模熵权法中信息熵与信息熵冗余度的理解

具体步骤:数学建模——熵权法-腾讯云开发者社区-腾讯云(tencent.com)灵感来源:信息熵越大,信息量到底是越大还是越小?-骚动的白米饭的回答-知乎https://www.zhihu.com/question/274997106/answer/1055696026信息熵在第二篇博文中有比较好的案例解读。我们在做A

Lua学习笔记:在Visual Studio中调试Lua源码和打断点

前言本篇在讲什么调试Lua源码本篇需要什么对Lua语法有简单认知依赖VisualStudio工具本篇的特色具有全流程的图文教学重实践,轻理论,快速上手提供全流程的源码内容★提高阅读体验★👉♠一级标题👈👉♥二级标题👈👉♣三级标题👈👉♦四级标题👈目录♠前言♠新建C++控制台应用♠下载Lua源码♠引入Lua源

ChatGPT追祖寻宗:GPT-2论文要点解读

论文地址:LanguageModelsareUnsupervisedMultitaskLearners上篇:GPT-1论文要点解读在上篇:GPT-1论文要点解读中我们介绍了GPT1论文中的相关要点内容,其实自GPT模型诞生以来,其核心模型架构基本没有太大的改变,都是一路坚持奉行着基于Transformer的单解码器结构

触摸芯片在小功率音箱中的应用

音箱的基本组成部分包括扬声器单元和放大器。扬声器单元是产生声音的核心部件,而放大器则负责放大电信号,使其能够驱动扬声器单元。当我们使用音箱播放音乐时,音频信号首先通过音源设备(如音乐播放器、电视、电脑等)发送到音箱。这个音频信号是以电信号的形式存在的,无法直接被我们听到。喇叭的音质完全取决于喇叭本身的好坏,而不是功率,

关于header in Cpp

ctype.h是一个headerinCpp,什么是header?在C++中,头文件(headerfile)是一种用于包含预定义函数、变量和声明的文件。头文件通常具有.h扩展名,并包含了用于在C++程序中使用的函数原型、常量定义、类声明等信息。头文件的主要目的是为了在不同的源代码文件之间共享代码和声明,以便在程序中能够正

uvm白皮书练习_ch2_ch221只有driver的验证平台之*2.2.1 最简单的验证平台

uvm白皮书练习ch221dut.sv这个DUT的功能非常简单,通过rxd接收数据,再通过txd发送出去。其中rx_dv是接收的数据有效指示,tx_en是发送的数据有效指示。moduledut(clk,rst_n,rxd,rx_dv,txd,tx_en);inputclk;inputrst_n;inputrxd;inp

nginx入门

文章目录nginx1.安装2.nginx常用命令及配置文件3.配置静态网页listenserver_namelocation4.HTTP反向代理设置代理请求headers5.负载均衡负载均衡策略1.轮循机制(round-robin)2.最小连接(least-connected)3.ip-hashnginx1.安装Cen

多平台兼容性:跑腿系统开发的移动端和Web端技术选项

随着移动设备和Web浏览器的广泛使用,跑腿系统的开发需要考虑多平台兼容性。本文将讨论一些在开发跑腿系统的移动端和Web端时可用的技术选项,并提供示例代码以帮助您入门。移动端技术选项:1.ReactNativeReactNative是一个流行的移动应用开发框架,可以使用JavaScript和React构建原生级别的移动应

CFCA企业版通配符SSL证书

CFCA是中国CFCA企业版通配符SSL证书金融认证中心的缩写,即ChinaFinancialCertificationAuthority。它是一家经过中国人民银行和国家信息安全机构批准成立的国家级权威安全认证机构,也是国际CA浏览器联盟组织(CA/BrowserForum)的成员,遵循全球统一鉴证标准。CFCA证书是

数据结构——红黑树

红黑树(Red-BlackTree)是一种自平衡的二叉查找树,它确保在插入和删除等基本操作后,树保持平衡,从而提供了快速的查找、插入和删除操作。红黑树之所以称为"红黑树",是因为每个节点都具有一个颜色属性,可以是红色或黑色,它们必须满足一些规则以保持树的平衡性。性质:1.树中的任何一个结点都带有颜色,每个结点的颜色要么

leetcode1537. 最大得分(动态规划-java)

最大得分题目描述动态规划代码演示题目描述难度-困难leetcode1537.最大得分你有两个有序且数组内元素互不相同的数组nums1和nums2。一条合法路径定义如下:选择数组nums1或者nums2开始遍历(从下标0处开始)。从左到右遍历当前数组。如果你遇到了nums1和nums2中都存在的值,那么你可以切换路径到另

热文推荐