摘苹果
陶陶家的院子里有一棵苹果树,每到秋天树上就会结出10个苹果。苹果成熟的时候,陶陶就会跑去摘苹果。陶陶有个30厘米高的板凳,当他不能直接用手摘到苹果的时候,就会踩到板凳上再试试。现在已知10个苹果到地面的高度(已知在100cm到200cm之间,包括100cm和200cm),以及陶陶把手伸直时能达到的最大高度(已知在100cm到120cm之间,包括100cm和120cm),请你编写程序帮助陶陶计算一下他能摘到的苹果数目。假设他碰到苹果,苹果就会掉下来。函数原型:int GetApple(int a[], int height, int n);函数功能:计算淘淘能摘到的苹果数目函数参数:数组a保存苹果到地面的高度;height代表陶陶把手伸直时能达到的最大高度;n为苹果数函数返回值:淘淘能摘到的苹果数目
#include <stdio.h>
int GetApple(int a[], int height, int n)
{
int i;
for(i = 0;i < 10; i++)
{
if(a[i] <= height)
n++;
}
return n;
}
int main()
{
int n,a[11],he,i,m;
n=0;
for(i = 0;i < 10; i++)
{
scanf("%d",&a[i]);
}
scanf("%d",&he);
he=he+30;
m=GetApple(a,he,n);
printf("%d",m);
return 0;
}
好数对
已知一个集合A,对A中任意两个不同的元素求和,若求得的和仍在A内,则称其为好数对。例如,集合A={1 2 3 4},1+2=3,1+3=4,则1,2和1,3 是两个好数对。编写程序求给定集合中好数对的个数。注:集合中最多有1000个元素,元素最大不超过10000
#include <stdio.h>
int bubble(int a[],int n,int m)
{
int i,fa=0;;
for(i=0;i<n;i++)
{
if(a[i]==m)
fa=1;
}
return fa;
}
int main()
{
int a[1001],b,n,m,i,j,count;
scanf("%d",&n);
for(i = 0;i < n;i ++)
{
scanf("%d",&a[i]);
}
m=0;
for(i = 0;i < n-1;i ++)
{
for(j = i+1;j < n;j ++)
{
count=a[i]+a[j];
b = bubble(a,n,count);
m+=b;
}
}
printf("%d",m);
return 0;
}
组合三位数
将0到9这十个数字分成三个3位数,要求第一个3位数,正好是第二个3位数的1/2,是第三个3位数的1/3。问应当怎样分,编写程序实现。
#include<stdio.h>
int combination(int x,int y,int z)
{
int i,j,k,a[10]={0};
k=0;
while(x>0)
{
j=x%10;
a[j]++;
x=x/10;
}
while(y>0)
{
j=y%10;
a[j]++;
y=y/10;
}
while(z>0)
{
j=z%10;
a[j]++;
z=z/10;
}
for(i=0;i<10;i++)
{
if(a[i]==1)
k++;
}
return k;
}
int main()
{
int i,j,n,m;
for(i=100;i<339;i++)
{
n=i*2;
m=i*3;
j=combination(i,n,m);
if(j==9)
{
printf("%d,%d,%d\n",i,n,m);
}
}
return 0;
}
求100以内的最大素数
编程计算n(n<=500)以内的10个最大素数及其和,分别输出这最大的10个素数及其和。n的值要求从键盘输入。要求10个素数按从大到小的顺序输出。程序运行示例1:
Input n(n<=500):10↙
7 5 3 2
sum=17
#include<stdio.h>
int main()
{
int i,j,f,k=0,n,a[12]={0},b=0,sum=0;
printf("Input n(n<=500):");
scanf("%d",&n);
for(i=n;i>1;i--)
{
f=1;
for(j=2;j<i;j++)
{
if(i%j==0)
{
f=0;
break;
}
}
if(f==1)
{
a[b]=i;
k++;b++;
}
if(k==10)
break;
}
for(i=0;i<k;i++)
{
printf("%6d",a[i]);
sum+=a[i];
}
printf("\nsum=%d\n",sum);
return 0;
}
第四题我打算使用开平方根的方式来减少运行时间但是提交的时候,出现了部分案例不能通过,只好采用笨方法