2024年5月12日发(作者:)
C语言经典程序100题(答案版)
【程序1】
题目:企业发放的奖金根据利润提成。利润(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,求应发
放奖金总数?
1.程序分析:请利用数轴来分界,定位。注意定义时需把奖金定义成长整型。
2.程序源代码:
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
#include"stdio.h"
#include"conio.h"
main()
{
longinti;
intbonus1,bonus2,bonus4,bonus6,bonus10,bonus;
scanf("%ld",&i);
bonus1100000*0.1;
bonus2bonus1+100000*0.75;
bonus4bonus2+200000*0.5;
bonus6bonus4+200000*0.3;
bonus10bonus6+400000*0.15;
if(i<100000)
bonusi*0.1;
elseif(i<200000)
bonusbonus1+(i-100000)*0.075;
elseif(i<400000)
bonusbonus2+(i-200000)*0.05;
elseif(i<600000)
bonusbonus4+(i-400000)*0.03;
elseif(i<1000000)
bonusbonus6+(i-600000)*0.015;
else
bonusbonus10+(i-1000000)*0.01;
printf("bonus%d",bonus);
getch();
}
【程序2】
题目:有1、2、3、4个数字,能组成多少个互不相同且无重复数字的三位数?都是多少?
1.程序分析:可填在百位、十位、个位的数字都是1、2、3、4。组成所有的排列后再去掉
不满足条件的排列。
2.程序源代码:
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
#include"stdio.h"
#include"conio.h"
main()
{
inti,j,k;
printf("n");
for(i1;i<5;i++)/*
以下为三重循环
*/
for(j1;j<5;j++)
for(k1;k<5;k++)
{
if(i!k&&i!j&&j!k)/*
确保
i
、
j
、
k
三位互不相同
*/
printf("%d,%d,%dn",i,j,k);
}
getch();
}
【程序3】
题目:输入某年某月某日,判断这一天是这一年的第几天?
1.程序分析:以3月5日为例,应该先把前两个月的加起来,然后再加上5天即本年的第几
天,特殊情况,闰年且输入月份大于3时需考虑多加一天。
2.程序源代码:
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
#include"stdio.h"
#include"conio.h"
main()
{
intday,month,year,sum,leap;
printf("npleaseinputyear,month,dayn");
scanf("%d,%d,%d",&year,&month,&day);
switch(month)/*
先计算某月以前月份的总天数
*/
{
case1:sum0;break;
case2:sum31;break;
case3:sum59;break;
case4:sum90;break;
case5:sum120;break;
case6:sum151;break;
case7:sum181;break;
case8:sum212;break;
case9:sum243;break;
case10:sum273;break;
case11:sum304;break;
case12:sum334;break;
default:printf("dataerror");break;
发布者:admin,转转请注明出处:http://www.yc00.com/web/1715466887a2622765.html
评论列表(0条)