長(zhǎng)沙極客營(yíng)IT夢(mèng)想學(xué)院

7x24小時(shí)咨詢(xún)熱線(xiàn)

400-660-3310

當(dāng)前位置 : 好學(xué)校 長(zhǎng)沙極客營(yíng)IT夢(mèng)想學(xué)院 學(xué)習(xí)資訊 資訊詳情

極客營(yíng)為大家分享十個(gè)基礎(chǔ)C語(yǔ)言小程序

2016-01-11

今天給大家分享10個(gè)比較基礎(chǔ)的C語(yǔ)言的小程序,希望給C語(yǔ)言初學(xué)者帶來(lái)一定幫助。

1、題目:有1、2、3、4個(gè)數(shù)字,能組成多少個(gè)互不相同且無(wú)重復(fù)數(shù)字的三位數(shù)?都是多少?

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

程序源代碼:

main()  {  int i,j,k;  printf("\\n");  for(i=1;i<5;i++) /*以下為三重循環(huán)*/ 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,%d\\n",i,j,k); } }

2、題目:企業(yè)發(fā)放的獎(jiǎng)金根據(jù)利潤(rùn)提成。利潤(rùn)(I)低于或等于10萬(wàn)元時(shí),獎(jiǎng)金可提10%;利潤(rùn)高 于10萬(wàn)元,低于20萬(wàn)元時(shí),低于10萬(wàn)元的部分按10%提成,高于10萬(wàn)元的部分,可可提 成7.5%;20萬(wàn)到40萬(wàn)之間時(shí),高于20萬(wàn)元的部分,可提成5%;40萬(wàn)到60萬(wàn)之間時(shí)高于40萬(wàn)元的部分,可提成3%;60萬(wàn)到100萬(wàn)之間時(shí),高于60萬(wàn)元的部分,可提成1.5%,高于100萬(wàn)元時(shí),超過(guò)100萬(wàn)元的部分按1%提成,從鍵盤(pán)輸入當(dāng)月利潤(rùn)I,求應(yīng)發(fā)放獎(jiǎng)金總數(shù)?

程序分析:請(qǐng)利用數(shù)軸來(lái)分界,定位。注意定義時(shí)需把獎(jiǎng)金定義成長(zhǎng)整型。

程序源代碼:

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、題目:一個(gè)整數(shù),它加上100后是一個(gè)完全平方數(shù),再加上168又是一個(gè)完全平方數(shù),請(qǐng)問(wèn)該數(shù)是多少?

程序分析:在10萬(wàn)以?xún)?nèi)判斷,先將該數(shù)加上100后再開(kāi)方,再將該數(shù)加上268后再開(kāi)方,如果開(kāi)方后 的結(jié)果滿(mǎn)足如下條件,即是結(jié)果。

程序源代碼:

#include "math.h"  main()  {  long int i,x,y,z;  for (i=1;i<100000;i++) { x=sqrt(i+100); /*x為加上100后開(kāi)方后的結(jié)果*/ y=sqrt(i+268); /*y為再加上168后開(kāi)方后的結(jié)果*/ if(x*x==i+100&&y*y==i+268)/*如果一個(gè)數(shù)的平方根的平方等于該數(shù),這說(shuō)明此數(shù)是完全平方數(shù)*/ printf("\\n%ld\\n",i); } }

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

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

程序源代碼:

main()  {  int day,month,year,sum,leap;  printf("\\nplease input year,month,day\\n");  scanf("%d,%d,%d",&year,&month,&day);  switch(month)/*先計(jì)算某月以前月份的總天數(shù)*/  {   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;  /*再加上某天的天數(shù)*/   if(year%400==0||(year%4==0&&year%100!=0))/*判斷是不是閏年*/    leap=1;   else    leap=0;  if(leap==1&&month>2)/*如果是閏年且月份大于2,總天數(shù)應(yīng)該加一天*/  sum++;  printf("It is the %dth day.",sum); }

5、題目:輸入三個(gè)整數(shù)x,y,z,請(qǐng)把這三個(gè)數(shù)由小到大輸出。

程序分析:我們想辦法把小的數(shù)放到x上,先將x與y進(jìn)行比較,如果x>y則將x與y的值進(jìn)行交換,然后再用x與z進(jìn)行比較,如果x>z則將x與z的值進(jìn)行交換,這樣能使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、題目:用*號(hào)輸出字母C的圖案。

程序分析:可先用<|>*<|>號(hào)在紙上寫(xiě)出字母C,再分行輸出。

程序源代碼:

#include "stdio.h"  main()  {  printf("Hello C-world!\\n");  printf(" ****\\n");  printf(" *\\n");  printf(" * \\n");  printf(" ****\\n");  }

7、題目:輸出特殊圖案,請(qǐng)?jiān)赾環(huán)境中運(yùn)行,看一看,Very Beautiful!

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

程序源代碼:

#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表示左對(duì)齊,占3位*/ } printf("\\n");/*每一行后換行*/ } }

9、題目:要求輸出國(guó)際象棋棋盤(pán)。

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

程序源代碼:

#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、題目:打印樓梯,同時(shí)在樓梯上方打印兩個(gè)笑臉。

程序分析:用i控制行,j來(lái)控制列,j根據(jù)i的變化來(lái)控制輸出黑方格的個(gè)數(shù)。

程序源代碼:

#include "stdio.h"  main()  {  int i,j;  printf("\\n");/*輸出兩個(gè)笑臉*/  for(i=1;i<11;i++) { for(j=1;j<=i;j++) printf("%c%c",219,219); printf("\\n"); } }

如果你也有基礎(chǔ)的C語(yǔ)言小程序,歡迎和我們一起分享。

收藏
分享到:

相關(guān)課程

相關(guān)資訊

長(zhǎng)沙極客營(yíng)IT夢(mèng)想學(xué)院

長(zhǎng)沙極客營(yíng)IT夢(mèng)想學(xué)院

認(rèn)證等級(jí)

信譽(yù)良好,可安心報(bào)讀

長(zhǎng)沙極客營(yíng)IT夢(mèng)想學(xué)院

已獲好學(xué)校V2信譽(yù)等級(jí)認(rèn)證

信譽(yù)值

  • (60-80)基礎(chǔ)信譽(yù)積累,可放心報(bào)讀
  • (81-90)良好信譽(yù)積累,可持續(xù)信賴(lài)
  • (91-100)充分信譽(yù)積累,推薦報(bào)讀

與好學(xué)校簽訂讀書(shū)保障協(xié)議:

  • 100%
  • 28
  • 15640
在線(xiàn)咨詢(xún)
;