例 2.1 求从1乘到5 (5的阶乘)
代码
/*求1*2*3*4*5 */
#include <stdio.h>
void main ()
{
int i=1,k=2;
while (k<=5)
{
i=i*k;
k+=1;
}
printf ("%d\n",i);
}
结果
例 2.2 有50个学生,要求输出成绩在80分以上的学生的学号ni和成绩gi
代码
#include <stdio.h>
int main()
{
int i;
int ni [50],gi[50];
for (i=0;i<50;i++)
{
printf ("请输入第%d个学生的学号和成绩\n",i+1);
scanf("%d %d",&ni[i],&gi[i]);
}
printf ("成绩高于80分的学生的学号是:\n");
for (i=0;i<50;i++)
{
if(gi[i]>80)
{
printf("%d ",ni[i]);
}
}
return 0;
步骤
- 将1赋值给i
- 如果gi>=80,则输出ni和gi
- i+1赋值给i
- 如果i<=50,返回到步骤2,继续执行,否则,算法结束
例2.3 判定2000——2500年中的每一年是否为闰年,输出结果
代码
#include <stdio.h>
int main ()
{
int year;
printf ("请输入年份:");
scanf("%d",&year) ;
if (year>=2000&&year<=2500)
{if (year%4==0&&year%100!=0)
printf ("%d为闰年\n",year);
else if (year%400==0)
printf ("%d为闰年\n",year);
else
printf ("%d不为闰年\n",year);
}
return 0;
}
输出:2006
结果
例2.4 求1-1/2+1/3-1/4+…+1/99-1/100
代码
/*例2.4求1-1/2+1/3-1/4+......+1/99-1/100*/
#include <stdio.h>
void main()
{
int i=1;
float sum=0,j=1.0;
for (i=1;i<=100;i++)
{
sum+=j/i;
j=-j;
}
printf ("%f\n",sum);
}
结果
例2.5 给出一个大于或等于三的正整数,判断它是不是一个素数
代码
#include <stdio.h>
int main()
{
int n,i;
printf ("请输入一个大于或等于三的正整数:");
scanf ("%d",&n);
if (n>=3)
{
for (i=2;i<=n-1;i++)
{if (n%i==0)
printf ("不是素数\n");
else
printf ("是素数");
break;
}
}
return 0;
}
输入:31
结果