天天看点

c++经典编程题_C编程经典例题

  1. 3个数的大小排列

#include<stdio.h>

int main()

{

int i,j,k;

printf("请输入三个数:");

scanf("%d,%d,%d",&i,&j,&k);

if(i>j&&i>k)

{

printf("max=%dn",i);

}

else if(j>i&&j>k)

{

printf("max=%dn",j);

}

else

{

printf("max=%dn",k);

}

return 0;

}

  1. 猴子吃桃问题:猴子第一天摘下若干个桃子,当即吃了一半,还不过瘾,又多吃了一个。第二天早上又将第一天剩下的桃子吃掉一半,有多吃了一个。以后每天早上都吃了前一天剩下的一半零一个。到第 10 天早上想再吃时,发现只剩下一个桃子了。编写程序求猴子第一天摘了多少个桃子。

#include<stdio.h>

int main()

{

int Day1,numPeak1,numPeak2;

Day1=9;

numPeak2=1;

while(Day1>0)

{

numPeak1=(numPeak2+1)*2;

numPeak2=numPeak1;

Day1--;

}

printf("桃子总数:%dn",numPeak1);

return 0;

}

  1. 有1、2、3、4个数字,能组成多少个互不相同且无重复数字的三位数?都是多少?

#include<stdio.h>

int main()

{

int i,j,k;

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

{

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

{

for(k=1;k<5;k++)

{

if(i!=j&&i!=k&&j!=k)

{

printf("%d%d%d",i,j,k);

printf("n");

}

}

}

}

return 0;

}

  1. 企业发放的奖金根据利润提成。
  • 利润(I)低于或等于10万元时,奖金可提10%;
  • 利润高于10万元,低于20万元时,高于10万元的部分,可提成7.5%;
  • 20万到40万之间时,高于20万元的部分,可提成5%;
  • 40万到60万之间时高于40万元的部分,可提成3%;
  • 60万到100万之间时,高于60万元的部分,可提成1.5%;
  • 高于100万元时,超过100万元的部分按1%提成。

#include<stdio.h>

int main()

{

int moneypro,moneystand,k;

double Bouns;

moneystand=100000;

printf("请输入当月利润:n");

scanf("%d",&moneypro);

k=(int)(moneypro/moneystand);

switch(k)

{

case 0:

Bouns=moneypro*0.1;

break;

case 1:

Bouns=(moneypro-100000)*0.075;

break;

case 2:

case 3:

Bouns=(moneypro-200000)*0.05;

break;

case 4:

case 5:

case 6:

Bouns=(moneypro-400000)*0.03;

break;

case 7:

case 8:

case 9:

Bouns=(moneypro-600000)*0.015;

break;

case 10:

Bouns=(moneypro-1000000)*0.015;

break;

default:

printf("输入错误n");

}

printf("Bouns=%.2fn",Bouns);

return 0;

}

  1. 数的阶乘运算

#include<stdio.h>

int main()

{

int n,i,M;

M=1;

printf("请输入一个整数:n");

scanf("%d",&n);

if(n<0)

{

printf("请输入一个正整数:n");

}

else

{

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

{

M*=i;

}

}

printf("所输入的数值阶乘值为:%dn",M);

return 0;

}