1.生成不重复的三位数,有1、2、3、4个数字,能组成多少个互不相同且无重复数字的三位数?都是多少?
#include <stdio.h>
#include <stdlib.h>
/*
有1,2,3,4这四个数字,能组成多少个三位没有重复数字的三位数
*/
int main()
{
int i,j,k,s=0;
for(i=1;i<=4;i++)
{
for(j=1;j<=4;j++)
{
for(k=1;k<=4;k++)
{
printf("%d%d%d,",i,j,k);
s++;
}
}
}
printf("共%d个",s);
return 0;
}
111,112,113,114,121,122,123,124,131,132,133,134,141,142,143,144,211,212,213,214,221,222,223,224,231,232,233,234,241,242,243,244,311,312,313,314,321,322,323,324,331,332,333,334,341,342,343,344,411,412,413,414,421,422,423,424,431,432,433,434,441,442,443,444,共64个
Process returned 0 (0x0) execution time : 0.046 s
Press any key to continue.
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,求应发放奖金总数? 程序分析:请利用数轴来分界,定位。注意定义时需把奖金定义成长整型
#include <stdio.h>
#include <stdlib.h>
/*
企业发放的奖金根据利润提成。
利润低于或等于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,求应发放奖金总数?
程序分析:请利用数轴来分界,定位。注意定义时需把奖金定义成长整型
*/
int main()
{
double i;
double bonus1,bonus2,bonus4,bonus6,bonus10,bonus;
printf("请输入所得利润:\n");
scanf("%lf",&i);
bonus1=100000*0.1;
bonus2=bonus1+100000*0.075;
bonus4=bonus2+200000*0.05;
bonus6=bonus4+200000*0.03;
bonus10=bonus6+400000*0.015;
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 if(i>1000000) {
bonus=bonus10+(i-1000000)*0.01;
}
printf("提成为:bonus=%lf",bonus);
printf("\n");
}
3.一个整数,它加上100后是一个完全平方数,再加上168又是一个完全平方数,请问该数是多少?
4.输入某年某月某日,判断这一天是这一年的第几天?
#include <stdlib.h>
/*
输入某年某月某日,判断这一天是这一年的第几天?
*/
int main()
{
int day,mouth,year,sum1,sum;
printf("请输入年月日,eg(2001,10,16)\n");
scanf("%d,%d,%d",&year,&mouth,&day);
switch(mouth)
{
case 1:
sum1=0;
break;
case 2:
sum1=31;
break;
case 3:
sum1=59;
break;
case 4:
sum1=90;
break;
case 5:
sum1=120;break;
case 6:sum1=151;break;
case 7:sum1=181;break;
case 8:sum1=212;break;
case 9:sum1=243;break;
case 10:sum1=273;break;
case 11:sum1=304;break;
case 12:sum1=334;break;
}
sum=sum1+day;
if(mouth>2){
if(year%400==0||(year%4==0&&year%100!=0))
sum=sum+1;
}
else
sum=sum;
printf("这是这一年的第 %d 天。",sum);
printf("\n");
}
5.输入三个整数x,y,z,请把这三个数由小到大输出。