编写C程序,题目:如果令A、B、C、D······Z分别等于1,2······26个数值,计算百分比(看补充)
比如说:HARDWORK(努力工作):H+A+R+D+W+O+R+K=8+1+18+4+23+15+18+11=98%KNOWLEDGE(知识):K+N+O+W+L+E+...
比如说:
HARD WORK(努力工作):H+A+R+D+W+O+R+K=8+1+18+4+23+15+18+11=98%
KNOWLEDGE(知 识):K+N+O+W+L+E+D+G+E=11+14+15+23+12+5+4+7+5=96%
计算MONEY,STUDY, ATTITUDE对应的百分比,谢谢 展开
HARD WORK(努力工作):H+A+R+D+W+O+R+K=8+1+18+4+23+15+18+11=98%
KNOWLEDGE(知 识):K+N+O+W+L+E+D+G+E=11+14+15+23+12+5+4+7+5=96%
计算MONEY,STUDY, ATTITUDE对应的百分比,谢谢 展开
展开全部
这破题目我是没看出怎么就是个比值,如果一个单词比较长,那就是100多了
下面给个算法,返回%前面的那个整数,使用的时候直接用printf输出fun("MONEY")的值就行了:
int fun(const char *str)
{
int sum = 0;
while (*str)
{
if (*str >= 'A' && *str <= 'Z')
sum += *str - 'A' + 1;
++str;
}
return sum;
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
#include <stdio.h>
int num( char *s )
{
int sum=0;
while( *s )
{
if ( *s >='A' && *s <='Z' )
sum += *s-'A'+1 ;
s++;
}
return sum;
}
int main()
{
char s[100];
gets(s);
printf("%s=%d%%\n", s, num(s) );
return 0;
}
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询