• 589.51 KB
  • 2022-04-29 14:27:21 发布

教学课件PPT最简单的C程序设计

  • 58页
  • 当前文档由用户上传发布,收益归属用户
  1. 1、本文档共5页,可阅读全部内容。
  2. 2、本文档内容版权归属内容提供方,所产生的收益全部归内容提供方所有。如果您对本文有版权争议,可选择认领,认领后既往收益都归您。
  3. 3、本文档由用户上传,本站不保证质量和数量令人满意,可能有诸多瑕疵,付费之前,请仔细先通过免费阅读内容等途径辨别内容交易风险。如存在严重挂羊头卖狗肉之情形,可联系本站下载客服投诉处理。
  4. 文档侵权举报电话:19940600175。
'第3章最简单的C程序设计3.1顺序程序设计举例3.2数据的表现形式及其运算3.3C语句3.4数据的输入输出 3.3C语句3.3.1C语句的作用和分类3.3.2最基本的语句----赋值语句 3.3.1C语句的作用和分类C语句分为以下5类:(1)控制语句:if、switch、for、while、do…while、continue、break、return、goto(转向语句,结构程序设计不用)等(2)函数调用语句(函数调用加分号)(3)表达式语句(表达式加分号)(4)空语句(只有一个分号,作流程的转向点)(5)复合语句(用{}括起来,又叫语句块) 3.3.2最基本的语句----赋值语句在C程序中,最常用的语句是:赋值语句输入输出语句其中最基本的是赋值语句 3.3.2最基本的语句----赋值语句解题思路:假设给定的三个边符合构成三角形的条件关键是找到求三角形面积的公式(海伦公式)公式为:其中s=(a+b+c)/2 3.3.2最基本的语句----赋值语句例3.4给出三角形的三边长,求三角形面积。 #include#includeintmain(){doublea,b,c,s,area;a=3.67;b=5.43;c=6.21;s=(a+b+c)/2;area=sqrt(s*(s-a)*(s-b)*(s-c));printf("a=%ftb=%ft%fn",a,b,c);printf("area=%fn",area);return0;}对边长a、b、c赋值计算s计算area #include#includeintmain(){doublea,b,c,s,area;a=3.67;b=5.43;c=6.21;s=(a+b+c)/2;area=sqrt(s*(s-a)*(s-b)*(s-c));printf("a=%ftb=%ft%fn",a,b,c);printf("area=%fn",area);return0;}数学函数,计算平方根调用数学函数加此行 #include#includeintmain(){doublea,b,c,s,area;a=3.67;b=5.43;c=6.21;s=(a+b+c)/2;area=sqrt(s*(s-a)*(s-b)*(s-c));printf("a=%ftb=%ft%fn",a,b,c);printf("area=%fn",area);return0;}转义字符,使输出位置跳到下一个tab位置调用数学函数加此行 归纳总结:1.赋值运算符“=”是赋值运算符作用是将一个数据赋给一个变量也可以将一个表达式的值赋给一个变量 归纳总结:1.赋值运算符2.复合的赋值运算符在赋值符“=”之前加上其他运算符,可以构成复合的运算符a+=3等价于a=a+3x*=y+8等价于x=x*(y+8) 归纳总结:1.赋值运算符2.复合的赋值运算符3.赋值表达式一般形式为:变量赋值运算符表达式对赋值表达式求解的过程:求赋值运算符右侧的“表达式”的值赋给赋值运算符左侧的变量 归纳总结:1.赋值运算符2.复合的赋值运算符3.赋值表达式赋值表达式“a=3*5”的值为15,对表达式求解后,变量a的值和表达式的值都是15“a=(b=5)”和“a=b=5”等价“a=b”和“b=a”含义不同 归纳总结:1.赋值运算符2.复合的赋值运算符3.赋值表达式4.赋值过程中的类型转换两侧类型一致时,直接赋值两侧类型不一致,但都是算术类型时,自动将右侧的类型转换为左侧类型后赋值 4.赋值过程中的类型转换两侧类型不一致,但都是算术类型时,自动将右侧的类型转换为左侧类型后赋值浮点数赋给整数-取整赋值给整数整数赋给浮点数,数值不变,以浮点形式储存,如执行f=23,先将23转换成23.0存储 归纳总结:1.赋值运算符2.复合的赋值运算符3.赋值表达式4.赋值过程中的类型转换5.赋值表达式和赋值语句赋值表达式的末尾没有分号,而赋值语句有分号 归纳总结:1.赋值运算符2.复合的赋值运算符3.赋值表达式4.赋值过程中的类型转换5.赋值表达式和赋值语句6.变量赋初值inta=3,b=3,c;inta=3;相当于inta;a=3; 3.4数据的输入输出3.4.1输入输出举例3.4.2有关数据输入输出的概念3.4.3用printf函数输出数据3.4.4用scanf函数输入数据3.4.5字符数据的输入输出 3.4.1输入输出举例例3.5求方程的根。a、b、c由键盘输入设>0 3.4.1输入输出举例解题思路:首先要知道求方程式的根的方法。由数学知识已知:如果≥0,则一元二次方程有两个实根:若记 #include#includeintmain(){doublea,b,c,disc,x1,x2,p,q;scanf("%lf%lf%lf",&a,&b,&c);disc=b*b-4*a*c;p=-b/(2.0*a);q=sqrt(disc)/(2.0*a);x1=p+q;x2=p-q;printf("x1=%7.2fnx2=%7.2fn",x1,x2);return0;}程序中调用数学函数sqrt输入a,b,c的值 #include#includeintmain(){doublea,b,c,disc,x1,x2,p,q;scanf("%lf%lf%lf",&a,&b,&c);disc=b*b-4*a*c;p=-b/(2.0*a);q=sqrt(disc)/(2.0*a);x1=p+q;x2=p-q;printf("x1=%7.2fnx2=%7.2fn",x1,x2);return0;}输入的是双精度型实数 #include#includeintmain(){doublea,b,c,disc,x1,x2,p,q;scanf("%lf%lf%lf",&a,&b,&c);disc=b*b-4*a*c;p=-b/(2.0*a);q=sqrt(disc)/(2.0*a);x1=p+q;x2=p-q;printf("x1=%7.2fnx2=%7.2fn",x1,x2);return0;}要求输入3个实数自动转成实数后赋给a,b,c #include#includeintmain(){doublea,b,c,disc,x1,x2,p,q;scanf("%lf%lf%lf",&a,&b,&c);disc=b*b-4*a*c;p=-b/(2.0*a);q=sqrt(disc)/(2.0*a);x1=p+q;x2=p-q;printf("x1=%7.2fnx2=%7.2fn",x1,x2);return0;}输出数据占7列,其中小数占2列 3.4.2有关数据输入输出的概念几乎每一个C程序都包含输入输出输入输出是程序中最基本的操作之一 3.4.2有关数据输入输出的概念(1)所谓输入输出是以计算机主机为主体而言的从计算机向输出设备(如显示器、打印机等)输出数据称为输出从输入设备(如键盘、磁盘、光盘、扫描仪等)向计算机输入数据称为输入 3.4.2有关数据输入输出的概念(2)C语言本身不提供输入输出语句输入和输出操作是由C标准函数库中的函数来实现的printf和scanf不是C语言的关键字,而只是库函数的名字putchar(输出字符)、getchar(输入字符)、puts、gets 3.4.2有关数据输入输出的概念(3)在使用输入输出函数时,要在程序文件的开头用预编译指令#include或#include″stdio.h″ 3.4.3用printf函数输出数据在C程序中用来实现输出和输入的,主要是printf函数和scanf函数这两个函数是格式输入输出函数用这两个函数时,必须指定格式 3.4.3用printf函数输出数据1.printf函数的一般格式printf(格式控制,输出表列)例如:printf(”i=%d,c=%cn”,i,c);格式声明 3.4.3用printf函数输出数据1.printf函数的一般格式printf(格式控制,输出表列)例如:printf(”i=%d,c=%cn”,i,c);普通字符 格式控制格式声明:由%和格式字符组成,如%d,%f等。普通字符:原样输出,逗号,空格等 3.4.3用printf函数输出数据1.printf函数的一般格式printf(格式控制,输出表列)例如:printf(”i=%d,c=%cn”,i,c);可以是常量、变量或表达式 3.4.3用printf函数输出数据2.常用格式字符d格式符。用来输出一个有符号的十进制整数可以在格式声明中指定输出数据的域宽printf(”%5d%5dn”,12,-345);输出结果为:(三个空格)12(一个空格)-345%d输出int型数据%ld输出long型数据 3.4.3用printf函数输出数据2.常用格式字符c格式符。用来输出一个字符charch=’a’;printf(”%c”,ch);或printf(”%5c”,ch);(a前面有4个空格)输出字符:a 3.4.3用printf函数输出数据2.常用格式字符s格式符。用来输出一个字符串printf(”%s”,”CHINA”);输出字符串:CHINA 3.4.3用printf函数输出数据2.常用格式字符f格式符。用来输出实数,以小数形式输出①不指定数据宽度和小数位数,用%f例3.6用%f输出实数,只能得到6位小数。doublea=1.0;printf(”%fn”,a/3); 3.4.3用printf函数输出数据2.常用格式字符f格式符。用来输出实数,以小数形式输出②指定数据宽度和小数位数。用%m.nfprintf("%20.15fn",1/3);(注意0的前面有3个空格)printf("%.0fn”,10000/3.0); 3.4.3用printf函数输出数据2.常用格式字符f格式符。用来输出实数,以小数形式输出②指定数据宽度和小数位数。用%m.nffloata;a=10000/3.0;printf("%fn",a); 3.4.3用printf函数输出数据2.常用格式字符f格式符。用来输出实数,以小数形式输出③输出的数据向左对齐,用%-m.nf 3.4.3用printf函数输出数据2.常用格式字符f格式符。用来输出实数,以小数形式输出float型数据只能保证6位有效数字double型数据能保证15位有效数字 3.4.3用printf函数输出数据2.常用格式字符e格式符。指定以指数形式输出实数%e,VC++给出小数位数为6位指数部分占5列小数点前必须有而且只有1位非零数字printf(”%e”,123.456);输出:1.234560e+002 3.4.3用printf函数输出数据2.常用格式字符e格式符。指定以指数形式输出实数%m.neprintf(”%13.2e”,123.456);输出:1.23e+002(前面有4个空格) 3.4.4用scanf函数输入数据1.scanf函数的一般形式scanf(格式控制,地址表列)含义同printf函数 3.4.4用scanf函数输入数据1.scanf函数的一般形式scanf(格式控制,地址表列)可以是变量的地址,或字符串的首地址 3.4.4用scanf函数输入数据2.scanf函数中的格式声明与printf函数中的格式声明相似以%开始,以一个格式字符结束,中间可以插入附加的字符scanf("a=%f,b=%f,c=%f",&a,&b,&c); 3.4.4用scanf函数输入数据3.使用scanf函数时应注意的问题scanf(”%f%f%f”,a,b,c);错scanf(”%f%f%f”,&a,&b,&c);对对于scanf("a=%f,b=%f,c=%f",&a,&b,&c);132↙错a=1,b=3,c=2↙对a=1b=3c=2↙错 3.4.4用scanf函数输入数据3.使用scanf函数时应注意的问题对于scanf(”%c%c%c”,&c1,&c2,&c3);abc↙对abc↙错对于scanf(”%d%c%f”,&a,&b,&c);若输入1234a123o.26↙ 3.4.4用scanf函数输入数据3.使用scanf函数时应注意的问题对于scanf(”%c%c%c”,&c1,&c2,&c3);abc↙对abc↙错对于scanf(”%d%c%f”,&a,&b,&c);若输入1234a123o.26↙ 3.4.4用scanf函数输入数据3.使用scanf函数时应注意的问题对于scanf(”%c%c%c”,&c1,&c2,&c3);abc↙对abc↙错在输入数值数据时,如输入空格、回车、Tab键或遇非法字符,认为数据结束。对于scanf(”%d%c%f”,&a,&b,&c);若输入1234a123o.26↙p78页详细解释 3.4.5字符数据的输入输出1.用putchar函数输出一个字符从计算机向显示器输出一个字符putchar函数的一般形式为:putchar(c) 3.4.5字符数据的输入输出例3.8先后输出BOY三个字符。解题思路:定义3个字符变量,分别赋以初值B、O、Y用putchar函数输出这3个字符变量的值 3.4.5字符数据的输入输出#includeintmain(){chara="B",b="O",c="Y";putchar(a);putchar(b);putchar(c);putchar("n");return0;}向显示器输出字符B向显示器输出换行符 3.4.5字符数据的输入输出#includeintmain(){chara="B",b="O",c="Y";putchar(a);putchar(b);putchar(c);putchar("n");return0;}改为inta=66,b=79,c=89; 3.4.5字符数据的输入输出putchar(’101’)(输出字符A)putchar(’’’)(输出单撇号字符’) 3.4.5字符数据的输入输出2.用getchar函数输入一个字符向计算机输入一个字符getchar函数的一般形式为:getchar() 3.4.5字符数据的输入输出例3.9从键盘输入BOY三个字符,然后把它们输出到屏幕。解题思路:用3个getchar函数先后从键盘向计算机输入BOY三个字符用putchar函数输出 3.4.5字符数据的输入输出#includeintmain(){chara,b,c;a=getchar();b=getchar();c=getchar();putchar(a);putchar(b);putchar(c);putchar("n");return0;}输入一个字符,送给变量a'