c语言控制符中%i是什么控制符

%5d这类格式符时,怎么把5变成一个变量使用,比如i=5_c语言吧_百度贴吧
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&签到排名:今日本吧第个签到,本吧因你更精彩,明天继续来努力!
本吧签到人数:0成为超级会员,使用一键签到本月漏签0次!成为超级会员,赠送8张补签卡连续签到:天&&累计签到:天超级会员单次开通12个月以上,赠送连续签到卡3张
关注:371,128贴子:
%5d这类格式符时,怎么把5变成一个变量使用,比如i=5收藏
问题:%5d这类格式符时,怎么把5变成一个变量使用,比如i=5;
%id 却又肯定不行,我该如何表示呢,下面这题是《C Primer Plus》中第四章的课后练习题,恰恰网上的答案中没有这题,我自己用for循环输出空格,但总觉得不对,求各位大大帮忙解答,谢谢!题目如下: 编写一个程序,要求输入名字,并执行以下操作:a.把名字引在双引号中打印出来。b.在宽度为20个字符的字段内打印名字,并且整个字段引在引号内。c.在宽度为20个字符的字段的左端打印名字,并且整个字段引在引号内。d.在比名字宽3个字符的字段内打印它。代码如下:#include &stdio.h&#include &stdlib.h&int main(int argc, char *argv[]){
char name[40];
printf("请输入你的名字:");
scanf("%s",&name);
j=strlen(name);
m=(j+3)/2;
printf("%d",j);
printf("\n\"%s\"",&name); //忽略
printf("\n\"%20s\"",&name); //忽略
printf("\n\"%-20s\"",&name);//忽略
printf("\n\"");
//从这里开始,先打印了个“
for(g=1;g&=m;g++)
//用FOR循环打印空格
printf(" ");
printf("%s\"",&name);
//补上名字和”
system("PAUSE");
return 0;}
switch(i){case 1:printf("%1d", var);case 2:printf("%2d", var);...default:}
我也看过这本书,我记得没错的话是这样的printf("%*d",i,n);
sprintf(format, "%c%dd", '%', i);printf(format, a);
登录百度帐号推荐应用
为兴趣而生,贴吧更懂你。或c语言中%d,%f,%u这些东西都是什么意思啊,还有浮点型数据是什么意思啊,谁详细说一下_百度知道
c语言中%d,%f,%u这些东西都是什么意思啊,还有浮点型数据是什么意思啊,谁详细说一下
提问者采纳
二楼已经说明白%d 十进制%f浮点型,%u符号整型用于输入输显示保存形式例int i声明i十进制float i 声明浮点数 unsigned i声明符号整形由于C语言底层都二进制形式表示说C语言编译变汇编语言形式让机器运行所习计算机始都讲述二进制先机器(计算机)都二进制形式表现例十进制3进入计算机二级制形式保存即11(二进制)所论八进制十进制或十六进制其结都显示东西同已十进制11保存1011二进制数16进制B表示<img class="word-replace" src="/api/getdecpic?picenc=0ad进制13表示输入结转换二进制显示面说明数据都二进制保存形式声明其实变量余留少位二进制给变量例般int二进制16位十进制65536(负各占般)变量数值超<img class="word-replace" src="/api/getdecpic?picenc=0af536溢float32二进制数其至少6效值(数)float浮点数数3.33数%d,%f,%u提些控制符号般用于输输入printfscanf函数用于给程序说明数据形式显示%u%d显示结%f浮点显示用于显示3.33数输入制定形式数据保存面数据留少位二进制
其他类似问题
为您推荐:
其他3条回答
%d,%f,%u 叫做格式控制符控制输入输格式别代表整型、浮点型、符号整型浮点数浮点类型存储数据(存储形式同)例100整型存100浮点型存1.0*10二
都是数据类型
浮点型数据
其实就是有小数的
一般是int a=1 printf(&%d&,&a);
因为 a 是整型
要在屏幕显示 a的值就用 %d 若 a是 浮点型(就是有小数),,
f就代表float %u
表示 无符号类型的数,,
就表示 取一个字符
取一串字符
浮点型的相关知识
等待您来回答
下载知道APP
随时随地咨询
出门在外也不愁C语言复习题_图文_百度文库
两大类热门资源免费畅读
续费一年阅读会员,立省24元!
评价文档:
C语言复习题
上传于||文档简介
&&C&#8203;语&#8203;言&#8203;复&#8203;习&#8203;资&#8203;料
大小:188.50KB
登录百度文库,专享文档复制特权,财富值每天免费拿!
你可能喜欢C语言中什么时候该用什么样的控制符._百度知道
C语言中什么时候该用什么样的控制符.
scanf(&%f&,&i);何需要用%f
提问者采纳
ifloat控制符与变量类型应.C提供IO函数实现内存外部设备进行数据交互功能库形式存放系统&stdio.h& C语言文本组部scanf(格式控制址列表) 必须保证两者相应输入数据空格车tab 键或遇非输入则认该数据结束格式控制字符串包含格式说明符外字符输入数据应位置应输入与些字符相同字符 赋值符条件运算优先级都低于提取符printf(格式控制输列表)%d 按照整型数据实际度输%md m制定输字段宽度 输入位数于m 则左端补空格若于m 则按照位数输%ld 输整型数据%o 八进制形式输整数%x 十六进制形式输整数%f 用数形式输十数:指定字段宽度由系统自指定整数部全部输并输六位数%m.nf 制定输数据共占m列其n位数数值度于m 左端补空格%-m.nf 同数值右端空格%e %E 指数形式输实数 指定输数据所占宽度数字部数位数%m.ne%-m.ne%g 用输使用根据数值自选f格式或e格式并且输意义0.%u格式符用输unsigned型数据%c格式符用输字符%s格式符用输字符串%s 加入数字于实际度按实际输于实际度整数左侧补空格 负数右侧补空格putchar(c) 向终端输字符参数使整形或字符型getchar() 函数返值输入设备字符
意思就是i的变量类型是float,所以控制符必须也与float对应吗.?
提问者评价
谢谢您的帮助!
其他类似问题
为您推荐:
c语言的相关知识
其他2条回答
表示输浮点型数据%d整型%s字符串
%f指浮点型数据类型%d指整形。。。
等待您来回答
下载知道APP
随时随地咨询
出门在外也不愁trackbacks-0
C语言转义字符和格式控制符参考
转义字符参考:
\a:蜂鸣,响铃
\b:回退:向后退一格
\n:换行,光标到下行行首
\r:回车,光标到本行行首
\t:水平制表
\v:垂直制表
\ddd:三位八进制
\xhh:二位十六进制
\0:空字符(NULL),什么都不做
1,\v垂直制表和\f换页符对屏幕没有任何影响,但会影响打印机执行响应操作。
2,\n其实应该叫回车换行。换行只是换一行,不改变光标的横坐标;回车只是回到行首,不改变光标的纵坐标。
3,\t 光标向前移动四格或八格,可以在编译器里设置
4,\' 在字符里(即单引号里)使用。在字符串里(即双引号里)不需要,只要用 ' 即可。
5,\? 其实不必要。只要用 ? 就可以了(在windows VC6 和tc2 中验证)。&
格式控制符参考:
格式输出字符:printf
使用:向终端输出若干个类型任意的数据。
形式:printf (格式控制符,输出列表)
格式控制符:%  格式说明引导符。
      -  指定左对齐输出。
      0  指定空位填零。
      m.n& 指定输出域宽度及精度。
      l.h& 输出长度的修正。
     格式字符   指定输出的数据类型。
