C语言字符串数据输出%m.ns什么意思?求给一个完整程序讲解下、谢谢了!

如题所述

%m.ns:输出占m列,但只取字符串中左端n个字符。这n个字符输出在m列的右侧,左补空格。

%s:例如:printf("%s", "CHINA")输出"CHINA"字符串(不包括双引号)。

%ms:输出的字符串占m列,如字符串本身长度大于m,则突破获m的限制,将字符串全部输出。若串长小于m,则左补空格。

%-ms:如果串长小于m,则在m列范围内,字符串向左靠,右补空格。

%-m.ns:其中m、n含义同上,n个字符输出在m列范围的左侧,右补空格。如果n>m,则自动取n值,即保证n个字符正常输出。

扩展资料:

在C语言中,有两个函数可以让用户从键盘上输入字符串,它们分别是:

scanf():通过格式控制符%s输入字符串。除了字符串,scanf() 还能输入其他类型的数据。

gets():直接输入字符串,并且只能输入字符串。

但是,scanf() 和 gets() 是有区别的:

scanf() 读取字符串时以空格为分隔,遇到空格就认为当前字符串结束了,所以无法读取含有空格的字符串。

gets() 认为空格也是字符串的一部分,只有遇到回车键时才认为字符串输入结束,所以,不管输入了多少个空格,只要不按下回车键,对 gets() 来说就是一个完整的字符串。换句话说,gets() 用来读取一整行字符串。

温馨提示:内容为网友见解,仅供参考
第1个回答  推荐于2017-12-16

 

 

从上面的几个结果,你可以看出来:

%m.ns:

m是整个输出的个数,比如上面的10(包括空格的输出);

n是显示的个数;如果n大于m,按n的个数输出;n小于m,则前面输出空格(你是看不见空格的),后面输出字符,字符+空格的个数=m的值;

s是字符的输出格式,整形的为d。即%m.nd

本回答被提问者采纳
第2个回答  2013-04-12
这是一个格式字符!%m.n s是指输出的数据占m列,但只取其中左端n个字符。这n个字符输出在m列的右侧,左端补 空格。

C语言字符串数据输出%m.ns什么意思?求给一个完整程序讲解下、谢谢...
%m.ns: m是整个输出的个数,比如上面的10(包括空格的输出); n是显示的个数;如果n大于m,按n的个数输出;n小于m,则前面输出空格(你是看不见空格的),后面输出字符,字符+空格的个数=m的值; s是字符的输出格式,整形的为d。即%m.nd 本回答由提问者推荐 举报| 答案纠错 | 评论(2) 39 3 39495978411035 ...

...%m.ns什么意思?求给一个完整程序讲解下、谢谢了!
m.ns:输出占m列,但只取字符串中左端n个字符。这n个字符输出在m列的右侧,左补空格。s:例如:printf("%s", "CHINA")输出"CHINA"字符串(不包括双引号)。ms:输出的字符串占m列,如字符串本身长度大于m,则突破获m的限制,将字符串全部输出。若串长小于m,则左补空格。-ms:如果串长小于m...

来看一下C语言中这个float的问题
m.ns 输出占m列,但只取字符串的左端n个字符。这n个字符在m的右侧,左边补空格 -m.ns 其中m,n含义同上,n个字符输出在m列的左侧,右端补空格。如果n>m,则m自动取n值,即保证n个字符正常输出 f 不指定字符宽度,由系统自动指定,使整数部分全部输出,并输出6位小数。应当注意输出的数字并非...

6道C语言基础题,麻烦各位朋友帮帮忙,仅有的30分送上
3、%m.ns 输出占m个字符,但只取字符串中左端n个字符。这n个字符输出在m列的右侧,左补空格,所以结果为:COMPUTER, (空格)COM 4、y=(x%2)\/10;,x跟y都是浮点型的数,而(x%2)\/10得到的是个正新的,如果是这样就对了,(x%2。0)\/10.0 5、c=x++| |y++;相当于c=(x++)||...

请哪位高人帮忙列举标准C语言中输出函数printf中的格式化字符串的二部...
m.ns:输出占m列,但只取字符串中左端n个字符。这n个字符输出在m列的右侧,左补空格。-m.ns:其中m、n含义同上,n个字符输出在m列范围的左侧,右补空格。如果n>m,则自动取n值,即保证n个字符正常输出。⑦f格式:用来输出实数(包括单、双精度),以小数形式输出。有以下几种用法:f:不指定...

c语言格式字符详细说明
m.ns:输出占m列,但只取字符串中左端n个字符。这n个字符输出在m列的右侧,左补空格。-m.ns:其中m、n含义同上,n个字符输出在m列范围的左侧,右补空格。如果n>m,则自动取n值,即保证n个字符正常输出。⑦ f格式:用来输出实数(包括单、双精度),以小数形式输出。有以下几种用法:f:不...

在C语言中怎么输出 数组 对齐
对于float型,可用%m.nf,输出数据共占m列,n位小数,如果数据长度小于m那么左边补空格 -m.nf,为左靠齐,右补空格 对于字符串,%ms,输出的字符串占m列,字符串长度小于m,左边补空格,如果超出则全部输出.-ms,右补空格 m.ns,输出占m列,但只取字符串左端n个字符。这n个字符输出在m列的右边,...

c数值变量中 小数点两边是不是一定要是有数的?
(1)%s ,原样输出一字符串;(2)%ms,按m指定的宽度输出字符串,若实际字符串的长度大于m,则按实际字符串的长度输出;若字符串的长度小于m,则右端对齐左端补空格;(3)%m.ns输出m列,但只取左端n个字符。这n个字符输出在m列的右侧即右对齐,左端补空格。(4)%-m.ns同上,只是左对齐,右...

%s在c语言中的用法
%m.ns。输出占m列,但只取字符串中的左端n个字符,这n个字符输入输出在m列的右则,左则补空格。C语言是一门面向过程、抽象化的通用程序设计语言,广泛应用于底层开发。C语言能以简易的方式编译、处理低级存储器。C语言中文网是中国领先的C语言程序设计专业网站,提供C语言入门经典教程、C语言编译器、...

c语言%m.nf若m小于n怎么办?
m,n相互之间的大小没有关系。m是限定的小数点之前的位数,如果不足m,那么在左边用空格补齐到m个,如果超过m那么按照原样输出,ns是保留的小数点后的位数,如果不够n位,那么用0补够n位,否则截断到n位(四舍五入)

相似回答