c语言第3章输入输出(超实用)_第1页
c语言第3章输入输出(超实用)_第2页
c语言第3章输入输出(超实用)_第3页
c语言第3章输入输出(超实用)_第4页
c语言第3章输入输出(超实用)_第5页
已阅读5页,还剩16页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第三章C顺序程序设计3.1C语句概述C语句:以“;”作分隔符,编译后产生机器指令.C语句分类表达式语句:表达式加分号构成。函数调用语句空语句:;程序控制语句(9种):if()~else~switchfor()~while()~do~while()continuebreakgotoreturn分支循环辅助控制如total=total+limit;a=3;

func();

printf(“Hello,world!\n”);复合语句:用{…}括起来的一组语句一般形式:

{[数据说明部分;]

执行语句部分;

}说明:“}”后不加分号语法上和单一语句相同复合语句可嵌套格式:putchar(c)参数:c为字符常量、变量或表达式功能:把字符c输出到显示器上返值:正常,为显示的代码值;出错,为EOF(-1)3.2数据输入与输出C语言无I/O语句,I/O操作由函数实现#include<stdio.h>数据输出字符输出函数/*ch3_1.c*/#include<stdio.h>main(){intc;chara;c=65;a='B';

putchar(c);putchar('\n');putchar(a);}运行结果:AB例格式:printf(“格式控制串”,输出表)功能:按指定格式向显示器输出数据返值:正常,返回输出字节数;出错,返回EOF(-1)格式输出函数输出表:要输出的数据(可以没有,多个时以“,”分隔)格式控制串:包含两种信息格式说明:%[修饰符]格式字符,用于指定输出格式普通字符或转义序列:原样输出格式字符d,ix,Xoucse,Ef%%格式字符:十六进制无符号整数不带符号十进制整数十进制整数指数形式浮点小数单一字符字符串八进制无符号整数小数形式浮点小数百分号本身inta=567;printf(“%d”,a);inta=255;printf(“%x”,a);inta=65;printf(“%o”,a);inta=567;printf(“%u”,a);chara=65;printf(“%c”,a);printf(“%s”,“ABC”);floata=567.78;printf(“%e”,a);floata=567.789;printf(“%f”,a);printf(“%%”);567ff101567AABC5.67780e+02567.789000%说明 格式字符要用小写格式字符与输出项个数应相同,按先后顺序一一对应输出转换:格式字符与输出项类型不一致,自动按指定格式输出例inta=3,b=4;

printf(“%d%d\n”,a,b);

printf(“a=%d,b=%d\n”,a,b);输出结果:34a=3,b=4附加格式说明符(修饰符).n对实数,指定小数点后位数(四舍五入)对字符串,指定实际输出位数修饰符功能m输出数据域宽,数据长度<m,左补空格;否则按实际输出输出数据在域内左对齐(缺省右对齐)-指定在有符号数的正数前显示正号(+)+输出数值时指定左面不使用的空位置自动填00在八进制和十六进制数前显示前导0,0x#在d,o,x,u前,指定输出精度为long型在e,f前,指定输出精度为double型l例inta=1234;floatf=123.456;charch=‘a’;printf(“%8d,%2d\n”,a,a);printf(“%f,%8.1f,%.2f,%.2e\n”,f,f,f,f,f);printf(“%3c\n”,ch);运行1234,1234结果:123.456000,

123.5,123.46,1.23e+02

a例

chara[]=“Hello,world!”printf(“%s\n%15s\n%10.5s\n%2.5s\n%.3s\n”,a,a,a,a,a);运行结果:Hello,world!

Hello,world!

HelloHello

Hel

例m.n例inta=1234;floatf=123.456;staticcharc[]=“Hello,world!”;printf(“%8d,%-8d\n”,a,a);printf(“%10.2f,%-10.1f\n”,f,f);printf(“%10.5s,%-10.3s\n”,c,c);运行结果:1234,1234

123.46,123.5

Hello,Hel例-格式:getchar()功能:从键盘读一字符返值:正常,返回读取的代码值;出错,返回EOF(-1)3.3数据输入字符输入函数例#include<stdio.h>main(){intc;

