課堂習題
請寫一個程式計算 10! ,也就是 10*9*8*....*1
#include
<
stdio.h
>
int main(){
int num,mult=1;
for(int num=1;num
<
=10;num=num+1){
mult=mult*num;
}
printf("mult=%d\n",mult);
}
2.請寫一個程式印出九九乘法表
#include
<
stdio.h
>
int main(){
int i,j;
for(int i=2;i
<
=9;i++){
for(int j=1;j
<
=9;j++){
printf("%d*%d=%d\t",i,j,i*j);
// \t為tab縮進
}
}
printf("\n");
}
3.請檢查某數是否為質數? 範例: isPrime(17) =>true
#include
<
stdio.h
>
int main(){
int i,j=0,n;
//j=整除的個数
//n=输入的整数
printf("Enter:");
scanf("%d",
&
n);
for(int i=2;i
<
n;i++){
if(n%i==0){
j++;
}
}
if(j
>
0||n==0||n==1) //輸入0跟1的時候-
>
False
printf("False");
else
printf("True");
}
練習習題
題目:有1、2、3、4個數字,能組成多少個互不相同且無重複數字的三位元數?都是多少?
{
int i,j,k;
printf("n");
for(i=1;i<5;i++)
for(j=1;j<5;j++)
for (k=1;k<5;k++)
{if (i!=k&&i!=j
&&j!=k) /*確保i、j、k三位互不相同*/
printf("%d,%d,%dn",i,j,k);}
}
題目:輸入三個整數x,y,z,請把這三個數由小到大輸出。
應用:數學比大小
int x,y,z,t;
scanf("%d%d%d",
&
x,
&
y,
&
z);
if (x
>
y)
{t=x;x=y;y=t;} /*交換x,y的值*/
if(x
>
z)
{t=z;z=x;x=t;}/*交換x,z的值*/
if(y
>
z)
{t=y;y=z;z=t;}/*交換z,y的值*/
printf("small to big: %d %d %dn",x,y,z);
}