C语言考前复习
1、闰年
2、斐波那契数列,兔子问题
3、输入年月,确认一个月多少天
4、P108 6 红皮书
5、公约数、公倍数
PPT上的内容:
1、5.7.3 break语句和continue语句的区别,主要是continue的使用,结合例5.6
2、例7.16 考察静态局部变量的值。静态局部变量的使用
3、PPT上内容 8.2.4 指针变量作为函数参数
例8.3 用指针在子函数中交换数值
4、ppt 8.3.1 数组元素的指针及8.3.2 在引用数组元素时指针的运算
用指针调用数组元素
1. 判断年份是否是闰年;
# include<stdio.h>
int main()
{
int year;
printf("please input year:");
scanf("%d",&year);
if(((year%100!=0)&&(year%4==0))||(year%400==0))
printf("%d is leap year\n",year);
else
printf("%d is not leap year\n",year);
return 0;
}
2. 斐波那契数列,兔子问题(两题的共同点递归函数调用,且本质一样);
斐波那契数列:(仅供了解)
# include <stdio.h>
int fibo(int);
int main()
{
int n,f;
printf("please input n:");
scanf("%d",&n);
f=fibo(n);
printf("%d\n",f);
return 0;
}
fibo(int n)
{
int f;
if(n==1||n==2)
f=1;
else
f=fibo(n-1)+fibo(n-2);
return f;
}
兔子问题重点掌握(斐波那契数列问题的应用):
问题呈现:
分析
代码实现:
# include <stdio.h>
int tuzi(int);
int main()
{
int mouth,totaltuzi;
printf("please input mouth:");
scanf("%d",&mouth);
totaltuzi=2*tuzi(mouth);
printf("%d\n",totaltuzi);
return 0;
}
tuzi(int n)
{
int t;
if(n==1||n==2)
t=1;
else
t=tuzi(n-1)+tuzi(n-2);
return t;
}
三位数逆序输出问题(和水仙花数考察点相似):
(/是取整;%是取余的问题)
# include <stdio.h>
int main()
{