题目1:1,2,3,4,组成三个不同的且不重复的三位数
int main(int argc, char *argv[])
{
int i,j,k;
int num;
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)
{
num=i*100+j*10+k;
printf("%d ",num);
}
}
}
printf("\n");
}
return 0;
}
题目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
int main(int argc, char *argv[])
{
float money,num;
printf("input money: ");
scanf("%f",&money);
num=money;
if(num<=10)
{
num=num*0.1;
printf("getmoney%f\n",num);
}
else if(num>10&&num<=20)
{
num=0.1+0.075*(num-10);
printf("getmoney%f\n",num);
}
else if(num>20&&num<=40)
{
num=(num-20)*0.05+0.75+0.1;
printf("getmoney%f\n",num);
}
else if(num>40&&num<=60)
{
num=(num-40)*0.03+1+0.72+0.1;
printf("getmoney%f\n",num);
}
else if(num>60&&num<=100)
{
num=(num-60)*0.015+0.6+0.72+0.1;
printf("getmoney%f\n",num);
}
else
{
num=(num-100)*0.01+0.6+0.6+0.72+0.1;
printf("getmoney%f\n",num);
}
return 0;
}
题目3:一个整数,它加上100后是一个完全平方数,再加上168又是一个完全平方数,请问该数是多少?
在liux操作系统下,gcc后编译需要加-lm;
#include
#include
int fun(double num)
{
int s1,s2;
s1=(double)sqrt(num+100);
s2=(double)sqrt(num+168);
if(s1==(double)sqrt(num+100)&&s2==(double)sqrt(num+168))
{
return 1;
}
else
return 0;
}
int main(int argc, char *argv[])
{
for(double i=0;i<10000;i++)
{
if(fun(i))
{
printf("%f",i);
}
}
return 0;
}
题目4:输入6个整数,请把这三个数由小到大输出,冒泡排序
#include
void bubblesort(int *s,int num)
{
int i,j,t;
for(i=0;i=s[j+1])
{
t=s[j];
s[j]=s[j+1];
s[j+1]=t;
}
}
}
}
int main(int argc, char *argv[])
{
int a[6];
printf("input number:");
for(int i=0;i<6;i++)
{
scanf("%d",&a[i]);
}
bubblesort(a,6);
for(int i=0;i<6;i++)
{
printf("%d ",a[i]);
}
return 0;
}
题目5:用*号输出字母c的图案。
#include
int main(int argc, char *argv[])
{
printf(" ***\r\n");
printf(" * \r\n");
printf(" * \r\n");
printf(" * \r\n");
printf(" ***\r\n");
return 0;
}
\r回车符号;
题目6:输出9*9口诀
int main(int argc, char *argv[])
{
int i,j,num;
{
for(i=1;i<10;i++)
{
for(j=1;j<=i;j++)//j<=i;出现三角形,减一半数量,1*6或6*1的出重复出现
{
num=i*j;
printf("%d*%d=%d\t",i,j,num);
}
printf("\n");
}
}
return 0;
}
题目7:古典问题:有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一对兔子,假如兔子都不死,问每个月的兔子总数为多少?
#include
int fbionacci(int month)
{
int number;
if(month==1||month==2)
{
number=1;
return number;
}
number=fbionacci(month-1)+fbionacci(month-2);
return number;
}
int main(int argc, char *argv[])
{
int m;
printf("month:");
scanf("%d",&m);
printf("rabbit number is %d\n",fbionacci(m));
return 0;
}
题目8:将一个正整数分解质因数。例如:输入90,打印出90=2 * 3 * 3 * 5。
int main(int argc, char *argv[])
{
int m,i;
printf("input a number:");
scanf("%d",&m);
printf("%d=",m);
for(i=2;i<=m;i++)
{
while(i!=m)
{
if(m%i==0)
{
printf("%d*",i);
m=m/i;
}
else
{
break;
}
}
}
printf("%d\n",m);
return 0;
}
题目9:输入两个正整数m和n,求其最大公约数和最小公倍数。
#include
int maxdivisor(int a,int b)
{
if(a%b==0)//辗转相除法,递归实现
{
return b;
}
else
{
return (maxdivisor(b,a%b));
}
}
int mindivisor(int m,int n)
{
int num;
num= maxdivisor(m,n);
return m*n/num;
}
int main(int argc, char *argv[])
{
int m1,m2,a1,b1;
printf("input number:");
scanf("%d%d",&m1,&m2);
a1= maxdivisor(m1,m2);
b1=mindivisor(m1,m2);
printf("最大公约数:%d 最小公倍数:%d \n",a1,b1);
return 0;
}
题目11:输入一行字符,分别统计出其中英文字母、空格、数字和其它字符的个数。
#include
#include
void judge(char *p,int n)
{
int i,leave=0,letter=0,figure=0,other=0;
for(i=0;i='A'&&*(p+i)<='z')
{
letter++;
}
else if(*(p+i)>='0'&&*(p+i)<='9')
{
figure++;
}
else
other++;
}
printf("letter=%d leave=%d figure=%d other=%d",letter,leave,figure,other);
}
int main(int argc, char *argv[])
{
char s[10];
gets(s);
judge(s,10);
return 0;
}
题目12:求s=a+aa+aaa+aaaa+aa…a的值,其中a是一个数字。例如2+22+222+2222+22222(此时共有5个数相加),几个数相加由键盘控制。
#include
int power(int a,int b)//不知道a^b怎么搞,那么我们就建造哟个函数求a^b的函数,
{
int m=1;
for(int i=0;i
题目13:一个数如果恰好等于它的因子之和,这个数就称为“完数”。例如6=1+2+3.编程找出1000以内的所有完数。
#include
int main(void)
{
int i,j,sum;
for(i=1;i<1001;i++)
{ sum=0;//注意这里的sum=0赋值一定要在循环内,TMD不然就是运行不出来,找了我好久;
for(j=1;j
题目14:一球从100米高度自由落下,每次落地后反跳回原高度的一半;再落下,求它在第10次落地时,共经过多少米?第10次反弹多高?
#include
void height(double high,double num)
{
double i,sum=0;
for(i=0;i
题目15:从键盘输入两个数,计算他们的加减乘除;
#include
int main(int argc, char *argv[])
{
double a,b;
char c;
printf("a operational relation of b\n");
scanf("%lf%c%lf",&a,&c,&b);
switch(c)
{
case '*':printf("%f%c%f=%.3f",a,c,b,a*b);break;
case '/':printf("%f%c%f=%.3f",a,c,b,a/b);break;
case '+':printf("%f%c%f=%.3f",a,c,b,a+b);break;
case '-':printf("%f%c%f=%.3f",a,c,b,a-b);break;
}
return 0;
}
题目16:猴子吃桃问题:猴子第一天摘下若干个桃子,当即吃了一半,还不瘾,又多吃了一个第二天早上又将剩下的桃子吃掉一半,又多吃了一个。以后每天早上都吃了前一天剩下的一半零一个。到第10天早上想再吃时,见只剩下一个桃子了。求第一天共摘了多少。
#include
int num_peach(int day)
{
int num=1;
for(int j=1;j
题目17:输入年月日判断是这年的第几天。
#include
int leap_year(int year)//判断平年还是闰年
{
if((year%4==0&&year%100!=0)||(year%100==0&&year%400==0))
return 1;
else
return 0;
}
int month_day(int month,int year)//每个月对应的天数
{
int day;
switch(month)
{
case 1:
case 3:
case 5:
case 7:
case 8:
case 10:
case 12:
day=31;break;
case 2:
if(leap_year(year)==0)
{
day=28;
break;
}
else
{
day=29;
break;
}
default: day=30;break;
}
return day;
}
int main(int argc, char *argv[])
{
int year,month,day,sum=0;
printf("please input your data\n");
scanf("%d%d%d",&year,&month,&day);
if(month==1)
{
printf("This is %d of year\n",day);
}
else
{
for(int i=1;i
题目18:输出3到300的素数
#include
int is_prime(int number)
{
int i;
for(i=2;i