基本输入输出函数格式输出函数printf格式

合集下载

格式化输入、输出函数

格式化输入、输出函数

格式化输入/输出函数格式输出函数(printf)格式字符表格式字符说明d或i 以十进制形式输出带符号整数(正数不输出符号)o 以八进制形式输出无符号整数(不输出前缀0)x,X 以十六进制形式输出无符号整数(不输出前缀0x),对于x用abcdef输出;对于X用ABCDEF输出u 以十进制形式输出无符号整数f 以小数形式输出单、双精度实数,隐含输出6位小数e,E 以指数形式输出单、双精度实数,数字部分小数位数为6位小数,指数部分占5位,用“E”时,指数以大写表示g,G 以%f或%e中较短的输出宽度输出单、双精度实数,不输出无意义的0,用“G”时,则指数以大写表示c 输出单个字符s 输出字符串p 输出标量的内存地址未指定宽度和指定输出宽度时的输出结果输出语句输出结果printf(“%3d\n”,4321); 4321(按实际位数输出)printf(“%f\n”,123.54); 123.540000(按实际需要宽度输出)printf(“%12f\n”,123.54); 凵凵123.540000(输出右对齐,左边填空格)printf(“%e\n”,123.54); 1.235400e+002(按实际需要宽度输出)printf(“%14e\n”,1213.54); 凵1.235400e+002(输出右对齐,左边填空格)printf(“%g\n”,123.5); 123.5(%f格式比采用%e格式输出宽度小)printf(“%8g\n”,123.5); 凵凵凵123.5(输出右对齐,左边填空格)指定精度时的输出结果输出语句输出结果printf(“%8.3f\n”,123.55); 凵123.550printf(“%8.1f\n”,123.55); 凵凵凵123.6printf(“%8.0f\n”,123.55); 凵凵凵凵凵124printf(“%g\n”,123.56789); 123.568printf(“%.7g\n”,123.56789); 123.5679printf(“%.5s\n”,”abcdefg”); abcde注:在VC中float类型有7位有效数字,double类型有16位有效数字标志及其意义标志意义-输出结果左对齐,右边填空格;缺省则输出结果右对齐,左边填空格+输出符号(正号或负号)空格输出值为正时冠以空格,为负时冠以负号﹟对c,s,d,u类无影响;对o类,在输出时加前缀0,对x类,在输出时加前缀0x 0 对数值格式,在指定宽度的同时,输出数据左边空格处填以数字0标志的用法输出语句输出结果printf(“%6d\n”,111); 凵凵凵111printf(“%-6d\n”,111); 111凵凵凵printf(“%+d\n”,111); +111printf(“% d\n”,111);/*%和d之间有一个空格*/ 凵111printf(“% d\n”,-111);/*%和d之间有一个空格*/ -111printf(“%#o\n”,10); 012printf(“%#x\n”,16); 0x10printf(“%06.2f\n”,1.6); 001.60格式输入函数(scanf)Scanf格式字符格式字符说明d,i 输入有符号的十进制整数o 输入无符号的八进制整数x,X 输入无符号的十六进制整数u 输入无符号的十进制整数f,e 输入实型数(用小数形式或指数形式)c 输入单个字符s 输入字符串,结果存入字符数组中。

C语言中printf函数输出格式

C语言中printf函数输出格式

C语⾔中printf函数输出格式printf()函数是格式化输出函数, ⼀般⽤于向标准输出设备(例如屏幕)按规定格式输出信息。

⼀、Printf输出格式1、输出⼗进制整数int main(){//输出⼗进制整数%dprintf("输出的数字是:%d",666);return 0;}//结果是6662、输出⼋进制整数int main(){//输出⼋进制整数%oprintf("输出的数字是:%o",66);return 0;}//结果是1023、输出⼗六进制整数int main(){//输出⼗六进制整数%xprintf("输出的数字是:%x",66);return 0;}//结果是424、输出6位以上⼩数形式的实数(包括6位)int main(){//输出⼩数%fprintf("输出的数字是:%f",66.666);return 0;}//结果是66.6660005、输出5位以内⼩数形式的实数(包括5位)int main(){//输出⼩数%fprintf("输出的数字是:%f",66.666);return 0;}//结果是66.6666、输出指数形式的实数int main(){//输出指数%eprintf("输出的数字是:%e",6.6);return 0;}//结果是6.600000e+007、输出单个字符int main(){//输出单个字符%cprintf("输出的数字是:%c 或 %c",'a',97);return 0;}//结果是 a 或 a8、输出多个字符int main(){//输出多个字符%sprintf("输出的数字是:%s","owowo!");return 0;}//结果是 owowo!9、输出⾃定义位数int main(){//输出⾃定义位数,⽤“.数字”开头printf("输出的数字是:%.3d\n", 6);printf("输出的数字是:%.3f\n", 6.66666666);printf("输出的数字是:%.3f\n", 6.6);printf("输出的数字是:%.3s\n", "hahhahhahha");return 0;}//输出的数字是:006//输出的数字是:6.667//输出的数字是:6.600//输出的数字是:hah最后。

5-输出函数printf,putchar,输入函数scanf,getchar

5-输出函数printf,putchar,输入函数scanf,getchar
• 若数据位数大于m,则按实际位数输出。
例如:
printf(“%-5d,%-5d,%-2d”,123,456,1234);
输出结果:
123_ _, 456_ _,1234
D、%ld:用于输出long型数据。尤其范围超过 int型范围的数据。 E、%mld:指定long型数据的输出宽度,左补 空格。 F、%-mld:指定long型数据的输出宽度,右补 空格。
(1)该函数只能输出一个字符。
(2)函数的使用形式:putchar(表达式);
(3)功能:在屏幕上输出表达式对应的字符。
(4)表达式的类型:

字符变量或字符常量: putchar('$');/*输出字符常量*/ char ch;ch=‘B' ; putchar(ch); 整型变量或整型常量: 0~255之间: int i=65;putchar(i);
输入缓冲区 1
2 3 a 2 3 2 3 .
5 6 \n
程序从输入缓冲区中读取数据: a=123 b=a c=23.56

字符输入函数:getchar()
(1)功能:接收从键盘输入的一个字符
(2)函数的返回值:为输入字符的ASCII码
(3)使用形式:
A、char/int变量=getchar(); B、putchar(getchar());/*作为函数的参数*/ C、getchar();/*接收数据,但不做任何处理等价
(7)f格式符:
A、%f:以小数形式输出一个实数。系统在输 出时规定:

整数位:全部输出 小数点:占屏幕1列 小数位:为6位
例如:
double a=12345678.89;
float b=12345678.89;

C语言输入输出函数printf与scanf的用法格式

C语言输入输出函数printf与scanf的用法格式

C语言输入输出函数printf与scanf的用法格式C语言中的输入输出函数printf和scanf是我们在编程中经常用到的两个函数。

它们分别用于向屏幕输出数据和从键盘输入数据。

1.printf函数printf函数是C语言中用于输出的标准函数,其基本格式如下:printf("format string", argument);其中,format string是格式化字符串,它可以是任何你希望输出的文本或特定格式的文本,argument是你要输出的参数,可以是任何数据类型,例如int, float, double等。

例如,如果你想输出一个整数,你可以这样写:int x = 10;printf("The value of x is: %d", x);在这个例子中,%d是一个格式说明符,它表示一个整数。

在输出的时候,%d 会被x的值替换。

printf函数还支持许多其他类型的格式说明符,例如:•%f:浮点数•%c:字符•%s:字符串•%p:指针的值•%x:十六进制数等等。

你可以根据需要选择适合的类型。

2.scanf函数scanf函数是C语言中用于输入的标准函数,其基本格式如下:scanf("format string", argument);与printf类似,format string是格式化字符串,argument是你要输入的参数。

但是,scanf的格式说明符与printf略有不同。

例如,如果你想输入一个整数,你可以这样写:int x;scanf("%d", &x);在这个例子中,%d是一个格式说明符,它表示一个整数。

在输入的时候,你需要在%d前面输入一个数字,然后scanf会把这个数字存储到&x所指向的内存地址中。

注意,这里的&是取地址运算符,表示我们想要的是变量x的内存地址。

scanf函数还支持许多其他类型的格式说明符,例如:•%f:浮点数•%c:字符•%s:字符串(到第一个空格为止)•%p:指针的值•%x:十六进制数(必须以0x或0X开头)等等。

C语言输入输出函数格式详解

C语言输入输出函数格式详解

1、输入和输出:输入:输入也叫读,数据由内核流向用户程序输出:输出也称写、打印,数据由用户程序流向内核以下介绍一些输入输出函数,尽管都是一些有缺陷的函数,但比较适合初学者使用2、p rintf用法(其缺陷在于带缓存)解释:第一幅图没有加'\n',不会刷新缓存区,则不会打印出来;第二幅图是因为主函数结束时刷新了缓存区,但由于没有换行符,所以没有换行便显示了后面的内容;第三幅图时正常打印。

变量定义的是什么类型,在printf打印时就需要选择什么格式符,否则会造成数据的精度丢失(隐式强转),甚至会出现错误(1)格式输出函数的一般形式函数原型:int prin tf(char * format[,argume nt, …]);函数功能:按规定格式向输出设备(一般为显示器)输出数据,并返回实际输出的字符数,若出错,贝U返回负数。

A、它使用的一般形式为:printf(" 格式控制字符串",输出项列表);B、语句中"输出项列表"列出要输出的表达式(如常量、变量、运算符表达式、函数返回值等),它可以是0个、一个或多个,每个输出项之间用逗号(,)分隔; 输出的数据可以是整数、实数、字符和字符串。

C、"格式控制字符串"必须用英文的双引号括起来,它的作用是控制输出项的格式和输出一些提示信息,例如:int i=97; printf("i=%d,%c\n",i,i); 输出结果为:i=97,a语句printf("i=%d,%c\n",i,i); 中的两个输出项都是变量i ,但却以不同的格式输出,一个输出整型数97,另一个输出的却是字符a,其格式分别由"%d" 与"%c"来控制。

语句printf("i=%d,%c\n",i,i); 的格式控制字符串中"i=" 是普通字符, 他将照原样输出;"%d"与"%c"是格式控制符;"\n"是转义字符,它的作用是换行。

printf函数

printf函数
char c=‘a’; printf(“c=%c,c);
例:字符数据的输出 #include<stdio.h> main() { char c='a'; int i=97; printf("%c,%d\n",c,c); printf("%c,%d\n",i,i); }
作业:
1、写出程序段的结果 (1) main()
注:c1和c2 被定义为char ,以%d的形式输出 时,得到的是ASCII码。
(3)f格式符。用来输出实数(包括单、双精度),以小数形式输出。有以下 几种用法:
%f:不指定字段宽度,由系统自动指定,使整数部分全部输出,并输出6位小 数。
说明:
a.单精度实数的有效位数一般为7位。因此,在输出的数字中并非全部数字 都是有效数字。
作业1: 分析下面的程序: #include<stdio.h> main() {
char c1,c2; c1=97; c2=98; printf("c1=%c,c2=%c\n",c1,c2); printf("c1=%d,c2=%d\n",c1,c2); }
作业2: #include<stdio.h> int main(void){
%md:m为指定的输出字段的宽度。如果数据的位数小于m,则左端补以空格,
若大于m,则按实际位数输出。
例1: printf(“%4d,%4d”,a,b);
若a=123,b=12345,则输出结果为:
123,12345
例2:printf(“%5d\n%4d\n”,12,-345);则输出结果为:
12
(12前面有3个空格)

C语言中printf格式

C语言中printf格式

2009-05-03 10:55Turbo C2.0 标准库提供了两个控制台格式化输入、输出函数printf( ) 和scanf(), 这两个函数可以在标准输入输出设备上以各种不同的格式读写数据。

printf()函数用来向标准输出设备(屏幕)写数据; scanf() 函数用来从标准输入设备(键盘)上读数据。

下面详细介绍这两个函数的用法。

一、printf()函数printf()函数是格式化输出函数, 一般用于向标准输出设备按规定格式输出信息。

在编写程序时经常会用到此函数。

printf()函数的调用格式为:printf("<格式化字符串>", <参量表>);其中格式化字符串包括两部分内容: 一部分是正常字符, 这些字符将按原样输出; 另一部分是格式化规定字符, 以"%"开始, 后跟一个或几个规定字符,用来确定输出内容格式。

参量表是需要输出的一系列参数, 其个数必须与格式化字符串所说明的输出参数个数一样多, 各参数之间用","分开, 且顺序一一对应, 否则将会出现意想不到的错误。

1. 格式化规定符Turbo C2.0提供的格式化规定符如下:━━━━━━━━━━━━━━━━━━━━━━━━━━符号作用──────────────────────────%d 十进制有符号整数%u 十进制无符号整数%f 浮点数%s 字符串%c 单个字符%p 指针的值%e 指数形式的浮点数%x, %X 无符号以十六进制表示的整数%0 无符号以八进制表示的整数%g 自动选择合适的表示法━━━━━━━━━━━━━━━━━━━━━━━━━━说明:(1). 可以在"%"和字母之间插进数字表示最大场宽。

例如: %3d 表示输出3位整型数, 不够3位右对齐。

%9.2f 表示输出场宽为9的浮点数, 其中小数位为2, 整数位为6,小数点占一位, 不够9位右对齐。

C程序设计 数据输入、输出函数(教案)

C程序设计 数据输入、输出函数(教案)
1、格式输入/输出
(1)printf函数(格式输出函数)
格式:printf(格式控制字符串,输出表列)
注意:不要死记硬背,要总结规律。一般形式:%±m n h/l格式字符
(2)scanf函数(格式输入函数)
格式:scanf(格式控制字符串,输入表列-地址列表)
注意: 数据读入结束情况:遇空格、TAB、回车;遇非法输入;指定宽度结束。
2、顺序结构程序的函数体含有完成具体功能的各个语句和运算,包括:
(1)变量类型的说明。(定义变量)
(2)提供数据。(给变量赋初值或用输入函数或赋值语句)
(3)处理部分。(计算等)
(4)输出部分。(用输出函数)
备注
思考与
练习
C程序执行过程是怎样的?语句顺序与程序执行的关系是什么?
确定变量的数据类型应该考虑哪些因素?变量获取数据的基本方法有哪些?
2、其它输入/输出函数
putchar函数 一般形式:putchar(字符表达式);
puts函数 一般形式:puts(char *str);
gets函数 一般形式:gets(char *str);
3、练习作业及要求
用getchar函数读入两个字符给cl、c2,然后分别用putchar函数和scanf函数输出这两个字符。
输入一个字母字符,将小写字母转换为大写字母。
交换整数x和y的值并输出,要求x,y的值由scanf输入。输出时要有文字说明
4、总结顺序程序设计基本步骤
1、程序开头的编译预处理命令。
在程序中要使用标准函数(又称库函数),除printf()和scanf()外,其它的都必须使用编译预处理命令#include“xxx.h”,将相应的头文件(*.h)包含进来。
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

正确语句:
printf( “ Input a,b,c=“);
scanf( “%d, %d, %d”, &a, &b, &c);
printf( “\n” );
/*可省略*/

scanf( “%5f “, &x);
应特别注意输入格式: 如:scanf( “a=%d,b=%d,c=%d \n”,&a,&b,&c); 执行时应输入:
如果第二句改为:
printf(“|%15s|%012f\n”,”LI CHANG”,234.45);
运行结果:|ZHANG WEI
|165.13|
|
LI CHANG|00234.450000|
注意:格式字符与对应输出项类型要一致。
【例】若float y=1234.9999;printf(“%d”,y);则输出结 果为何?
a=10,b=20,c=30 <enter>
三、非格式化输入、输出函数 1.字符输出函数putchar(c)
其中 c为字符型/整型的常量/变量/表达式 【例】以下程序运行结果是什么? #include <stdio.h>
main() { char x='a'; clrscr(); putchar(x); putchar('b'); putchar(x+2); putchar('b'+2); }
结果:abcd
2.字符输入函数
格式:
getchar( ) getche( ) getch( )
功能:
从键盘上读入一个字符,但后两个函数输入后无需回车。 getch( )还有一个功能,即不把读入的字符回显到屏幕上, 常用于密码输入或菜单选择。
【例】#include <stdio.h>
/*此句不能省*/
% * m l (或h) 格式字符 & —求地址的运算符 &a 表示该变量所占空间的首地址 * —抑制字符(“虚读”,即读入数据后不送给任何变量) l —输入长整或double型数据
例: scanf( “ %d,%d,%d ” , &a, &b, &c ); 例:对于 scanf(“%3d%*4d%f”,&i,&f);
【例】main() {long a=1234,b=32769; printf(“a=%ld,a=%d”,a,a); printf(“b=%ld,b=%d\n”,b,b);}
运行结果:a=1234,a=1234,b=32769,b=-32767 格式字符 %d 输出十进制整数 %x 以十六进制无符号形式输出整数 %o 以八进制无符号形式输出整数 %u 无符号 %f 输出小数形式浮点数 %lf double型 %s 输出字符串 %c 输出单字符
0 实际上实数y为任意值(如1234或1)结果都是0。
【例】编一程序将整型-1转换为无符号整型数。 main(){int a=-1;printf(“%u”,a);}
结果为65535(11111111111111112) 如果%o和%x,则结果分别为177777和ffff) #include <stdio.h> #include <math.h> main()
如果输入 1234567890.1234567890 结果 i =123, f=890.123474
scanf( )函数没有输出功能(即不会向屏幕显示任何字符),
也不能规定小数位数(m.n)
例:
scanf( “a=%d,b=%d,c=%d \n”,&a,&b,&c);
scanf( “ %5.2f “,&x ); (X)
{ int x=-12; clrscr(); if (x<0) { x=-x; printf("-"); } printf("%o\n",x);
} 结果:-14(若无 if语句,结果为177764)
二.格式输入函数scanf()
格式: scanf( “……”,&变量名1,&变量名2,… , &变量名n ); 格式说明的一般形式:
【例】
printf(“|%-15s|2.2%f|\n”,”ZHANG WEI”,165.1256);
printf(“|%s|%012f\n”,”LI CHANG”,234.45);
运行结果:|ZHANG WEI
|165.13|
|LI CHANG|00234.450000|
(注意:WEI后面补了六个空格,数字部分连小数点共12位)
main()
{ char a,b;
a=getchar(),b=getchar();
printf(“a=%c,b=%c\n”,a,b); }
运行时,如果输入:p <回车> q <回车>
输出结果为a=p,b=q
相关文档
最新文档