格式字符:指定输出项的数据类型和输出格式。
     d  有符号十进制整数。
     o  无符号八进制数。
     x  无符号十六进制数。(小写的x格式中用小写字母a,b,c,d,e,f来表示10到15之间的数,大写的X则用大写的ABCDEF来表示10到15之间的数)
     u  不带符号的十进制整数。
基本整型:两个字节,十六个bit(位)
11 11 11 11 11 11 11 11   等于 65535.
11 11 11 11 11 11 11 10&&&& 等于 -2.
负数的第一位(符号位)为1。负数的补码怎么得到:原码取反加一。2的二进制数为:00 00 00 00 00 00 00 10,取反就等于11 11 11 11 11 11 11 01,然后加1,二进制数逢二进一,所以就得出-2 的二进制代码。
有符号的整型数可以用 %d 输出。
无符号的整型数可以用 %u 输出。
电脑里存的数字都是二进制数,最高位是符号位还是数据位,可以由输出格式符来控制。
二进制数转换八进制数:三个 1 对应一个 7 。
二进制数錾十六进制数:四位二进制对应一位十六进制,四个1 对应一个 f。
格式字符:c&   输出一个字符。
     s   输出一个字符串。
     e   以指数形式输出实型数。
     f&&&& 以小数形式输出实型数。
     g   自动决定输出格式为e和f中较短的一种,不打印无效的零。
     %   输出%。
