2017年6月26日 星期一

排序

以陣列方式 出現則標記

#include <stdio.h>
#include <stdlib.h>

int main()
{   int t,n,j,i;
    int a[100];
    for(i=1;i<=100;i++)
    {a[i]=0;}

    scanf("%d",&n);
    for(j=1;j<=n;j++)
    { scanf("%d",&t);
      a[t]=1;
    }
    printf("\n");
    for(i=1;i<=100;i++)
    {if(a[i]==1)
     printf("%d\n",i);
    }

    return 0;

}



====================另一種方法=================
first step

#include <stdio.h>
#include <stdlib.h>

int main()
{   int t,i,j,a[100];
    printf("請輸入要幾個數字(最多100個) ");
    scanf("%d",&t);
    for(i=1;i<=t;i++)
    {scanf("%d",&a[i]);}
    printf("輸入的數字是\n");
    for(i=1;i<=t;i++)
    {printf("%d\n",a[i]);}

    return 0;
}


the second step

#include <stdio.h>
#include <stdlib.h>

int main()
{   int t,i,j,a[100],r;
    printf("請輸入要幾個數字(最多100個) ");
    scanf("%d",&t);
    for(i=1;i<=t;i++)
    {scanf("%d",&a[i]);}

    printf("輸入的數字是\n");

    for(i=1;i<=t;i++)
    {printf("%d\n",a[i]);}

    for(i=1;i<=t-1;i++)
     {for(j=1;j<=t-1;j++)
       {if(a[j]<a[j+1])
        {r=a[j];a[j]=a[j+1];a[j+1]=r; }
       }
     }
      printf("由大至小的數字是\n");
    for(i=1;i<=t;i++)
    {printf("%d\n",a[i]);}
    return 0;
}

2017年6月20日 星期二

算1000內的質數

#include <stdio.h>
#include <stdlib.h>
int is_prime(int n)
{ int i;
  if(n<=1)
  {return 0;}
  for(i=2;i<n;i++)
  {if(n%i==0)
   return 0;
  }
 return 1;
}

int main()
{ int i,t=1;
  for(i=2;i<1000;i++)
   { if(is_prime(i))
     { t++;
       printf("%4d",i);
       if(t>10)
       {t=1;
        printf("\n");
         }

     }
   }



    return 0;
}

===========================
Eratos 方法

#include <stdio.h>
#include <stdlib.h>

int main()
{   int i,j,t=0;
    int prime[1001];
    for(i=2;i<=1000;i++)
    {prime[i]=1;}
    for(i=2;i*i<=1000;i++)
     {if(prime[i]==1)
       for(j=i*2;j<=1000;j++)
       { if(!prime[j]) continue;
         if(j%i==0) prime[j]=0;
        }
     }
     for(i=2;i<=1000;i++)
     {if(prime[i]==1)
       {printf("%4d",i);
        t++;
        if(t%10==0)
        {printf("\n");}
       }

       }

    return 0;
}


2016年7月3日 星期日

印出 1至10

c

#include <stdio.h>
#include <stdlib.h>

int main()
{   int i=0;
    while(i<10)
    {i++;
    printf("%d\n",i);}

    return 0;
}


===if ===
#include <stdio.h>
#include <stdlib.h>

int main()
{    int i,j=0;
     for(i=0;i<10;i++)
     {if(i<10)
       j++;
       printf("%d\n",j);
       }

    return 0;
}



====php=============

<?php
 $i=0;
  while($i<10)
    { $i++;
      printf("%d ",$i);
     echo "<br>";
    }
?>

===if ===

<?php
$j=0;
for($i=0;$i<10;$i++)
{if($i<10)
  $j++;
  printf("%d",$j);
  echo "<br>";
}




==============
printf 語法 

format

2016年4月3日 星期日

使用字元碼 顯示字元

#include <stdio.h>
#include <stdlib.h>

int main()
{
    printf("Hello world!\n");
    printf("10進位65的字元是%c\n",65);
    printf("10進位97的字元是%c\n",97);
    printf("10進位48的字元是%c\n",48);
    printf("16進位41的字元是%c\n",'\x41');
    printf("8進位81的字元是%c\n",'\101');
    return 0;
}
================================

8位元 16位元 轉換成十進位

#include <stdio.h>
#include <stdlib.h>

int main()
{

    printf("8位元277 轉換成10位元是%d",0277);
    return 0;
}



========================

#include <stdio.h>
#include <stdlib.h>

int main()
{

    printf("16位元277 轉換成10位元是%d",0x277);
    return 0;
}
====================================

2016年1月13日 星期三

陣列1-10 導出的結果和 陣列0-9 結果不同


#include <stdio.h>

#include <stdlib.h>



int main()

{   int a[10],i;

    for(i=1;i<=10;i++)

    {

        a[i]=i*i;

    }

    for(i=1;i<=10;i++)

    {

        printf("a[%d]的值是%d \n",i,a[i]);

    }



    return 0;

}

  比較0-9陣列
終於明白 如果要從編號 1到10的陣列 則是要改成要有11個 a[10] ==>改成 a[11]

2016年1月8日 星期五

array01

#include <stdio.h>
#include <stdlib.h>

int main()
{   int a[10],i;
    for(i=1;i<=10;i++)
    {
        a[i]=i;
        printf("a[%d]是%d\n",i,a[i]);
    }

    return 0;
}

============================
輸入10個數字 列出陣列編號及數字
#include <stdio.h>
#include <stdlib.h>

int main()
{   int a[10],i,t;
    for(i=1;i<=10;i++)
    {  scanf("%d",&t);
        a[i]=t;

    }
    for(i=1;i<=10;i++)
    {
        printf("a[%d]是%d\n",i,a[i]);
    }
    return 0;
}