闲着没事,想起学长说过曾经把C语言书上的所有程序都打过一遍,不是很理解,不过反正闲着也是闲着,不如翻看着玩玩,顺便把程序也都打一遍,好久没有打程序了,感觉手速明显不够了啊。。。顺带也把一些简单的小程序汇总一下吧。
1.判断某一年是否为闰年。(闰年:1.能被4整除,但不能被100整除。2.能被100整除,又能被400整除。)
<span style="font-size:18px;">#include <stdio.h>
#include <stdlib.h>
int main()
{
int year,leap;
scanf("%d",&year);
if(year%4==0)
{
if(year%100==0)
{
if(year%400==0)
leap=1;
else leap=0;
}
else leap=1;
}
else leap=0;
if(leap)
printf("%d is",year);
else
printf("%d is not",year);
printf("a leap year.\n");
return 0;
}
</span>
2.求ax^2+bx+c=0方程的解。
<span style="font-size:18px;">#include <stdio.h>
#include <stdlib.h>
#include <math.h>
int main()
{
float a,b,c,disc,x1,x2,realpart,imagpart;
scanf("%f,%f,%f",&a,&b,&c);
printf("The equation");
if(fabs(a)<=1e-6)
printf("is not a quadratic\n");
else
{
disc =b*b-4*a*c;
if(fabs(disc)<=1e-6)
printf("has two equal roots:%8.4f\n",-b/(2*a));
else
if(disc>1e-6)
{
x1=(-b+sqrt(disc))/(2*a);
x2=(-b-sqrt(disc))/(2*a);
printf("has distinct real roots:%8.4f and %8.4f\n",x1,x2);
}
else
{
realpart=-b/(2*a);
imagpart=sqrt(-disc)/(2*a);
printf(" has complex roots:\n");
printf("%8.4f+%8.4fi\n",realpart,imagpart);
printf("%8.4f-%8.4fi\n",realpart,imagpart);
}
}
return 0;
}</span>
3.1到100的求和。
while型:
<span style="font-size:18px;">#include <stdio.h>
#include <stdlib.h>
int main()
{
int i,sum=0;
i=1;
while(i<=100)
{
sum=sum+i;
i++;
}
printf("%d\n",sum);
return 0;
}</span>
do……while型&