求组合数
#include<stdio.h>
double fact(int n);
int main()
{
int m,n;
double result;
printf("Enter m:");
scanf("%d",&m);
printf("Enter n:");
scanf("%d",&n);
result=fact(n)/(fact(m)*fact(n-m));
printf("组合数结果为%.0f",result);
}
double fact(int n)
{
int i,project;
project=1;
for(i=1;i<=n;i++){
project=project*i;
}
return project;
}
分支结构
简单的猜数游戏:
#include<stdio.h>
int main()
{
int mynumber=23;
int yournumber;
printf("input your number:");
scanf("%d",&yournumber);
if(yournumber==mynumber)
printf("Congradulation!Your are right!");
else
if(yournumber>mynumber)
printf("So big!");
else
printf("So small!");
return 0;
}
任何程序都可以通过三种结构实现,顺序结构,分支结构,循环结构。上题就是在if-else实现,,并且在else部分又用了if -else语句,称之为if语句的嵌套。
输入一个正整数n,在输入n个同学的成绩,计算平均分,并统计不及格成绩的学生人数
#include<stdio.h>
int main()
{
int n,i;
int count=0;
double average,grade,sum=0;
scanf("%d",&n);
for(i=1;i<=n;i++)
{
printf("Enter grade%d:",i);
scanf("%lf",&grade);
sum=sum+grade;
if(grade<60){
count=count+1;
}
}
average=sum/n;
printf("Grade average=%.2f",average);
printf("Number of failure is %d",count);
}
多分支结构和else-if语句。? ? ? ? ? ? ? ? ? ? ? ? ? ??
else if 是最常用的实现多分支的方法其一般形式为
if(表达式1)
语句1:
else if(表达式2)
语句2;
...
else if(表达式n-1)
语句n-1;
else
语句n
#include<stdio.h>
int main()
{
double x;
printf("Enter x:");
scanf("%lf",&x);
if(x<0)
printf("y=f(%f)=0",x);
else if(x>15)
printf("y=f(%.1f)=%.1f",x,2.5*x-10.5);
else
printf("y=f(%.1f)=%.1f",x,4.0*x/3);
return 0;
}
?
|