printf("%c,%d,%s\n",c,i,s);什么意思
%c在C语言中代表字符型格式符。
%s在C语言中代表字符串型格式符。
%c和%s一般用在printf、sprintf等字符串格式化函数中,用于决定格式化参数的数据类型。如printf("%s", a)会将变量a作为字符串类型进行格式化。
printf()函数是格式化输出函数, 一般用于向标准输出设备按规定格式输出信息。
printf()函数的调用格式为: printf("", )。
格式输出,它是c语言中产生格式化输出的函数(在 stdio.h 中定义)。用于向终端(显示器、控制台等)输出字符。格式控制由要输出的文字和数据格式说明组成。要输出的文字除了可以使用字母、数字、空格和一些数字符号以外,还可以使用一些转义字符表示特殊的含义。
扩展资料:
C语言中所有格式化类型的定义:
1、%d/i
接受整数值并将它表示为有符号的十进制整数,i是老式写法
2、%o
无符号8进制整数(不输出前缀0)
3、%u
无符号10进制整数
4、%x/X
无符号16进制整数,x对应的是abcdef,X对应的是ABCDEF(不输出前缀0x)
5、%f(lf)
单精度浮点数和双精度浮点数用f(lf在C99开始加入标准,意思和f相同)
6、%e/E
科学计数法表示的数,此处"e"的大小写代表在输出时用的“e”的大小写
7、%g/G
有效位数,如:%.8g表示单精度浮点数保留8位有效数字。
8、%c
字符型。可以把输入的数字按照ASCII码相应转换为对应的字符
9、%s/S
字符串。输出字符串中的字符直至字符串中的空字符(字符串以'\0‘结尾,这个'\0'即空字符)
10、%p
以16进制形式输出指针
11、%n
到此字符之前为止,一共输出的字符个数,不输出文本
12、%%
不进行转换,输出字符‘%’(百分号)本身
13、%m
打印errno值对应的出错内容,(例:printf("%m
");)
参考资料来源:百度百科-printf
值得讲一下的是变量c。
int c,整型,4字节,以%c格式读入的是char,一个字符,比如‘a’ ,把字符a以整型存入内存是,保存了它的ascII码,即97。
%c表示输出一个字符;
%d表示输出带符号的十进制整型数;
%s表示输出一个字符串,知道遇到“\0”。
所以printf("%c,%d,%s
",c,i,s);的意思是c变量用字符形式输出;i变量用十进制整型数形式输出;s变量用字符串形式输出。
printf()函数是式样化输出函数, 一般用于向准则输出设备按规定式样输出消息。正在编写步骤时经常会用到此函数。printf()函数的挪用式样为: printf("<式样化字符串>",<参数表>);
其中式样化字符串包括两部分内容: 一部分是正常字符, 这些字符将按原样输出;另一部分是式样化规定字符, 以"%"开端, 后跟一个或几个规定字符, 用来确定输出内容式样。
参量表是需求输出的一系列参数, 其个数务必与式样化字符串所阐明的输出参数个数一样多, 各参数之间用英文逗号","分开, 且顺序逐一对应, 不然将会出现意想不到的错误。
扩展资料:
printf输出规定符:
%d 十进制有符号整数
%u 十进制无符号整数
%f 浮点数
%s 字符串
%c 单个字符
%p 指针的值
%e 指数形式的浮点数
%x, %X 无符号以十六进制表示的整数
%o 无符号以八进制表示的整数
%g 把输出的值按照%e或者%f类型中输出长度较小的方式输出
%p 输出地址符
%lu 32位无符号整数
%llu 64位无符号整数
参考资料:百度百科-printf
%c,%d,%s与后面的c,i,s对应的,%c是表示以字符格式输出c,%d表示以整数形式输出i,%s表示以字符串形式输出s,最后的\n是换行符
以char类型输出c,以int类型输出i,以char[]类型输出s,最后换行
c以单字符的形式输出
i以整数的形式输出
s以字符串的形式输出
这种问题看下书吧。。
frintf里输出max没问题?max是函数名吧!应该用c吧!对不对啊?能不能用...
max应该是在外面有定义的函数,在使用前它已经声明过了,另外这个程序的printf语句里面没有输出max,里面max只是作为字符串在“”中输出,“”中输出什么都是没有关系的,由于max的返回值为int,所以如果想要在print中输出max也是可以的,比如:printf("%d",max(a,b))
c语言能写出什么样的小程序?
11:sum=304;break;case 12:sum=334;break;defaultrintf(data error);break;} sum=sum+day; \/*再加上某天的天数*\/ if(year%400==0||(year%4==0year%100!=0))\/*判断是不是闰年*\/ leap=1;else leap=0;if(leap==1month>2)\/*如果是闰年且月份大于2,总天数应该加一天*\/ sum++;...
执行以下程序后,a,b的值分别为main(){inta,b,k=4,m=6,*p1=&k,*p2=&...
include <stdio.h> include <stdlib.h> void main(){ int a,b,k=4,m=6;int *p1=&k;\/\/\/p1指针指向k int *p2=&m;\/\/\/p2指针指向m a=p1==&m;\/\/\/如果 p1的地址等于m的地址 则a=1;否则 a=0; 这里 p1 跟m的地址不一样 所以a=0 b=(*p1)\/(*p2)+7;\/\/\/b等于 p1的...
matlab feedback
feedback是matlab里专门用来求线性时不变系统的前向传递函数的,不能用来做变量名,不能赋值 如果你不知道什么是线性时不变系统,那就不要用这个函数,以后学到了就知道了,是信号与系统理论的一部分知识
需c语言编程实例100例 发到 zhushi8886@163.com
defaultrintf("data error");break;}sum=sum+day; \/* 再加上某天的天数*\/if (year%400==0||(year%4==0&&year%100!=0))\/*判断是不是闰年*\/leap=1;else leap=0;if (leap==1&&mouth>2)\/*如果是闰年且月份大于2,总数天数应该加1*\/sum++;printf ("It is the %dth day.",sum);}【程序5】...
急!急!急!谁有09年计算机国二C语言上机100题
defaultrintf("data error");break;}sum=sum+day; \/* 再加上某天的天数*\/if (year%400==0||(year%4==0&&year%100!=0))\/*判断是不是闰年*\/leap=1;else leap=0;if (leap==1&&mouth>2)\/*如果是闰年且月份大于2,总数天数应该加1*\/sum++;printf ("It is the %dth day.",sum);}【程序5】...
茆缸胰胆: %c 指定输出格式时 字符型数据以字符输出 printf("%d","''") 结果为空格键
富宁县13052198862: C语言中printf("%c%d\n",c,c);表达什么样的意思? - ?
茆缸胰胆: "%"表示格式化输出,%c表示对应变量为"char"类型,%d表示变量对应"int"类型,后面的2个"c", 表示的就是对应格式化输出符的变量
富宁县13052198862: 在printf函数中,格式符“%c”对应的输出项可以是字符也可以是整数???对吗?? - ?
茆缸胰胆: 是啊 因为数据时二进制存储 所以只要不超过字符型的溢出范围 就能正确显示 否则截取低八位如int i=10;printf("%c",i) ;结果是10 若int i=256;printf("%c",i);结果是0
富宁县13052198862: printf("%c","abc"[2] - 035)什么意思 - ?
茆缸胰胆:printf("%c","abc"[2]-035) 逐步解释如下: %c 按字符格式输出, "abc"[2]-035意思是: "abc"为一个字符串常量数组 元素为 'a' 'b' 'c' '\0'; "abc"[2]那么就是"abc"中数组下标为2的元素,即'c' 'c'-15的值是'c'的ASCII码99 - 15 = 84; 84是'T'的ASCII码 所以输出结果为T
富宁县13052198862: printf("%c, %d\n%c, %d", c1, c1, c2, c2);是什么意思啊. - ?
茆缸胰胆: printf("按字符型输出时c1、c2的值是%c和%c",c1,c2); 答:%c输出的是字符,而97,98的ASCII码字符是a ,b,所以输出的也是这个 %d是以十进制整数输出的,所以输出的是97,98
富宁县13052198862: 8、语句printf(“%c,%d”,97,'b'); 的执行结果是__?
茆缸胰胆: "%c"是要输出一个字符,所以97被当做ASCII码值对待,97是'a'的ASCII值."%d"是要输出一个整数,所以'b'被当做整数看待,'b'的ASCII值是98.综上,语句printf(“%c,%d”,97,'b'); 的执行结果是'a',98
富宁县13052198862: scanf和printf中 %c 与 %s的区别 - ?
茆缸胰胆: scanf("%c",&c); 输入1个char,按它的ASCII值存放. printf("%c",c); 输出1个char,按它的ASCII值对应的字符输出char c; scanf("%s",&c); 输入1个字符串,默认以空白分隔,并自动加上一个字符串结束符"\0",如果你只声明c,而不是 c[2] 或更长,在某些情况下,也许会遇到麻烦 printf("%c",c); 输出1个char,按它的ASCII值对应的字符输出
富宁县13052198862: printf("\123\n"); printf("%c",123); 这两个语句分别什么意思啊 - ?
茆缸胰胆: printf("\123\n"); \123是用ASCII码表示字符,\123表示的是大写字母S \n是换行符 此语句执行时,输出S,并换行.printf("%c",123) 是输出ASCII码为123的字符,ASCII码为123对应的字符是左大括号{ 输出{
富宁县13052198862: c语言中printf("%c ",′B′+40);在执行后的输出结果是多少 - ?
茆缸胰胆: printf(“%c",′B′+40); 输出 j 解析:B+32是小写的b,然后再加8,即为j
富宁县13052198862: C语言中,请问printf("%c",'0'+'0'); 和printf("%d",0+0); 输 - ?
茆缸胰胆: printf("%c",'0'+'0')是`因为这里是ascii相加,0对应48,打印的是ascii为96的` printf("%d",0+0)就是0了,没什么好讲的.