《C语言程序设计算法和基本程序设计.pptx》由会员分享,可在线阅读,更多相关《C语言程序设计算法和基本程序设计.pptx(37页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、流程图第1页/共37页例:求三个整数的和流程图开始输出sum的值结束输入x,y,zsum=x+y+zmain()float x,y,z,sum;scanf(“%f%f%fn”,&x,&y,&z);sum=x+y+z;printf(“sum=%fn”,sum);第2页/共37页例2:求三个数中最小数流程图开始输出min的值输入a,b,cabNmin=amin=bY结束cminmin=cYN#include main()int a,b,c,min;scanf(%d%d%d,&a,&b,&c);if(ab)min=a;else min=b;if(cmin)min=c;printf(min=%d,mi
2、n);第3页/共37页N-S图完全去掉流程线,由一些基本框组成一个大的框基本元素框第4页/共37页例:求三个整数的和流程图开始输出sum的值结束输入x,y,zsum=x+y+z输出sum的值sum=x+y+z输入x,y,zN-S图第5页/共37页例:求三个数中最小数。流程图开始输出min的值输入a,b,cabNmin=amin=bY结束cminmin=cYNN-S图min=bmin=aabYNmin=ccminYN输入a,b,c输出min的值第6页/共37页结构化程序设计基本思想:把一个复杂问题的求解过程分步进行,后一步在前一步的基础上细化,这样每步所考虑的子问题都相对易于理解和处理,每步都只
3、用三种基本结构进行复合和嵌套。也可以概括为:自顶向下,逐步求精的方法。第7页/共37页基本程序结构三种:顺序结构、选择结构、循环结构1.顺序结构AB先执行A,再执行B.第8页/共37页2.选择结构ABPYN若P为真,则执行A,否则执行B。APNY若P为真,则执行A,否则跳过A。第9页/共37页 另外:由选择结构可以派生出多分支结构。K=K1A1A2AiAnK2KiKn第10页/共37页3.循环结构PNYA(1)当型循环当P为真,反复执行A,P为假时出循环。APYN(2)直到型循环先执行A,再判断,若P为真,反复执行A,直到P为假出循环。第11页/共37页顺序结构程序设计C程序概述语句分类:由语
4、句组成,每个语句以分号结束。控制语句 表达式语句 函数调用语句 空语句 复合语句9种控制语句:1条件判断语句 nif()else nswitch()2循环控制语句 nfor()nwhile()ndo while()3转移语句 nbreakncontinuengoto nreturn例如:例如:main()int a,b;a=b=100;float c=10.23;printf(%fn,c);printf(%d%dn,a,b);第12页/共37页C中数据的输入输出输入:将数据送入计算机。输出:将计算机处理的结果数据送出到输出设备。说明:1、语言中,数据输入输出是通过调用库函数完成。2、使用库函数
5、时,用预编译命令将有关“头文件”包括到源文件中。3、标准输入输出库函数:“stdio.h”文件4、源文件开头应有以下预编译命令:#include 或#include stdio.h 第13页/共37页1.putchar 函数(字符输出函数)字符数据的输入/输出格式:putchar(c)参数:c为字符常量、变量或表达式功能:把字符c输出到显示器上例:#include main()int c;char a;c=65;a=B;putchar(c);putchar(n);putchar(a);A B第14页/共37页2、getchar函数(字符输入函数)格式:getchar()功能:从键盘读入一字符,
6、遇回车结束并回显例:#include main()char c;c=getchar();putchar(c);a aa第15页/共37页getch函数格式:getch()功能:从键盘读入一字符,不用回车结束,不回显例:#include main()char c;c=getch();putchar(c);a a第16页/共37页getche函数格式:getche()功能:从键盘读入一字符,不用回车结束,回显例:#include main()char c;c=getche();putchar(c);a aa第17页/共37页格式输入与输出输出若干个任意类型的数据1、printf函数(格式输出)格式
7、:printf(“格式控制串”,输出表)功能:按指定格式向显示器输出数据说明:标准库函数,函数原型在头文件“stdio.h”中格式控制串:格式说明:普通字符或转义序列:%格式字符,用于指定输出格式原样输出输出表:要输出的数据(可以没有,多个时以“,”分隔)第18页/共37页格式字符1、%d 十进制格式2、%o 八进制格式3、%x 十六进制格式4、%u 无符号的十进制格式5、%c一个字符格式6、%s 字符串格式7、%f实数格式8、%e 指数格式9、%g第19页/共37页dx,Xoucse,Efg%十六进制无符号整数不带符号十进制整数十进制整数指数形式浮点小数单一字符字符串八进制无符号整数小数形式
8、浮点小数e和f中较短一种百分号本身int a=567;printf(“%d”,a);int a=255;printf(“%x”,a);int a=65;printf(“%o”,a);int a=-1;printf(“%u”,a);char a=65;printf(“%c”,a);printf(“%s”,“ABC”);float a=567.789;printf(“%e”,a);float a=567.789;printf(“%f”,a);float a=567.789;printf(“%g”,a);printf(“%”);567ff10165535AABC5.67789e+02567.7890
9、00567.789%格式字符第20页/共37页附加格式说明符 .n对实数,指定小数点后位数(四舍五入)对字符串,指定实际输出位数修饰符功 能m 输出数据域宽,数据长度m,左补空格;否则按实际输出输出数据在域内左对齐(缺省右对齐)-指定在有符号数的正数前显示正号(+)+输出数值时指定左面不使用的空位置自动填00在八进制和十六进制数前显示前导0,0 x#在d,o,x,u前,指定输出精度为long型在e,f,g前,指定输出精度为double型l第21页/共37页2、scanf函数(格式输入)格式:scanf(“格式控制串”,地址表)功能:按指定格式从键盘读入数据,存入地址表指 定的存储单元中,按回车
10、键结束说明:标准库函数,在头文件“stdio.h”中定义格式控制串:和格式输出函数的含义相同地址表:变量的地址,用取地址运算符&例 int a;scanf(“%d”,&a);10 a=10第22页/共37页关于格式输入函数的几点说明:1、输入数据时不能规定精度;2、参数中“格式控制”之后应该是变量地址;3、如果在“格式控制”字符串中除了格式说明以外,还有其他字符,则在输入数据时应输入与这些 字符相同的字符;例:scanf(”%7.2f”,&a);例:scanf(”%f”,a);例:scanf(”a=%d,b=%d”,&a,&b);输入时应该是:a=3,b=4 第23页/共37页4、在用“%c”
11、格式输入字符时,空格字符和转义 字符都作为有效的字符输入。例:scanf(”%d%d”,&a,&b);输入时可为:3 4 3 4 3Tab键4 例:scanf(”%c%c%c”,&c1,&c2,&c3);若输入时为:a b c 则结果为:c1=a,c2=,c3=b5、double型数据输入时,必须用%lf或%le格式第24页/共37页程序举例例1、输入三角形边长,求面积。公式:s=(a+b+c)/2;area=sqrt(s*(s-a)*(s-b)*(s-c);#include#include main()float a,b,c,s,area;printf(input a,b,c:);scanf
12、(%f,%f,%f,&a,&b,&c);s=(a+b+c)/2;area=sqrt(s*(s-a)*(s-b)*(s-c);printf(area=%7.2fn,area);input a,b,c:3,4,6 area=5.33第25页/共37页例2、编写显示如下界面的程序:#include main()system(cls);printf(学生管理程序n);printf(Add-追加数据 );printf(Modify-修改数据n);printf(Delete-删除数据 );printf(Print-打印数据n);printf(Sort-成绩排序 );printf(Quit-退出程序n);第
13、26页/共37页C程序上机的步骤C程序从开发到执行的过程用户C源程序.c文件目标程序.obj文件可执行程序.exe文件结 果编辑编译连接运行编译出错连接出错运行出错对源文件进行语法和逻辑结构检查将目标程序、库函数或其他目标程序连接成一个可执行文件第27页/共37页VC环境介绍新建文件第28页/共37页第29页/共37页保存文件后缀为.c第30页/共37页编译结果编译第31页/共37页链接结果链接第32页/共37页运行第33页/共37页用Ctrl+空格切换中英文输入方式第34页/共37页注意逗号,为英文方式下的字符输出结果第35页/共37页作 业1、编一程序,求两点之间的距离,已知直角坐标系中求两点(x1,y1)和(x2,y2)之间距离公式为:d=(x2-x1)2+(y2-y1)22、编一程序,将输入的摄氏温度转换为华氏温度和 绝对温度。转换公式为:F=C+32 K=273.16+C593、编一程序,从键盘输入一个三位数,求出其逆序 数并输出,例如输入123,输出321。第36页/共37页感谢您的欣赏!第37页/共37页
限制150内