C语言省二级理论考试复习.ppt_第1页
C语言省二级理论考试复习.ppt_第2页
C语言省二级理论考试复习.ppt_第3页
C语言省二级理论考试复习.ppt_第4页
C语言省二级理论考试复习.ppt_第5页
已阅读5页,还剩25页未读 继续免费阅读

下载本文档

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

文档简介

1,主要内容,C语言文件结构数据类型及对应变量的使用语句算法,2,C语言文件结构,一编译预处理(文件包含、宏定义)二全局变量定义(或外部变量声明)三函数声明四函数定义1函数定义2,3,一编译预处理,1文件包含#includesqrt,pow,fabs,abs,sin,cos,tan,asin,acos,atan#includestrcpy,strcat,strlen,strcmp#includeisalpha,isspace,isalnum,isdigit,isupper,islower,toupper,tolower#includeatoi,atol,atof,itoa,ltoa,4,一编译预处理,2宏定义exp3#definelen(x1,y1,x2,y2)sqrt(x1-x2)*(x1-x2)+(y1-y2)*(y1-y2)Exam2/53#defineN100详情请见第7章编译预处理.ppt,5,二全局变量定义(或外部变量声明),全局变量定义在函数的外部外部变量声明可以在任何位置,6,三函数声明,函数声明可以放在任何位置(函数内/外均可)floatf(floatx),a,b;floatf(floaty),a,b;floatf(float),a,b;,#includevoidmain()floatf(floatx),a,b;scanf(%f,7,四函数定义,返回值类型函数名(参数列表)变量定义(声明)函数声明语句,8,四函数定义,例:编写程序,输入一个正整数n,计算并输出下列算式的值。要求定义和调用函数total(n)计算1+1/2+1/3+1/n,函数返回值的类型是double,9,四函数定义,例:编写程序,输入100个学生的英语成绩,统计并输出该门课程的平均分以及不及格学生的人数。,10,四函数定义,某客户为购房办理商业贷款,选择了按月等额本息还款法,在贷款本金(loan)和月利率(rate)一定的情况下,住房贷款的月还款额(money)取决于还款月数(month),计算公式如下。客户打算在530年的范围内选择还清贷款的年限,想得到一张“还款年限月还款额表”以供参考。money=loan*rate(1+rate)month/(1+rate)month-1)(1)定义函数cal_power(x,n)计算x的n次幂(即xn),函数返回值类型是double。(2)定义函数cal_money(loan,rate,month)计算月还款额,函数返回值类型是double,要求调用函数cal_power(x,n)计算x的n次幂。(3)定义函数main(),输入贷款本金loan(元)和月利率rate,输出“还款年限月还款额表”,还款年限的范围是530年,输出时分别精确到年和元。要求调用函数cal_money(loan,rate,month)计算月还款额。,11,数据类型及对应变量的使用,charch,str80,*pstr;inta,a10,*pa;floatb,b10,*pb;doubled,d10,*pd;,pstr=str;*pstr=1;*(pstr+1)=2;pstr1=3;gets(pstr);pa=a;pa1=1;pa=a2;pa1=1;,structSTUDENTcharname20;intID;charsex;intscore;st,s5,*ps;structSTUDENTstu,stus10;structSTUDENT*pstu=,ps=,12,语句,赋值运算:数学、逻辑、关系ifelseswitch循环:for,dowhile,while转向:break,continue函数调用:库函数、自定义函数,13,算法,素数的判断、统计求阶乘、1/阶乘、幂;数列数组的和,最大/小值、平均值排序:冒泡、选择回文字符串、回文数字(整数各位数字之和),14,素数的判断,intPrime(intn)intisPrime=1;/1表示是素数inti,k=sqrt(n);/k也可以取n/2或n-1;for(i=2;i=k;i+)if(n%i=0)isPrime=0;break;returnisPrime;,return0;,return1;,15,素数的判断,voidmain()intn;scanf(“%d”,/不是素数,素数的统计,intPrime(inta,intn)intnumOfPrime=0;intj,i,k;for(j=0;jk)/aj是素数numOfPrime+;returnnumOfPrime;,17,阶乘100!,inti,t=1;for(i=1;i=100;i+)t*=i;,1/阶乘1/100!,inti;floatt=1;for(i=1;i=100;i+)t/=i;,阶乘之和1!+2!+100!,inti,t=1,sum=0;for(i=1;i=100;i+)t*=i;sum+=t;,18,幂xn,floatx;intn,i,t=1;scanf(%f%d,1/幂1/xn,floatx;intn,i,t=1;scanf(%f%d,数列1+1/2+1/3+1/4+1/100,floatsum=0,t;inti;for(i=1;i100;i+)t=1.0/i;sum+=t;,正负数列1-1/2+1/3-1/4+-1/100,floatsum=0,t;inti;intflag=1;for(i=1;i100;i+)t=1.0/i;t*=flag;sum+=t;flag=-flag;,数组元素的和,floatsum=0;inta10=1,2,3,4,5,6,7,8,9,10,i;for(i=0;i10;i+)sum+=ai;,数组元素的平均值,floatsum=0;inta10=1,2,3,4,5,6,7,8,9,10,i;for(i=0;i10;i+)sum+=ai;sum/=10;,21,数组元素的最大值,inta10=1,2,3,4,5,6,7,8,9,10,i;intmax=a0;for(i=1;i10;i+)if(maxai)max=ai;,22,冒泡法:相邻两元素比较,inta10=10,2,8,4,6,5,7,3,9,1,i,j,temp;for(i=0;iaj+1)temp=aj;aj=aj+1;aj+1=temp;,选择法:某一元素与其后的所有元素进行比较,inta10=10,2,8,4,6,5,7,3,9,1;inti,j,temp;for(i=0;iaj)temp=ai;ai=aj;aj=tem;,inta10=10,2,8,4,6,5,7,3,9,1;inti,j,temp;for(i=0;iaj)k=j;if(k!=i)temp=ai;ai=ak;ak=temp;,24,回文字符串判断,#includeintfun(char*str)intn=strlen(str),i;for(i=0;in/2;i+)if(stri!=strn-i-1)return0;/非回文return1;/是回文,25,回文字符串判断:不用strlen,intfun(char*str)intn=0,i;/计算字符串长度while(strn!=0)n+;for(i=0;in/2;i+)if(stri!=strn-i-1)return0;/非回文return1;/是回文,26,回文字符串判断,#include#includevoidmain()charstr80;inti,n=80;gets(str);for(i=0;in/2;i+)if(stri!=strn-i-1)printf(“Non”);/非回文printf(“Yesn”);/是回文,正确吗?,27,回文数判断:求余得数字除法缩减位数,intfun(longm)intn=0,a20,i;while(m!=0)an=m%10;m/=10;n+;for(i=0;iy?y:x;y%k!=0

温馨提示

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

评论

0/150

提交评论