printf("Enteracharacter:");

c=getchar();

printf("%c--->hex%x\n",c,c);}运行结果:Enteracharacter:AA--->hex41格式输入函数格式:scanf(“格式控制串”,地址表)功能:按指定格式从键盘读入数据,存入地址表指定的存储单元中,并按回车键结束返值:正常,返回输入数据个数地址表:变量的地址,常用取地址运算符&格式字符:d,i,o,x,u,c,s,f,e例scanf(“%d”,&a);

输入:10

printf(“a=%d”,a);

输出

a=10例scanf(“%x”,&a);

输入:11

printf(“a=%d”,a);

输出

a=17输入分隔符的指定一般以空格、TAB或回车键作为分隔符其它字符做分隔符:格式串中两个格式符间字符例scanf(“%d%o%x”,&a,&b,&c);

printf(“a=%d,b=%d,c=%d\n”,a,b,c);

输入123123123

输出a=123,b=83,c=291例scanf(“%d:%d:%d”,&h,&m,&s);

输入12:30:45则12h,30m,45s例scanf(“%d,%d”,&a,&b)

输入3,4

则3a,4b例scanf(“a=%d,b=%d,c=%d”,&a,&b,&c);

输入a=12,b=24,c=363.4程序举例/*ch3_12.c*/#include<math.h>#include<stdio.h>main(){floata,b,c,s,area;

scanf("%f,%f,%f",&a,&b,&c);s=1.0/2*(a+b+c);

area=sqrt(s*(s-a)*(s-b)*(s-c));

printf("a=%7.2f,b=%7.2f,c=%7.2f,s=%7.2f\n",a,b,c,s);

printf("area=%7.2f\n",area);}例输入三角形边长,求面积输入:3,4,6输出:a=3.00,b=4.00,c=6.00s=6.50area=5.33文件包含预处理命令变量定义输入数据输出数据例从键盘输入大写字母,用小写字母输出/*ch3_13.c*/#include"stdio.h"main(){charc1,c2;c1=getchar();printf("%c,%d\n",c1,c1);c2=c1+32;printf("%c,%d\n",c2,c2);}输入:A

输出:A,65a,97第四章数据描述关系运算符和表达式逻辑运算符和表达式分支语句程序举例4.1关系运算符和表达式关系运算符种类:<<===>=>!=结合方向:自左向右优先级别:关系表达式的值:是逻辑值“真”或“假”,用1和0表示例inta=3,b=2,c=1,d,f;a>b(a>b)==cb+c<ad=a>bf=a>b>c<>//表达式值1//表达式值1//表达式值0//d=1//f=0语言程序设计第二章数据描述C<<=>>===!=优先级6(高)优先级7(低)关系运算注意:<>例5>2>7>8在C中是允许的,值为0例inti=1,j=7,a;a=i+(j%4!=0);

则a=2例‘a’>0结果为‘A’>100结果为10语言程序设计第二章数据描述C关系运算注意:例注意区分“=”与“==”#include“stdio.h”main(){

inta=0,b=1;if(a=b)

printf(“aequaltob”);else

printf(“anotequaltob”);}语言程序设计第二章数据描述C4.2逻辑运算符和表达式逻辑运算符种类:!&&||逻辑运算真值表C语言中,运算量:0表示“假”,非0表示“真”,运算结果:0表示“假”,1表示“真”,<>ab!a!ba&&ba||b真假真假假假真真真假假假假假真真假假真真真假真真语言程序设计第二章数据描述C!(2)&&(11)||(12)高低优先级:结合方向:!:从右向左&&:从左向右||:从左向右语言程序设计第二章数据描述C例a=4;b=5;!aa&&ba||b!a||b4&&0||2‘c’&&‘d’值为1值为0值为1值为1值为1值为1短路特性:逻辑表达式求解时,并非所有的逻辑运算符都被执行,只是在必须执行下一个逻辑运算符才能求出表达式的解时,才执行该运算符<>例a&&b&&c//只在a为真时,才判别b的值;只在a、b都为真时,

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论