以下是我在网上找的几个经典的c语言实例,而且每次编译,原来有些程序有编译问题的已经做了相应的修改。 仅供参考:
【程序1】
主题:有1、2、3、4个数字,但能构成多少互不相同、无重复的数字三位? 有多少?
1 .程序分析:百位、十位、一位可填写的数字均为1、2、3、4。 组成所有数组再走
消除不符合条件的排列。
2 .程序源代码:
主() )
{
int i,j,k;
printf((n );
for(I=1; i5; I )/*以下为三重循环(/
for(j=1; j5; j )
for(k=1; k5; k )
{
if(I!=ki!=jj!=使=k(/) I、j、k的3位相互不同) /
printf(%d%d%d(040 )、I、j、k );
}
}
3 .输出结果:
123 124 132 134 142 143 213 214 231 234 241 243 312 314 321 324 341 342 412 413 421 423 431 432
【程序2】
主题:企业发放的奖金按利润提成。 利润()在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 .程序源代码:
#包含
主() )
{
龙英;
int bnum1、bnum2、bnum4、bnum6、bnum10、bnum;
扫描(' % LD ',I );
bnum1=100000*0.1;
bnum2=bnum1 100000*0.075;
bnum4=bnum2 200000*0.05;
bnum6=bnum4 200000*0.03;
bnum10=bnum6 400000*0.015;
if(I=100000 ) )。
bnum=i*0.1;
ELSEif(I=200000 ) )。
bum=bnum1(I-100000 ) *0.075;
ELSEif(I=400000 ) )。
bnum=bnum2(I-200000 ) *0.05;
ELSEif(I=600000 ) )。
bnum=bnum4(I-400000 ) *0.03;
ELSEif(I=1000000 ) ) ) )。
bum=bnum6(I-600000 ) *0.015;
else
bum=bnum10(I-1000000 ) *0.01;
printf(bnum1=%dn ),bnum1);
printf(bnum2=%dn ),bnum2);
printf(bnum4=%dn )、bnum4);
printf(bnum6=%dn )、bnum6);
printf(bnum10=%dn )、bnum10 );
printf(bnum=%d(n ),bnum );
}
3 .输出结果:
250000
bnum1=10000
bnum2=17500
bnum4=27500
bnum6=33500
bnum10=39500
bnum=20000
【程序3】
问题:整数加上100等于完全平方,再加上168等于完全平方,这个数是多少?
1 .程序分析: 10万以内判断,该数加100后开处方,该数加268后开处方,开处方时
的结果满足以下条件,为结果。 请看具体分析:
2 .程序源代码:
#include 'math.h '
主() )
{
长int I,x,y,z;
for(I=1; i100000; I )
{x=sqrt(I100 ); /*x加100开的处方结果*/
y=sqrt(I268; /*y加168开的处方结果*/
if(x*x==I100y*y==I268 )/*如果某个数的平方根的平方等于该数,则该数为完全平方(/
printf((n%LD(n ),I );
}
}
3 .输出结果:
21
261
1581