注意:对于单精度数,使用 %f 格式符输出时,仅前7位是有效数字,小数6位。
   对于双精度数,使用 %lf 格式符输出时,前16位是有效数字,小数6位。
长度修正符
  l:对整型指定长整型long
      例:%ld , %lx , %lo
    对实型指定双精度double
&&&&&&&&&&
&&& h:只用于整型的格式字符修正为short
&&&&&&&&&&
例:%hd , %hx , %ho , %hu
对64位整数的输入输出,在POJ上的C++环境下(即VC++),64位整数是:
输入输出格式为&%I64d&.
在G++环境下, 64位整数是
输入输出格式为&%lld&.
域宽及精度的描述
  M:域宽,即对应的输出项在输出设备上所占字符数
      若:实际数据宽度&M,按实际数据宽度输出。
        实际数据宽度&M,左边补空。
  N:精度,说明输出的实型数的小数位数。
几点说明:
    编译程序只是检查printf 函数的调用形式,不分析格式控制字符串,如果格式字符与输出项的类型不匹配,不进行类型转换。(输出的数为随机)
    格式字符要用小写字母。
    格式控制字符串中可以包含转义字符。
    格式控制字符串中的普通字符则原样输出。
    输出项的参数除了常数、变量外还可以是表达式、函数调用。
%g,%f和%e这三个格式用于打印浮点值。
&&&&&&&&&&&&&&&&& %g格式用于打印那些不需要按列对齐的浮点数特别有用。其作用有二:
&& &&&&&&&&&&&&&&&一,去掉该数尾多余的零(没有达到六位的数)
&&&&&&&&&&&&&&&&& 二,保留六位有效数字(多余六位的)
&&&&&&&&&&&&&&&&& %e格式用于打印浮点数时,一律显示地使用指数形式:例如:输出圆周率时是:3.
&&&&&&&&&&&&&&&& 两者的区别:
&&&&&&&&&&&&&&&& %g格式打印出的数是总共6位有效数字
&&&&&&&&&&&&&&&& %e格式打印出小数点后的6位有效数字
&&&&&&&&&&&&&&&& %f禁止使用指数形式来表示浮点数。因此圆周率输出为:3.141593
&&&&&&&&&&&&&&& (但注意它的精度要求:也是小数点后6位有效数字)
&&&&&&&&&&&&&&& (8)%%格式用于打印一个%字符。
&&&&&&&&&&&&&& (9)%E和%G只是在输出时用大写字母(E)代替了小写字母(e)
&&&&&&&&&&&&&&&&& 输出正负号的技巧,例如:
&&&&&&&&&&&&&&& printf("%+d %+d
%+d\n",-5,0,5);
&&&&&&&&&&&&&&& 只要在中间加个&+&号就行。作用是输出符号位(即,数的正负号)
&&&&&&&&&&&&&&& 如果不希望正数的前面出现&+&号,可用下面的方法
&&&&&&&&&&&&&&& 只要在中间加个&
&号(即:空格)就行。例如:
&&&&&&&&&&&&&&& 作用:如果一个数是非负数,就在它的前面插入一个空格。
&&&&&&&&&&&&&&&
&&&&&&&&&&&&&&& for(i=-3;i&=3;i++)
&&&&&&&&&&&&&&&&&&&&&&& printf("%
d\n",i); //注意%和d之间有一个空格
&&&&&&&&&&&&&&& sscanf()的使用技巧:
&&&&&&&&&&&&&&& 分解字符串,很多功能都需要正则表达式的知识,所以就介绍一下最简单的几种用sscanf来分解字符串 的用法。
&&&&&&&&&&&&&&& 1.
&&&&&&&&&&&&&&& char
str[100],str1[100],str2[100];
&&&&&&&&&&&&&&& gets(str);
&&&&&&&&&&&&&&& sscanf(str,&%s%s&,str1,str2);
&&&&&&&&&&&&&&& 将读入的一整行字符串按空格,制表符或回车符分割成两个字符串。
&&&&&&&&&&&&&&& 2
&&&&&&&&&&&&&&& 取指定长度的字符串。如在下例中,取最大长度为4字节的字符串。
  &&&&&&& sscanf("123456 ",
"%4s", str);
阅读(...) 评论() &}

我要回帖

更多关于 c语言输出格式控制符 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信