第四章 1)三种循环结构: a)for() ; while(); do- while()三种。 b)for循环当中必须是两个分号,千万不要忘记。 c)写程序的时候一定要注意,循环一定要有结束的条件,否则成了死循环。 d) do-while()循环的最后一个while();的分号一定不能够丢。(当心上机改错),do-while循环是至少执行一次循环。 2) break 和 continue的差别 记忆方法: break:是打破的意思,(破了整个循环)所以看见break就退出真个一层循环。 continue: 是继续的意思,(继续循环运算),但是要结束本次循环,就是循环体内剩下的语句不再执行,跳到循环开始,然后判断循环条件,进行新一轮的循环。 3)嵌套循环 就是有循环里面还有循环,这种比较复杂,要一层一层一步一步耐心的计算,一般记住两层是处理二维数组的。 4) while((c=getchar())!=’\n’) 和 while(c=getchar() !=’\n’)的差别 先看a = 3 != 2 和 (a=3)!=2 的区别: (!=号的级别高于=号 所以第一个先计算 3!=2) 第一个a的数值是得到的1;第二个a的数值是3。 考试注意点: 括号在这里的重要性。 5)每行输出五个的写法: for(i=0;i<=100;i++) { printf(“%d”,i); if((i+1)%5==0)printf(“\n”); 如果i是从1开始的话,就是if(i%5==0)printf(“\n”); } 6)如何整除一个数: i%5==0表示整除5 I%2==0表示整除2,同时表示是偶数! 7)输入123,输出321逆序输出数据 int a=123; while(i!=0) { printf(“%d”,i); i=i/10;} 8)for只管后面一个语句: int i=3; for(i=3;i<6;i++): printf(“#”): 请问最终打印几个#号?答案为一个! 9)不停的输入,直到输入# 停止输入! 不停的输入,直到输入$停止输入! while( (x=getchar())!=’ # ’ ) while( (x=getchar())!=’ $ ’ ) 不停的输入,直到遇到?停止输入! while( (x=getchar())!=’ ? ’) 解说:一定要注意这种给出了条件,然后如何去写的方法! 10)for循环和switch语句的和在一起考题! 11)多次出现的考题: int k=1 int k=1; while(- -k); while(k- -); printf(“%d”,k); printf(“%d”,k); 结果为0 结果为-1 第五章 1、函数:是具有一定功能的一个程序块,是C语言的基本组成单位。 2、函数不可以嵌套定义。但是可以嵌套调用。 3、函数名缺省返回值类型,默认为 int。 4、C语言由函数组成,但有且仅有一个main函数!是程序运行的开始! 5、如何判断a是否为质数:背诵这个程序! void iszhishu( int a ) { for(i=2;i<a/2;i++) if(a%i==0) printf(“不是质数”); printf(“是质数!”); } 6、如何求阶层:n! 背诵这个程序! int fun(int n) { int p=1; for(i=1;i<=n;i++) p=p*i; return p; } 7、函数的参数可以是常量,变量,表达式,甚至是函数调用。 add(int x,int y){return x+y;} main() { int sum; sum=add(add(7,8),9);请问sum的结果是多少? 结果为24 } 8、 函数的参数,返回数值(示意图): main() { int a = 5,b=6,c; c = add(a,b); printf(“%d”,c); }
调用函数 a,b是实参 整个函数得到一个数值就是 Add函数的返回数值。 int add ( int x, int y) { int z; z=x+y; return z; } 被调用函数 x,y是形式参数 函数返回数值是整型
z就是这个add函数计算后得到的结果,就是函数返回给主程序的返回数值。 程序是在从上往下顺序执行,当碰到了函数add后,把a,b的数值穿给调用函数,程序暂时中断等待返回数值。当得到了返回数值后,再顺序的往下执行 9、一定要注意参数之间的传递 实参和形参之间 传数值,和传地址的差别。(考试的重点) 传数值的话,形参的变化不会改变实参的变化。 传地址的话,形参的变化就会有可能改变实参的变化。 10、函数声明的考查: 一定要有:函数名,函数的返回类型,函数的参数类型。不一定要有:形参的名称。 填空题也可能会考到!以下是终极难度的考题。打横线是函数声明怎么写! int *fun(int a[] , int b[]) { ………….. }已经知道函数是这样。这个函数的正确的函数声明怎么写? int *fun(int *a , int *b) 这里是函数声明的写法,注意数组就是指针 int *fun(int a[] , int b[]) 这种写法也是正确的 int *fun(int b[] , int c[]) 这种写法也是正确的,参数的名称可以随便写 int *fun(int * , int *) 这种写法也是正确的,参数的名称可以不写 11、要求掌握的库函数: a、库函数是已经写好了函数,放在仓库中,我们只需要如何去使用就可以了! b、以下这些库函数经常考到,所以要背诵下来。 abs()、 sqrt()、fabs()、pow()、sin() 其中pow(a,b)是重点。23是由pow(2,3)表示的。 |
|
来自: 昵称29273511 > 《待分类》