程式=數據結構+演算法
演算法:解決問題的方法步驟
這一章的兩個重點問題:閏年和素數
先分析閏年的條件(滿足下面 下麪其一):
方法一:(繁瑣,多個條件一步步判斷)
要特別注意花括號的位置,判斷流程,寫法可以有多種
#include<stdio.h>
int main()
{
int year;
printf("請輸入年份(例如2020):\n");
scanf("%d",&year);
if(year%4==0)
{ if(year%100!=0)
printf("這一年是閏年\n");
if(year%400==0)
printf("這一年是閏年\n");}
else
printf("這一年是平年\n");
return 0;
}
方法二:(簡潔,一次性判斷)
#include<stdio.h>
int main()
{
int year;
printf("請輸入年份(例如2020):\n");
scanf("%d",&year);
if(year%4==0&&year%100!=0||year%400==0)
printf("這一年是閏年\n");
else
printf("這一年是平年\n");
return 0;
}
什麼是素數:除了1和它本身,不能被其他任何整數整除
#include<stdio.h>
#include<math.h>
int main()
{
int number,i,k;
printf("請輸入要判斷的整數:\n");
scanf("%d",&number);
k=(int)sqrt(number);
for(i=2;i<=k;i++)
if(number%i==0)
break;
if(i>k)
printf("這個數是素數\n");
else
printf("這個數不是素數\n");
return 0;
}