C程序第3章.docx
- 文档编号:27665075
- 上传时间:2023-07-03
- 格式:DOCX
- 页数:7
- 大小:16.98KB
C程序第3章.docx
《C程序第3章.docx》由会员分享,可在线阅读,更多相关《C程序第3章.docx(7页珍藏版)》请在冰豆网上搜索。
C程序第3章
第三章顺序结构
求任意矩形的面积(演示执行过程)
#include
main()
{doublea,b,area;
printf(“请输入a和b的值:
\n”);
scanf(“%f%f”,&a,&b);/*通过键盘输入长和宽*/
area=a*b;/*计算矩形的面积并存储到变量area中*/
printf(“a=%f,b=%f,area=%f\n”,a,b,area);
}/*输出矩形的两条边长和面积*/
例题2.1只能求长为3.6,宽为1.2的面积的值,没有太大的实用价值,此处改进后的程序可以求任意矩形的面积。
而且长和宽是通过键盘输进去的。
本章重点就是程序中的红色标注部分是如何实现的。
1、赋值语句
(1)赋值语句的构成:
赋值表达式后加上分号。
如:
area=a*b;
(2)i++;和--i;虽然没有出现赋值号,但它们也是合法的赋值语句。
原因:
i++的化身是i=i+1,--i的化身是i=i-1。
(3)赋初值≠赋值语句
赋初值:
定义的同时赋值。
如:
inta=2;
赋值语句:
先定义后赋值。
如:
inta;
a=2;
2、数据的输出(必须掌握)
(1)数据的输出要用printf函数实现。
程序中只要用到printf函数,就必须在程序的开头写上#include
如果不把#include
因为关于printf的功能说明全在文件stdio.h中写着呢。
(2)printf函数的书写形式:
printf(格式控制,输出项序列)
注意:
printf是一个函数,所以后面的括号必不可少。
括号里有两大参数:
格式控制和输出项序列。
其中格式控制是必须要有的,输出项序列可有可无。
(3)printf函数应用实例。
printf(“a=%f,b=%f,area=%f\n”,a,b,area);
printf(“请输入a和b的值:
\n”);
总结:
<1>格式控制是字符串,必须用双引号定界。
<2>%的个数与输出项的个数要一致,类型要匹配。
<3>%后的字母取决于其所对应的输出项的类型。
int对应%d,float对应%f,double对应%lf,char对应%c。
<4>除了%d以外,双引号中的其他字符都是原样输出的。
<5>原样输出的字符应尽可能的多,以增强输出结果的可读性。
<6>输出项可以是任意合法的常量、变量或表达式。
如:
printf(“%d”,2);printf(“%d”,a);printf(“%d”,1+2);等都是合法的。
演示例题:
(1)#include
main()
{inta=2,b=3;
printf(“%d%d”,a,b);
}
(2)#include
main()
{inta=2,b=3;
printf(“%d,%d”,a,b);
}
(2)#include
main()
{inta=2,b=3;
printf(“a=%d,b=%d”,a,b);
}
3、格式自符的分类说明(必须掌握)
(1)%c功能是输出一个字符。
举例:
charch=’a’;
Printf(“ch=%c”,ch);
(2)%d功能是输出一个整型数。
举例:
inta=1;
shortintb=2;
longintc=3;
printf(“a=%d,b=%hd,c=%ld”,a,b,c);
(3)%o功能是以八进制形式输出一个整型数。
%o是不输出八进制数的前导0,%#o是输出八进制数的前导0。
举例:
printf(“%o”,017);输出结果为:
17
而printf(“%#o”,017);输出结果为:
017
(4)%x功能是以十六进制形式输出一个整型数。
%x是不输出十六进制数的前导0x,%#x是输出十六进制数的前导0x。
举例:
printf(“%x”,0x17);输出结果为:
17
而printf(“%#x”,0x17);输出结果为:
0x17
(5)%f功能是输出一个实型数。
注意:
%f默认小数点后有六位小数,小数位数不够用0补齐。
举例:
printf(“%f”,0.5);输出结果为0.500000,而不是0.5。
(6)%s功能是输出一个字符串。
(第十章详细讲解)
(7)printf(“%%”);可以输出一个%。
演示举例:
#include
main()
{inta=1,e=15;
longintb=2;
shortintc=3;
chard=’a’;
printf(“a=%d,b=%ld,c=%hd\n”,a,b,c);
printf(“d=%c\n”,d);
printf(“e=%0,e=%#0\n”,e,e);
printf(“e=%x,e=%#x\n”,e,e);
}
4、数据的输入(必须掌握)
(1)数据的输入要用scanf函数实现。
程序中只要用到scanf函数,就必须在程序的开头写上#include
如果不把#include
因为关于scanf的功能说明全在文件stdio.h中写着呢。
(2)scanf的功能是把从键盘上输入的数据依次放入其相应的变量所对应的房子里去。
(3)scanf函数的书写形式:
scanf(格式控制,输入项序列)
scanf(“%f%f”,&a,&b);
(5)scanf函数与printf函数的相同点(必须掌握)
①%的个数与输出项或输入项的个数一致。
②%的类型与输出项或输入项的类型一致。
③多个输出项或输入项之间用逗号隔开。
④scanf函数与printf函数的第一个参数都是格式控制,格式控制是一个字符串,必须用双引号定界。
(6)scanf函数与printf函数的不同点(必须掌握)
①printf函数的功能是输出,scanf函数的功能是输入。
②printf函数的输出项是简单的变量名,而scanf函数得输入项必须是地址值。
(即变量名前要加&)。
③printf函数格式控制中原样输出的字符越详细越好,而scanf函数则是越简单越好。
scanf(“%d%d”,&a,&b);(最好的形式)
scanf(“%d,%d”,&a,&b);
scanf(“a=%d,b=%d”,&a,&b);
演示程序:
求任意矩形的面积
5、复合语句(必须掌握)
用{}把多条语句括起来,就形成一个复合语句。
其中的语句数量不限。
5、空语句(必须掌握)
没有表达式,只有一个分号,就叫空语句。
分号是语句的唯一标记。
程序举例:
例题3.1
由终端输入两个整数给变量x和y,然后输出x和y;在交换x和y中的值后,再输出x和y。
#include
main()
{intx,y,t;
printf(“Enterx&y:
\n”);
scanf(“%d%d”,&x,&y);
printf(“x=%dy=%d\n”,x,y);
t=x;x=y;y=t;
printf(“x=%dy=%d\n”,x,y);
}
程序解析:
⑴printf(“Enterx&y:
\n”);是一条提示性信息,Enterx&y:
会出现在输出结果的黑屏上,此时系统停止往下执行,等待用户通过键盘输入两个数。
⑵scanf(“%d%d”,&x,&y);这条语句成功的把用户刚才通过键盘输入的两个数送入x和y的房子里。
⑶printf(“x=%dy=%d\n”,x,y);功能是把刚才键盘上输入的数据输出到屏幕上。
便于和交换后的数据作对比。
⑷t=x;x=y;y=t;这三条语句是本题的核心算法。
现实中交换两盆水,只需借助第三个空盆子就可完成。
⑸printf(“x=%dy=%d\n”,x,y);功能是显示输出交换之后的x和y的值。
例题3.2
输入一个double类型的数,使该数保留小数点后两位,对第三位小数进行四舍五入处理,然后输出此数。
以便验证处理是否正确。
#include
main()
{doublex;
printf(“Enterx:
\n”);
scanf(“%lf”,&x);
printf(“
(1)x=%lf\n”,x);
x=x*100;
x=x+0.5;
x=(int)x;
x=x/100;
printf(“
(2)x=%lf\n”,x);
}
⑴printf(“Enterx:
\n”);是一条提示性信息,Enterx:
会出现在输出结果的黑屏上,此时系统停止往下执行,等待用户通过键盘输入x。
⑵scanf(“%lf”,&x);double类型的变量要用%lf格式控制。
⑶以下四句是本题的核心算法。
以x=123.4567为例讲解。
x=x*100;→x=12345.67
x=x+0.5;→x=12346.17
x=(int)x;→x=12346.0
x=x/100;→x=x=123.46
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 程序