C语言编程 1:输入一行字符,求其中数字,英文字母,空格,其他字符的个数 2:一个球从100米处落

C语言编程
1:输入一行字符,求其中数字,英文字母,空格,其他字符的个数
2:一个球从100米处落下,不断反弹回原高度的一半,求第十次落地时共经过多少米,第十次反弹多高
3:分数列2/1,3/2,5/3,8/5,13/8,21/13。。。求前20项的和

#include <stdio.h>

int main()

{int i,sz=0,zm=0,kg=0,qt=0;

 char s[200];

 gets(s);

 for(i=0;s[i];i++)

   if(s[i]>='0'&&s[i]<='9')sz++;

     else if(s[i]>='A'&&s[i]<='Z'||s[i]>='a'&&s[i]<='z')zm++;

       else if(s[i]==' ')kg++;

         else qt++;

 printf("数字:%d\n英文字母:%d\n空格:%d\n其它字符:%d\n",sz,zm,kg,qt);

 return 0;

}


#include <stdio.h>

int main()

{int i;

 double s,h=100.0;

 s=h;

 for(i=2;i<=10;i++)

  {s+=h;

   h/=2.0;

  }

 printf("总路程:%.6lf米\n第10次反弹高度:%.6lf米\n",s,h);

 return 0;

}


#include <stdio.h>

int main()

{int i,j,k,n;

 double s=0.0;

 i=2;

 j=1;

 for(n=0;n<20;n++)

  {s=(double)i/j;

   k=i+j;

   j=i;

   i=k;

  }

 printf("%.8lf\n",s);

 return 0;

}

温馨提示:答案为网友推荐,仅供参考
第1个回答  2016-10-06
#include <stdio.h>
int main()
{int i,sz=0,zm=0,kg=0,qt=0;
char s[200];
gets(s);
for(i=0;s[i];i++)
if(s[i]>='0'&&s[i]<='9')sz++;
else if(s[i]>='A'&&s[i]<='Z'||s[i]>='a'&&s[i]<='z')zm++;
else if(s[i]==' ')kg++;
else qt++;
printf("数字:%d\n英文字母:%d\n空格:%d\n其它字符:%d\n",sz,zm,kg,qt);
return 0;
}

#include <stdio.h>
int main()
{int i;
double s,h=100.0;
s=h;
for(i=2;i<=10;i++)
{s+=h;
h/=2.0;
}
printf("总路程:%.6lf米\n第10次反弹高度:%.6lf米\n",s,h);
return 0;
}

#include <stdio.h>
int main()
{int i,j,k,n;
double s=0.0;
i=2;
j=1;
for(n=0;n<20;n++)
{s=(double)i/j;
k=i+j;
j=i;
i=k;
}
printf("%.8lf\n",s);
return 0;
}
第2个回答  2016-10-06

1.

char s[100]={"\0"};
scanf("%[^\n]",s);
int len=strlen(s);
int num=0,ch=0,space=0,other=0;
int i;
for(i=0;i<len;i++)
{
if(s[i]>=48 && s[i]<=57)
{
num++;
}
else if((s[i]>=65 && s[i]<=90) || (s[i]>=97 && s[i]<=122))
{
ch++;
}
else if(s[i]==32)
{
space++;
}
else
{
other++;
}
}
printf("\n数字:%d\n字母:%d\n空格:%d\n其它:%d",num,ch,space,other);

第3个回答  2016-10-06
具体一些
相似回答