预习1
目标:了解循环的嵌套
预习1题,自拟题,要求应用循环的嵌套语句,并说明程序循环执行的过程
#include<stdio.h>
void main()
{
int i,j;
printf("1+2=3\n");
printf("1+2+3=6\n");
for(i=4;i<=30;i++) //外循环控制累加范围
{
int sum=0;
for(j=1;j<=i;j++) //内循环进行累加
{
sum=sum+j;
}
printf("1+2+3+...+%d=%d\n",i,sum);
}
}
------------------------------------题目分割线------------------------------------
预习2
目标:了解函数的嵌套与递归
预习2题,自拟题,要求应用递归,并说明程序执行的过程.
//斐波纳契数列
#include<stdio.h>
int fib(int n)
{
if( n == 1 || n == 2) //基本情况
return 1;
else
return fib(n-1)+fib(n-2); //递归定义
}
int main()
{
int i;
for(i = 1 ;i <= 40;i ++) //输出40个数
{
printf("%d\t",fib(i)); //函数调用
}
return 0;
}
------------------------------------题目分割线------------------------------------
预习3
目标:了解位运算
预习3题,自拟题,要求运用位运算符,并说明程序执行的过程.
#include<stdio.h>
void main()
{
int a,b;
int x1,x2,x3,x4,x5,x6;
a=3;
b=5;
x1=a&b; //and运算
x2=a|b; //or运算
x3=a^b; //xor运算
x4=~a; //not运算
x5=a>>b; //shr运算
x6=a<<b; //shl运算
printf("%d\n%d\n%d\n%d\n%d\n%d\n",x1,x2,x3,x4,x5,x6);
}