• 您現在的位置是:首頁 >要聞 > 2022-04-14 13:55:00 來源:

    科技教程:C語言小程序有哪些經典C語言小程序舉例說明

    導讀 如今越來越多的小伙伴對于C語言小程序有哪些經典C語言小程序舉例說明這方面的問題開始感興趣,看似平靜的每一天,在每個人身上都在發生著各

    如今越來越多的小伙伴對于C語言小程序有哪些經典C語言小程序舉例說明這方面的問題開始感興趣,看似平靜的每一天,在每個人身上都在發生著各種各樣的故事,因為大家現在都是想要了解到此類的信息,那么既然現在大家都想要知道C語言小程序有哪些經典C語言小程序舉例說明,感興趣的小伙伴請隨我一起來看看,廢話不多說,趕緊跟隨小編,讓我們一起來看看吧,希望對您有用。

    C語言是一門通用計算機編程語言,應用廣泛。C語言的設計目標是提供一種能以簡易的方式編譯、處理低級存儲器、產生少量的機器碼以及不需要任何運行環境支持便能運行的編程語言。盡管C語言提供了許多低級處理的功能,但仍然保持著良好跨平臺的特性,以一個標準規格寫出的C語言程序可在許多電腦平臺上進行編譯,甚至包含一些嵌入式處理器(單片機或稱MCU)以及超級電腦等作業平臺。經典C語言小程序10例,今天給大家分享10個比較基礎的C語言的小程序,附上幾個常用的10個小例,希望給C語言初學者帶來一定幫助,熟練運用,舉一反三。

    1、題目:有1、2、3、4個數字,能組成多少個互不相同且無重復數字的三位數?都是多少?

    程序分析:可填在百位、十位、個位的數字都是1、2、3、4。組成所有的排列后再去掉不滿足條件的排列。

    程序源代碼:

    main()

    {

    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!=ki!=jj!=k)    /*確保i、j、k三位互不相同*/

        printf(%d,%d,%d\n,i,j,k);

        }

    }

    2、題目:企業發放的獎金根據利潤提成。利潤(I)低于或等于10萬元時,獎金可提10%;利潤高 于10萬元,低于20萬元時,低于10萬元的部分按10%提成,高于10萬元的部分,可可提 成7.5%;20萬到40萬之間時,高于20萬元的部分,可提成5%;40萬到60萬之間時高于40萬元的部分,可提成3%;60萬到100萬之間時,高于60萬元的部分,可提成1.5%,高于100萬元時,超過100萬元的部分按1%提成,從鍵盤輸入當月利潤I,求應發放獎金總數?

    程序分析:請利用數軸來分界,定位。注意定義時需把獎金定義成長整型。

    程序源代碼:

    main()

    {

    long int i;

    int bonus1,bonus2,bonus4,bonus6,bonus10,bonus;

    scanf(%ld,i);

    bonus1=100000*0.1;bonus2=bonus1+100000*0.75;

    bonus4=bonus2+200000*0.5;

    bonus6=bonus4+200000*0.3;

    bonus10=bonus6+400000*0.15;

     if(i<=100000)

      bonus=i*0.1;

     else if(i<=200000)

         bonus=bonus1+(i-100000)*0.075;

        else if(i<=400000)

            bonus=bonus2+(i-200000)*0.05;

           else if(i<=600000)

               bonus=bonus4+(i-400000)*0.03;

              else if(i<=1000000)

                  bonus=bonus6+(i-600000)*0.015;

                 else

                  bonus=bonus10+(i-1000000)*0.01;

    printf(bonus=%d,bonus);

    }

    3、題目:一個整數,它加上100后是一個完全平方數,再加上168又是一個完全平方數,請問該數是多少?

    程序分析:在10萬以內判斷,先將該數加上100后再開方,再將該數加上268后再開方,如果開方后 的結果滿足如下條件,即是結果。

    程序源代碼:

    #include math.h

    main()

    {

    long int i,x,y,z;

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

     { x=sqrt(i+100);   /*x為加上100后開方后的結果*/

      y=sqrt(i+268);   /*y為再加上168后開方后的結果*/

       if(x*x==i+100y*y==i+268)/*如果一個數的平方根的平方等于該數,這說明此數是完全平方數*/

        printf(\n%ld\n,i);

      }

    }

    4、題目:輸入某年某月某日,判斷這一天是這一年的第幾天?

    程序分析:以3月5日為例,應該先把前兩個月的加起來,然后再加上5天即本年的第幾天,特殊情況,閏年且輸入月份大于3時需考慮多加一天。

    程序源代碼:

    main()

    {

    int day,month,year,sum,leap;

    printf(\nplease input year,month,day\n);

    scanf(%d,%d,%d,year,month,day);

    switch(month)/*先計算某月以前月份的總天數*/

    {

     case 1:sum=0;break;

     case 2:sum=31;break;

     case 3:sum=59;break;

     case 4:sum=90;break;

     case 5:sum=120;break;

     case 6:sum=151;break;

     case 7:sum=181;break;

     case 8:sum=212;break;

     case 9:sum=243;break;

     case 10:sum=273;break;

     case 11:sum=304;break;

     case 12:sum=334;break;

     defaultrintf(data error);break;

    }

    sum=sum+day;  /*再加上某天的天數*/

     if(year%400==0||(year%4==0year%100!=0))/*判斷是不是閏年*/

      leap=1;

     else

      leap=0;

    if(leap==1month>2)/*如果是閏年且月份大于2,總天數應該加一天*/

    sum++;

    printf(It is the %dth day.,sum); }

    5、題目:輸入三個整數x,y,z,請把這三個數由小到大輸出。

    程序分析:我們想辦法把最小的數放到x上,先將x與y進行比較,如果x>y則將x與y的值進行交換,然后再用x與z進行比較,如果x>z則將x與z的值進行交換,這樣能使x最小。

    程序源代碼:

    main()

    {

    int x,y,z,t;

    scanf(%d%d%d,x,y,z);

    if (x>y)

    /*交換x,y的值*/

    if(x>z)

    /*交換x,z的值*/

    if(y>z)

    /*交換z,y的值*/

    printf(small to big: %d %d %d\n,x,y,z);

    }

    6、題目:用*號輸出字母C的圖案。

    程序分析:可先用<|>*<|>號在紙上寫出字母C,再分行輸出。

    程序源代碼:

    #include stdio.h

    main()

    {

    printf(Hello C-world!\n);

    printf( ****\n);

    printf( *\n);

    printf( * \n);

    printf( ****\n);

    }

    7、題目:輸出特殊圖案,請在c環境中運行,看一看,Very Beautiful!

    程序分析:字符共有256個。不同字符,圖形不一樣。

    程序源代碼:

    #include stdio.h

    main()

    {

    char a=176,b=219;

    printf(%c%c%c%c%c\n,b,a,a,a,b);

    printf(%c%c%c%c%c\n,a,b,a,b,a);

    printf(%c%c%c%c%c\n,a,a,b,a,a);

    printf(%c%c%c%c%c\n,a,b,a,b,a);

    printf(%c%c%c%c%c\n,b,a,a,a,b); }

    8、題目:輸出9*9口訣。

    程序分析:分行與列考慮,共9行9列,i控制行,j控制列。

    程序源代碼:

    #include stdio.h

    main()

    {

     int i,j,result;

     printf(\n);

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

      { for(j=1;j<10;j++)

        {

         result=i*j;

         printf(%d*%d=%-3d,i,j,result);/*-3d表示左對齊,占3位*/

         }

       printf(\n);/*每一行后換行*/

       }

    }

    9、題目:要求輸出國際象棋棋盤。

    程序分析:用i控制行,j來控制列,根據i+j的和的變化來控制輸出黑方格,還是白方格。

    程序源代碼:

    #include stdio.h

    main()

    {

    int i,j;

    for(i=0;i<8;i++)

     {

      for(j=0;j<8;j++)

       if((i+j)%2==0)

        printf(%c%c,219,219);

       else

        printf( );

       printf(\n);

      }

    }

    10、題目:打印樓梯,同時在樓梯上方打印兩個笑臉。

    程序分析:用i控制行,j來控制列,j根據i的變化來控制輸出黑方格的個數。

    程序源代碼:

    #include stdio.h

    main()

    {

    int i,j;

    printf(\n);/*輸出兩個笑臉*/

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

     {

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

       printf(%c%c,219,219);

     printf(\n);

      }

    }

    希望大家在這里都能獲得自己需要的東西。

    猜你喜歡

  • 成人app