C语言程序设计二
#include<stdio.h>
#include<math.h>
//统计给定的n个数中,负数、零和正数的个数。
int main1()
{
int n;
while(scanf("%d",&n)!=EOF)
{
if(n == 0)
break;
int fu = 0,zero = 0 ,zheng = 0 ;
while(n--)
{
float x;
scanf("%f",&x);
if(x == 0)
{
zero++;
}
else if(x < 0)
{
fu++;
}else
{
zheng++;
}
}
printf("%d %d %d\n",fu,zero,zheng);
}
return 0;
}
//数列的定义如下:
//数列的第一项为n,以后各项为前一项的平方根,求数列的前m项的和。
int main2()
{
int n,m;
while(scanf("%d %d",&n,&m)!=EOF)
{
float res = n;
float x = n;
m = m - 1;
while(m--)
{
x = sqrt(x);
res += x;
}
printf("%.2f\n",res);
}
return 0;
}
//水仙花数
int main3()
{
int m,n;
while(scanf("%d %d",&m,&n)!=EOF)
{
if(m>=100&&m<=n&&n<=999)
{
int flag = 0;
for(int i = m;i<=n;i++)
{
int a = i / 100;
int b = (i - a *100) / 10;
int c = (i - a*100 - b * 10) % 10;
int res = pow(a,3)+pow(b,3)+pow(c,3);
if(res == i)
{
if(flag > 0)
printf(" ");
printf("%d",res);
flag++;
}
}
if(flag == 0)
{
printf("no");
}
printf("\n");
}
}
return 0;
}
//多项式求和
int main4()
{
int n;
double res;
int a;
scanf("%d",&n);
while(n--)
{
res = 0;
scanf("%d",&a);
for(int i = 1; i<=a;i++)
{
if(i%2==1)
{
res+=(double)(1.0/i);
}
if(i %2 ==0)
{
res-=(double)(1.0/i);
}
}
printf("%.2lf\n",res);
}
return 0;
}
//素数判定
int main5()
{
int x,y;
int flag;
while(scanf("%d %d",&x,&y)!=EOF)
{
if(x == 0 && y == 0)
break;
if(x>=-39&&x<y&&y<=50)
{
flag = 0;
for(int i=x;i<=y;i++)
{
int res = i*i + i + 41;
for(int j = 2;j<res;j++)
{
if(res % j == 0)
{
flag+=1;
printf("Sorry\n");
break;
}
}
if(flag!=0)
{
break;
}
}
if(flag == 0)
{
printf("OK\n");
}
}
}
return 0;
}
//蟠桃记
int main()
{
int n;
while(scanf("%d",&n)!=EOF)
{
int res = 1;
for(int i = n;i>1;i--)
{
res=(res+1)*2;
}
printf("%d\n",res);
}
return 0;
}
保持好奇心!