资源描述
单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,C,语言复习(,1-8,章),编写程序求,n!,1:,使用,for,循环,#include stdio.h,void main(),int n,sum=1;,printf(,请输入一个数,:);,scanf(%d,printf(,您输入的数是,:%dn,n);,if(n0;n-),sum=sum*n;,printf(,该数的阶乘是,:%dn,sum);,编写程序求,n!,2,:使用,while,循环,void main(),int n,sum=1;,printf(,请输入一个数,:);,scanf(%d,printf(,您输入的数是,:%dn,n);,if(n0),sum=sum*n;,n-;,printf(,该数的阶乘是,:%dn,sum);,编写程序求,n!,3,:使用,do-while,循环,void main(),int n,sum=1;,printf(,请输入一个数,:);,scanf(%d,printf(,您输入的数是,:%dn,n);,if(n0);,printf(,该数的阶乘是,:%dn,sum);,编写程序求,n!,4,:使用函数,#include stdio.h,int fun(int);,void main(),int n,sum=0;,printf(,请输入一个数,:);,scanf(%d,printf(,您输入的数是,:%dn,n);,sum=fun(n);,printf(,该数的阶乘是,:%dn,sum);,编写程序求,n!,4,:使用函数,int fun(int n),int sum=1;,if(n0;n-),sum=sum*n;,return sum;,编写程序求,n!,4,:使用函数(函数嵌套),int fun(int n),if(n0)s=a+b;,if(a0),if(c0)w=a-b;,else t=c;,printf(%d,%d,%dn,s,w,t);,第四章,以下程序段的运行结果是,【】,int,x=1,y=0;,switch(x,),case 1:,switch(y),case 0:printf(*1*);break;,case 1:printf(*2*);break;,case 2:printf(*3*);break;,第四章,若变量都已正确说明,则以下程序段输出为,(),int,a=1,b=2,c=3;,if(a,b),a=b;,b=c;,c=a;,printf(a,=%d b=%d c=%,dn,a,b,c,);,第四章,main(),int,a=1,b=1;,switch(a),case 1:,switch(b),case 0:printf(,“,$,”,);break;,case 1:printf(,“,#,”,);break;,case 2:printf(,“,*,”,);,case 2:printf(,“,”,);,case 3:printf(,“,”,);break;,case 4:printf(,“,&,”,);,第五章,1,掌握,for,循环语句的格式和作用。,for(;),2,掌握,while,循环语句的格式和作用。,while(),3,掌握,do,循环语句的格式和作用。,dowhile();,4,掌握各种跳转语句的格式和作用。,goto,return,break,continue,5,会根据现有的程序,分析出程序功能或写出运行结果。,6,会根据处理问题的需要,选择合适的语句编写出程序。,第五章,注意:,在,for,和,while,语句之后一般没有分号,有分号表示循环体就是分号之前的内容(空循环体),while,(i 100),;,i+;,for,(i=0;i 100;i+),;,printf(%d,i);,if,swtich,while,for,后面的语句只能是一句,因此,多句时别忘了,。,第五章,常用的循环算法:,1,:分解多位数的数字,while(m),k=m%10;/*,求最低位的数字*,/,m=m/10;/*,除去最低位的数字*,/,2,:判断素数,3,:求阶乘,第五章,main(),int,i=1;,doi-;while(i,+);,printf(,“,%d,”,i,-);,A)-1 B)0 C)1 D),陷入死循环,第五章,下面程序段的运行结果是,【,】,。,i=1;a=0;s=1;,do a=,a+s,*i;s=-s;i+;,while(i,=10);,printf(a,=%,d,a,);,第五章,设,x,和,y,均为,int,型变量,则执行下的循环后,y,值为,【】,for(y,=1,x=1;y=10)break;,if(x%2=1),x+=5;continue;,x-=3;,第五章,运行以下程序后,如果从键盘上输入,student#,则输出结果为,【,】,。,#include,main(),int,v1=0,v2=0;char,ch,;,while(ch,=,getchar,()!=#),switch(ch,),case d:,case t:,default:v1+;,case a:v2+;,printf(%d,%dn,v1,v2);,第七章,1,掌握函数的定义、调用和声明的格式。,int f(int n)return n*n;,int f(int n);x=f(10);x=100,2,掌握函数定义中值参数和指针参数的不同作用。,void h(int x,int*a),3,掌握函数的递归定义和调用的概念。调用自身函数,4,掌握函数调用时参数的传递过程和函数体的执行与返回过程。,5,能够根据现有的函数定义分析函数功能,或根据某种功能写出函数定义。,第七章,以下正确的函数定义是,().,A,),double,fun(int,x,int,y),z=,x+y,;return z,;,B)double,fun(int,x,int,y);,int,z;,z=,x+y,;return z,;,C),fun(int,x,y,),int,z;return z,;,D)double,fun(int,x,int,y),double z;,z=,x+y,;return z,;,第七章,对下列递归函数:,int,f(int,n),return(n=0)?1:f(n-1)+2;,函数调用,f(3),的返回值是,().,A)5 B)6 C)7 D),以上均不是,第七章,下列程序的执行结果为,().,float f1(float x),int,k=2;,k=k*x;,return k;,main(),float b=4.3;,printf(%.1f,f1(b);,A)8.6 B)9.0 C)8.0 D)8,第七章,执行下列程序后,变量,a,的值应为,().,f1(float x),return x+1.3;,main(),float a;,a=f1(2.4);,A)3.7 B)3 C)4 D),不确定,第八章 指针,(1),指针,:,某变量的,地址值,称为该变量的指针,。,(2),指针变量:,指针变量,是存放,普通变量地址,的变量,。,指针变量,指向这个普通变量。,11,12,a,b,地址,1010,1012,1010,1012,p,q,地址,100220042006,指针变量,整型变量,指针变量的定义,数据类型 *指针变量名,1;,double*pd,d1,d2;,/*pd,为指向,double,型变量的指针*,/,char *pc,c1,c2;,/*pc,为指向,char,型变量的指针*,/,float *pf,f1,f2;,/*,pf,为指向,float,型变量的指针*,/,定义指针变量必须在变量名前加指针说明符,“*”,。指针变量名,本身不含“*”,号。,定义指针变量后,系统为这个,指针变量,也分配一个存储单元,,这个存贮单元一般都占有固定的字节,(,如,16,位计算机是,2,个字节,),。该存贮单元用于存放普通变量的地址。,指针变量的初始化,char *,str,=“,abcdef,”;,char,str,=“,abcdef,”,*,pf,=,str,;,float f1=3.14,*,pf,=,pf,f1,地址,1000,1000,3.14,str,1000,1000,a b c d e f 0,pf,str,1000,1000,a b c d e f 0,指针变量的引用,float a,,,b,,*,P,;,a=1.23,;,P=,b=,*P,;,printf(“n,%.2f,%.2f,b,*P,);,结果为,:1.23,1.23,p,b,a,地址,1010,地址,1014,1.23,1010,1.23,*,p,
展开阅读全文