欢迎来到三一办公! | 帮助中心 三一办公31ppt.com(应用文档模板下载平台)
三一办公
全部分类
  • 办公文档>
  • PPT模板>
  • 建筑/施工/环境>
  • 毕业设计>
  • 工程图纸>
  • 教育教学>
  • 素材源码>
  • 生活休闲>
  • 临时分类>
  • ImageVerifierCode 换一换
    首页 三一办公 > 资源分类 > PPT文档下载  

    计算机软件基础自考.ppt

    • 资源ID:6343001       资源大小:1.02MB        全文页数:72页
    • 资源格式: PPT        下载积分:15金币
    快捷下载 游客一键下载
    会员登录下载
    三方登录下载: 微信开放平台登录 QQ登录  
    下载资源需要15金币
    邮箱/手机:
    温馨提示:
    用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP免费专享
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    计算机软件基础自考.ppt

    计算机 软件基础,第二章顺序结构、选择结构和 循环结构的程序设计,1、顺序结构用来表示一个操作系列,它的执行过程是按顺序执行各序列。2、选择结构也称分支结构,根据假定条件,选择执行某个分支操作。3、循环结构根据条件重复执行某些操作。,一、顺序结构程序设计,顺序结构程序是最简单,最基本的程序设计,它由简单的语句组成,程序的执行是按照程序员书写的顺序进行的,没有分支、转移、循环,且每条语句都将被执行。顺序结构的程序是从上到下依次执行的,其执行流程如图所示。,图 顺序结构执行流程,一、顺序结构程序设计,【实例2.1】求三角形的周长和面积。程序分析:输入三条边a、b、C;计算周长:l=a+b+c;计算面积:根据海伦公式,半周长hl=(a+b+c)2;三角形面积:s=sqrt(hl*(hla)*(hl-b)*(h1一c);输出三角形的面积和周长。,一、顺序结构程序设计,#include#include/添加数学函数所需头文件void main()float a,b,c,l,h1,s;printf(请输入能组成三角形的三条边:n);/输出提示文字 scanf(%f,%f,%f,/输出l和s的值,编写程序如下:,一、顺序结构程序设计,一、赋值语句 1语句书写形式 变量名=表达式;2功能 赋值语句的功能是把表达式值算出后赋给变量。注意,赋值语句就是赋值表达式后加上一个分号,分号作为语句的结束标志。例2-1写出a、b两变量交换值的语句。方法一:m=a;a=b;b=m;,一、顺序结构程序设计,二、字符输入与输出函数1getchar()函数getchar()函数是字符输入函数,它的功能是从键盘上输入一个字符。一般形式为:getchar()Char ch;“ch=getchar();”2putchar()函数putchar()函数为字符输出函数,它的作用是在显示器上输出一个字符。其一般形式为:putchar(c);,一、顺序结构程序设计,二、字符输入与输出函数例2-2#include stdio.hvoid main()int x=97;char y=a;putchar(a);putchar(y);putchar(97);putchar(x);putchar(c-2);,一、顺序结构程序设计,1.格式输出函数printf,三、格式输入与输出函数,一、计算机语言、算法、程序的概念,格式输出函数printf注意事项:,1.格式控制字符串包含两部分内容:,(1)格式说明符,如%d,%f,%c等;,(2)照原样输出的字符。,2.输出数据表列是需要输出的数据(也可以是表达式),多于一个时用逗号分开。,printf(“格式控制字符串”,输出对象列表),一、顺序结构程序设计,2.格式输出函数printf(续),一、顺序结构程序设计,2.格式输入函数scanf,一、顺序结构程序设计,格式输入函数scanf注意事项:,(1)输入实型数据时不能规定精度。,如:scanf(“%3.2f“,是错误的。,(2)格式控制字符串后面对应的是“变量地址”,而 不是“变量名”。,如:scanf(“%f%f“,是错误的;,(3)”%c”格式输入时只能接受一个字符。,如:scanf(“%c“,若输入a,则ch=a;若输入abc,则输出仍然为a。,一、顺序结构程序设计,例2-3输入一个字符,输出它的ASCII代码值,反过来输入一个字符的ASCII代码值,输出这个字符。#include*程序中使用了字符输入,输出系统函数*main()int x;char ch;ch=getchar();*从键盘上键入一个字符到变量ch*printf(%dn,ch);*将ch的十进制ASCII码输出*scanf(%d,*从键盘键入一个十进制整数*putchar(x);*输出X这个整数所代表的字符*,一、顺序结构程序设计,例2-4输入一个十进制整数,输出它的八进制、十六进制数。程序如下:#include stdio.hvoid main()int a;scanf(%d,/*输出a的十六进制数*/,一、顺序结构程序设计,例25输入一个小写字母,输出相应的大写字母。#include stdio.hvoid main()char ch1;scanf(%c,/*输出表达式chl一32相应的字符*/,一、顺序结构程序设计,例2-6编写求任意半径圆的周长和面积的程序,要求周长四舍五入精确到小数点后第2,面积到第3位。#include stdio.hvoid main()float r,c,s,pi=3.14159;scanf(%f,/*按要求输出结果*/,二、选择结构程序设计,由于顺序结构程序是顺序执行的,无分支、无转移、无循环,因此它不可能处理复杂的问题,而在数据处理过程中,通常需要根据不同的条件进行判断,然后选择程序进行处理,由此可见,顺序结构无法满足要求,而选择结构就是为了解决这类问题而设定的。一般而言,C语言中选择语句包括两种:if语句和switch语句。所谓选择语句就是通过判断条件来选择执行哪一条语句,进而达到编程目的。,二、选择结构程序设计,1.关系运算符和关系表达式,二、选择结构程序设计,关系运算符说明:,(1)关系运算符的优先级低于算术运算符,但高于赋值运算符;,(2)关系表达式对象类型可以是整数、实数或字符型;,(3)同级运算,自左向右,如:,(34)!=5的值为真。,二、选择结构程序设计,2.逻辑运算符和逻辑表达式,二、选择结构程序设计,逻辑运算符说明:,(1)逻辑运算、算术运算和关系运算的优先级由高到低排列的顺序为:,(2)对于逻辑与,只有当运算符左边的值为真时,才计算运算符右边的表达式。如:,int a=1,b=2,c=3;执行(ab)&(c=b)后,c的值仍为3。,二、选择结构程序设计,逻辑运算符说明(续):,(3)对于逻辑或,只有当运算符左边的值为假时,才计算运算符右边的表达式。如:,int a=1,b=2,c=3;执行(ab)|(c=b)后,c的值仍为3。,(4)设x是一个整数,如果!x的值为0,则x的值为非0,不能简单的说x的值为1,因为非0的数不仅仅是1.,二、选择结构程序设计,3.1单分支if语句,表达式,语句s,下一语句,Y,N,二、选择结构程序设计,单if语句说明:,(1)语句s可以是一个语句,也可以是若干语句,如果是若干语句,必须用“”将这些语句括起来。如:,if(ab)m=a;a=b;b=m;,(2)注意“=”(赋值)和“=”(相等)的区别。,下面哪个代码段不能正确输出一个“*”号()。,A.int a;if(a=1)printf(“*”);B.int a;if(a=1)printf(“*”);C.int a=1;if(a=1)printf(“*”);D.int a=1;if(a=1)printf(“*”);,二、选择结构程序设计,单if语句说明(续):,(3)常量、变量和函数也是表达式,它们是表达式的特列。,(4)实型运算中,常量尽可能写成小数,如10写成10.0。,二、选择结构程序设计,例2-7 铁路上托运行李规定,行李重量小于等于20kg时免费,超20kg时超过部分每kg 0.5元,试编写根据行李重量计算运费的C程序。,设行李重量用P,运费用W表示,它们都按实型对待,其数学式为:,程序一:void main()float P,W;scanf(%f,/*输出重量P和运费W*/,程序二(只写运算部分):W=(P-20.0)*0.5;If(P=20.0)W=0.0;,二、选择结构程序设计,3.2双分支if语句,二、选择结构程序设计,3.3嵌套的if语句,二、选择结构程序设计,3.4条件运算符(?)和条件表达式,二、选择结构程序设计,例题2-8 有如下分段函数:,y=,-1,0,1,(x0),(x=0),(x0),试编写通过输入x值,求y值的程序。,二、选择结构程序设计,单分支if语句编程:,main()int x,y;scanf(%d,二、选择结构程序设计,嵌套if语句编程(1):,main()int x,y;scanf(%d,二、选择结构程序设计,嵌套if语句编程(2):,main()int x,y;scanf(%d,二、选择结构程序设计,条件表达式编程:,main()int x,y;scanf(%d,二、选择结构程序设计,3.5多分支结构的switch语句,二、选择结构程序设计,例2-9输入一个学生某门课百分制成绩,输出其成绩等级。等级规定如下:100分A级,9099分8级,8089分C级,7079分D级,6069分E级,60分以下为F级。,#include stdio.hvoid main()int x,i;char ch;scanf(%d,/*输出成绩及等级*/,三、循环结构程序设计,例2-10:分析下列程序,写出运行结果。,void main()int a=1,b=0;switch(a)case 1:switch(b)case 0:a+;b+;case 1:a+;break;case 2:b+;case 2:a+;b+;break;default:a+;printf(a=%d,b=%dn,a,b);,二、选择结构程序设计,例2-11输入a、b、C三个数,按由小到大的顺序输出。,分析:排序的结果可让a中存放最小数,b中存人中间数,c中存放最大数。,#include stdio.hvoid main()float a,b,c,m;scanf(%f%f%f,二、选择结构程序设计,例2-12编写求a、b、c、d四个数中最大数的程序。,#include stdio.hvoid main()float a,b,c,d,max;scanf(%f%f%f%f,/*输出最大数*/,二、选择结构程序设计,例2-13 输入一个字符,判断它是否为大写字母,若是则变成小写字母,若不是则不处理。最后输出这个字符。,#include stdio.hvoid main()char ch;scanf(%c,/*输出这个字符*/,本题的if语句还可以用条件表达式写成:ch=(ch=A&ch=Z)?ch+32:ch;,二、选择结构程序设计,例2-14判断某一年是否为闰年的条件是符合下面二者之一:能被4整除,但不能被100整除。能被400整除。试编写C程序。,判断闰年的条件,可用一个逻辑表达式来表示:(year%4=0&year100!=0)|year400=0,程序一:#include stdio.hvoid main()int year;scanf(%d,二、选择结构程序设计,程序二(流程如图2-5所示):#include stdio.hvoid main()int year,a;/*用a=1标志闰年*/scanf(%d,三、循环结构程序设计,许多问题都会遇到规律性的重复操作。例如,求和问题、求有一定规律的问题和一些迭代等问题都会用到循环结构。循环结构是结构化程序设计的基本结构之一,它与顺序结构、选择结构共同构成了作为各种复杂程序的基本构造单元。本节重点讲解3种循环语句:while语句、dowhile语句和for语句。,三、循环结构程序设计,条件(当型)循环(while),例2-15编写求S=1+2+100的程序。,#include stdio.hvoid main()int i=1,s=0;while(i=100)s=s+i;i+;printf(s=%dn,s);,三、循环结构程序设计,三、循环结构程序设计,直到型循环(do-while),例2-16编写求S=1+2+100的程序。,#include stdio.hvoid main()int i=1,s=0;do s=s+i;i+;while(i=100);printf(s=%dn,s);,三、循环结构程序设计,三、循环结构程序设计,次数型循环(for),例2-17编写求s=1+2+100的程序。,#include stdio.hvoid main()int i,s=0;for(i=1;i=100;i+)/*i从1至100,每次加1*/s=s+i;/*不断把各次i值加到s中*/printf(s=%dn,s);,三、循环结构程序设计,三、循环结构程序设计,循环辅助语句(break),(1)语句功能:Break语句只能用于switch或循环语句当中,其功能是跳出switch语句或跳出本层循环,转去执行其他后继语句。,(2)使用技巧:当循环次数不确定,需要在循环语句执行过程中提前结束循环,或需要循环语句中提供多个出口时,可用break语句。,(3)使用方法:在循环语句中,break语句一般与if语句配合使用,用if语句设置退出条件,break语句则执行退出操作。,三、循环结构程序设计,循环辅助语句(break),#include stdio.hvoid main()int i,s=0;for(i=1;i10)break;printf(i=%d,s=%dn,i,s);,三、循环结构程序设计,循环辅助语句(continue),(1)语句功能:执行continue时,循环体中continue 下面的语句都不执行,而重新进行循环判断,以决定是否继续进行下次循环。,(2)使用方法:在循环语句中,continue语句一般与if语句配合使用。,break与continue的区别:continue只结束本次循环重新进行下次判断,而break结束整个循环。,三、循环结构程序设计,循环辅助语句(continue),#include stdio.hvoid main()int i,s=0;for(i=1;i10)break;printf(i=%d,s=%dn,i,s);,三、循环结构程序设计,例2-18:分析下列程序,写出运行结果。,#include stdio.hvoid main()int i,j,k;for(i=1;i=3;i+)/*i从1到3变化,输出3行*/for(j=1;j=3;j+)/*每行输出3个算式*/k=i*j;printf(%1d*%1d=%1d,i,j,k);printf(n);/*每行输出完后换一行*/,三、循环结构程序设计,例2-19:分析下列程序,写出运行结果。,#include stdio.hvoid main()int i,j;for(i=1;i=3;i+)for(j=1;j=11-i;j+)printf();for(j=1;j=2*i-1;j+)printf(*);printf(n);for(i=1;i=2;i+)for(j=1;j=8+i;j+)printf();for(j=1;j=5-2*i;j+)printf(*);printf(n);,三、循环结构程序设计,例2-20输入一个整数,判断是否为素数,当型结构程序如下:#include stdio.hvoid main()int m,i=2;scanf(%d,三、循环结构程序设计,若要求出45以内所有素数,且每行输出7个,方法如下:,#include stdio.hvoid main()int i,k=1,m;printf(%5d,2);/*先输出最小的素数2,输出宽度为5是为了数据分开*/for(m=3;m=45;m=m+2)/*从3开始45以内奇数循环*/i=2;while(m%i!=0)i+;if(m=i)printf(%5d,m);/*l=输出素数*/k+;/*素数个数加l*/if(k%7=0)/*k为7的倍数换一行*/printf(n);,三、循环结构程序设计,例2-21输出Fibonacci数列前8个数,每行输出4个。这个数列有如下特点:一个数列从第3个数开始,各个数等于前两个数之和。,#include stdio.h void main()int i,a=1,b=2;/*设前两个数为1和2*/for(i=1;i=4;i+)/*i从1到4,循环4次共输出8个数*/printf(%5d%5d,a,b);/*每次输出两个数*/if(i%2=0)/*若i是2倍数,即每行输够4个,则换一行*/printf(n);a=a+b;/*形成下面的两个数*/b=a+b;,1 2 3 5 8 13 21 34 a b a b a b a b 从第三个数开始的规律为:a=a+b;b=a+b;,三、循环结构程序设计,上面程序还可以写成:#include stdio.hvoid main()int i,a=1,b=2,f;printf(%5d%5d,a,b);/*先输出前两个数*/for(i=3;i=8;i+)/*从第3个到第8个数*/f=a+b;/*每个数f等于前两个数之和*/printf(%5d,f);/*输出每l个数*/if(i%4=0)printf(n);/*每行输够4个则换一行*/a=b;b=f;/*形成新的a、b*/,三、循环结构程序设计,例2-22编写求1!+2!+n!的通用程序。分析:1)因为n!=n(n一1)!2)可以边求阶乘边累加。3)定义P为长整型变量,其数值可达231-l。程序如下:#define N 5/*假定求1!+2!+3!+4!+5!*/main()int i;long p=1L,s=0L;for(i=1;i=N;i+)p=p*i;/*不断求阶乘*/s=s+p;/*阶乘累加*/printf(s=%Ldn,s);/*长整型输出用ld格式串*/,三、循环结构程序设计,例2-23 输入一列数,以0为结束标志,求正数的平均值。,#include stdio.hvoid main()float X,s=0.0;/*X代表这些数,S先放正数和,后放平均值*/int i=0;/*i为正数个数计数器*/scanf(%f,/*输出正数平均值*/,三、循环结构程序设计,例2-24输入一个整数,试确定是几位数。,main()long x;int i=0;/*x代表这个整数,i为整数位数计数器*/scanf(%Ld,/*输出整数的位数i*/,历年真题演练,1.(2010.4,单选)已知 int x=3,y=5,z=7;,则表达式x y?x:(y z?y:z)的值是(),0 B.3 C.5 D.7,2.(2010.4,单选)执行下列C程序段,循环体被执行的次数是()for(i=0,j=0;(j!=4)|(i 3);j+,i+)printf(%d,j);,2 B.3 C.4 D.无限,历年真题演练,3.(2010.4,程序分析)写出下列C程序的运行结果。,main()int a=7;doswitch(a%2)case 1:a-;break;case 0:a+;break;a-;printf(%5dn,a);while(a0);,历年真题演练,4.(2010.4,程序分析)下列程序是求一个有规律的数值序列:1,1,2,4,7,13,从第4个数开始,每一个数都是它前边3个数的和,一直求到该数列的第n(4n18)个数,填空完成程序。,main()int i=3,n,a=1,b=1,c=2,d;scanf(%d,同步跟踪测评,1.阅读下列代码,说明它的作用,并写出其运行结果。,#includemain()int i=0;int max=10;for(;imax;i+)if(i%2=0)printf(%d,i);,同步跟踪测评,2.运行下列代码,打印出所有100以内的平方值小于100的整数。,main()int i=1;for(;i100;+i)if()printf(%3d,i);,同步跟踪测评,3.设计一个程序,可以通过用户键盘输入来判断用户输入的数是奇数还是偶数(输入值为大于或等于1,并小于100的正整数)。,4.试编写 一个程序,可以判断用户从键盘输入的数是正数,负数,或是零。,三、循环结构程序设计,例题1:,(已知sun=1+2+3+i+,求sun大于12的最大i值及S值。,main()int i,s=0;for(i=1;i12)break;printf(i=%d,s=%dn,i,s);,三、循环结构程序设计,例题2:分析下列程序运行的结果。,x=4,y=4,z=1 B.x=5,y=4,z=1C.x=5,y=4,z=2 D.x=5,y=5,z=1,main()int x=3,y=6,z=0;while(x+!=(y=y-1)z+;if(yx)break;printf(x=%d,y=%d,z=%dn,x,y,z);,例题3:编写求s=1+1/2+1/3+1/100的程序。,例题4:编写求s=1-1/2+1/3-1/4-1/100的程序。,

    注意事项

    本文(计算机软件基础自考.ppt)为本站会员(牧羊曲112)主动上传,三一办公仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知三一办公(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    备案号:宁ICP备20000045号-2

    经营许可证:宁B2-20210002

    宁公网安备 64010402000987号

    三一办公
    收起
    展开