c语言基础问题

1. 编程实现输入一个数,然后求小于该数的所有正偶数的和,如输入5,那么结果为6(0+2+4)。

2. 设某县2000年工业总产值为200亿元,如果该县预计平均年工业总产值增长率为4.5%,那么多少年后该县年工业总产值将超500亿元?设计程序,并输出结果,同时用for和while实现。

3. 输入一个小于20的数,输出该数的阶乘。(N的阶乘=1*2*3*…*N-1*N)

4. 现有12亿人,按年2%的增长速度,10年后将有多少人?编程实现问题求解。

5. 百钱买百鸡。鸡翁一值钱五,鸡母一值钱3,鸡雏三值钱一。百钱买百鸡,问鸡翁、鸡母、鸡雏各几何?编程实现求解。

第1个回答  2011-10-12
1.
#include <stdio.h>
int main()
{
int a,i,sum=0;
printf("请输入一个整数:");
scanf("%d",&a);
for(i=0;i<a;i+=2)
{
sum=sum+i;
}
printf("小于该数的所有正偶数的和为:%d\n",sum);
return 0;
}
2.
#include <stdio.h>
int main()
{
int n=0,i;
double sum,sum1=1;
while(1)
{
sum=200;
n++;
for(i=0;i<n;i++)
{
sum1=sum1*(1+0.045);
}
sum=200*sum1;
if(sum>5000) break;
else {sum=1;sum=0;}
}
printf("第(%d)年后该县的工业总产值超过500亿\n",n);
return 0;
}
3.
#include <stdio.h>
int main()
{
int n,i,sum=1;
printf("请输入一个小于20的整数:");
scanf("%d",&n);
for(i=1;i<=n;i++)
{
sum=sum*i;
}
printf("n的阶乘为:%d\n",sum);
return 0;
}
4.
#include <stdio.h>
int main()
{
int i;
double sum=1.00,sum1=1;
for(i=0;i<10;i++)
{
sum1=sum1*(1+0.02);
}
sum=12*sum1;
printf("十年后有(%f)人\n",sum);
return 0;
}
5.
#include <stdio.h>
int main()
{
int x,y,z,sign=0,i;
double sum=1.00,sum1=1;
for(x=1;x<21;x++)
{
if(sign==1)break;
for(y=1;y<34;y++)
{
if(sign==1)break;
for(z=3;z<300;z+=3)
{
if((5*x+3*y+(z/3))==100){sign=1;break;}
}
}
}
for(i=0;i<10;i++)
{
sign=0;
}
printf("鸡翁(%d)只,鸡母(%d)只,鸡雏(%d)只\n",x-1,y-1,z-3);
return 0;
}
若对楼主有帮助,就把分给我吧. vc6.0编译后的代码哦!
第2个回答  2011-10-11
//1:

#include<stdio.h>
int main()
{
printf("请输入一数字:");
int i;
scanf("%d",&i);
printf("小于此数的所有正偶数的和为:%d",(i/2+1)*(i/2));
return 0;
}

//2:
#include<stdio.h>
int main()
{
float s1=200.0;
int i=1;
//用for
for(i=1;;i++)
{
s1=s1*(1+0.045);
if(s1>500.0)
break;
}

printf("%d年后超过500亿\n",i);
//用while
i=0;
s1=200;
while(s1<500.0)
{
s1=s1*(1+0.045);
i++;
}
printf("%d年后超过500亿\n",i);
return 0;
}

//3
#include<stdio.h>
int main()
{
printf("输入一个小于20的数:");
int i;
scanf("%d",&i);
int s=1;
for(int f=1;f<=i;f++)
{
s=s*f;
}
printf("\n%d的阶乘为:%d",i,s);
return 0;
}
//4:
#include<stdio.h>
int main()
{
float s=12.0;
for(int i=0;i<10;i++)
{
s=s*(1+0.02);
}
printf("10年后有%f亿人",s);
return 0;
}

//5:

#include<stdio.h>
int main()
{
int i, j, k;
for (k = 0; k <= 100; k += 3)
for (j = 0; j + k <= 100; j++)
{
i = 100 - j - k;
if (i * 5 + j * 3 + k / 3 == 100)
{
if (i==0||j==0||k==0)
continue;
printf("鸡翁=%d只,鸡母=%d只,鸡雏=%d只\n", i, j, k);
}
}
return 0;
}
第3个回答  2011-10-11
1、#include<stdio.h>
main()
{ int n,sum;
printf("输入一个数N:\n");
scanf("%d",&n);
if(n/2==0)
sum=(n+2)n/2;
else
sun=(n+1)(n-1)/2;
printf("输出结果SUM:%d\N",sum);
}
2、#include<stdio.h>
main()
{ int sum,n,i;
sum=200;
n=1;
for(i=1;sum>500;i++)
{ sum=sum*(1+4.5%);
n++;
}
while(n>0)
{ printf("%d年后,产业总值超过500亿",n);
n==0;
}
}
3、#include<stdio.h>
main()
{ int i,sum,s,n
sum=0;
scanf("%d",&n);
for(i=1;i<n;i++)
{ s=1;
for(j=1;j<i;j++)
{ s=s*j;
}
sum=sum+s;
}
printf("sum=%d",sum);
}
4、include<stdio.h>
main()
{ int i,sum=12;
for(i=1;i<=10;i++)
sum=sum*(1+%2);
printf("十年后人口数:%d“,sum);
}
5、#include<stdio.h>
main()
{ int w,z;
for(w=0;w<100;w++)
{ for(z=0;z<100;z++)
{ if(5*w+(100-w-z)*3+z/3==100)
printf("鸡翁:%d\n鸡母:%d\n鸡雏:%d\n",w,100-w-z;z);
}
}
}
第4个回答  2011-10-11
1,

#include <stdio.h>

int main(void)
{
int i, n, sum = 0;
scanf("%d", &n);

for (i = 2; i < n; i += 2)
sum += i;

printf("%d\n", sum);
return 0;
}

2,
#include <stdio.h>

int main(void)
{
int i = 0;
float n = 200.0;

while (n < 500)
{
n *= 1.045;
i++;
}

printf("%d\n", i);
return 0;
}

3,
#include <stdio.h>

int main(void)
{
int i, n;
long long a = 1;

scanf("%d", &n);

for (i = 1; i <= n; i++)
{
a *= i;
}

printf("%lld\n", a);
return 0;
}

4,
#include <stdio.h>

int main(void)
{
int i;
float a = 12.0;

for (i = 0; i < 12; i++)
{
a *= 1.02;
}

printf("%.2f\n", a);
return 0;
}

5,

#include <stdio.h>

int main(void)
{
int i, j, k;

for (k = 0; k <= 100; k += 3)
for (j = 0; j + k <= 100; j++)
{
i = 100 - j - k;
if (i * 5 + j * 3 + k / 3 == 100)
printf("鸡公=%d,鸡母=%d,鸡雏=%d\n", i, j, k);
}
return 0;
}本回答被提问者采纳
第5个回答  2011-10-11
楼上第一题for循环的初始值设成0更合理吧
相似回答