c语言编程,计算并输出:S=1+(1+2^0.5)+...+(1+2^0.5+...+n^0.5)

 我来答
wuji0412
2018-01-08 · TA获得超过614个赞
知道小有建树答主
回答量:485
采纳率:77%
帮助的人:121万
展开全部
for循环。
核心语句:S+=S+pow(n,0.5)。
S初始为0,需要math.h。
手打不易,需要代码得下午。
追问
嗯嗯     有时间可以帮忙打一下
风若远去何人留
2018-01-08 · 知道合伙人互联网行家
风若远去何人留
知道合伙人互联网行家
采纳数:20412 获赞数:450122
专业C/C++软件开发

向TA提问 私信TA
展开全部
#include<stdio.h>
#include <math.h>
int main()
{
    double s=0, an=0,bn=0;
    int n,i;
    scanf("%d",&n);
    for(i = 1; i <= n; i ++)
    {
        bn=sqrt(i);
        an+=bn;
        s+=an;
    }
    printf("%lf\n", s);
    return 0;
}
更多追问追答
追问
无错误为什么输不出内容
追答
maybe I found a fool
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
自我编程
2018-01-08 · 科技优质答主
自我编程
采纳数:1481 获赞数:4283

向TA提问 私信TA
展开全部

输入 任意n值,按指定格式打印

还以为你要输出指定格式,白瞎了那么多时间= =

n输入111

#include<stdio.h>
#include<math.h>
#include<malloc.h>
void scpINTtoSTR(char ** str,int len,int num);
int getNumLen(int num);
int funPow10(int n);// 自定义10的次方  原pow函数计算10次方有误差,参数:次方数
int main()
{
    float sum0=0,sum=0;
    int i,j,n,len;
    char *str,*p;
aa: sum0=0,sum=0;
    printf("请输入n:");
    scanf("%d",&n);
    len=getNumLen(n);
    str=(char *)malloc(sizeof(char)*(len+4)*n*n);
    p=str;

    for(i=1;i<=n;i++)
    {
        sum0=0;
        *p++='(';
        for(j=1;j<=i;j++)
        {
            sum0=sum0+pow(j,0.5);
            if(i==1)
            {
                *(--p)='1';
                *(++p)='+';
                p++;

            }
            else if(i>1 && j<i)
            {
                len=getNumLen(j);
                if(len==1)
                    *p++=j+'0';
                else
                    scpINTtoSTR(&p,len,j);

                *p++='^';
                *p++='0';
                *p++='.';
                *p++='5';
                *p++='+';
            }
            else if(j==i)
            {
                len=getNumLen(j);
                if(len==1)
                    *p++=j+'0';
                else
                    scpINTtoSTR(&p,len,j);
                *p++='^';
                *p++='0';
                *p++='.';
                *p++='5';
                *p++=')';
                *p++='+';

            }
        }
        sum=sum+sum0;

    }
    *(--p)='\0';
    printf("%s=",str);
    printf("%f\n\n",sum);
    goto aa;
    return 0;
}
void scpINTtoSTR(char ** str,int len,int num)//把数字转成字符串, 插入到数组指针中
//参数1:字符串指针的地址   参数2:数字字符长度   参数3:要转的整型数字
{
    while(1)
    {
        **str=num/funPow10(len-1)+'0';
        (*str)++;
        num=num%funPow10(len-1);
        len--;
        if(len==1)
        {
            **str=num+'0';
            (*str)++;
            **str='\0';

            break;
        }
    }

}
int getNumLen(int num)//获取整型数字  字符长度
{
    int i,len;
    i=1;
    while(1)
    {
        if(num/pow(10,i)<10 && num>=10)
        {
            len=i+1;
            break;
        }
        else if(num<10)
        {
            len=1;
            break;
        }

        i++;
    }
    return len;
}
int funPow10(int n)// 自定义10的次方  原pow函数计算10次方有误差,参数:次方数
{
    int i,num=1;
    if(n==0)
        return 1;
    else if(n==1)
        return 10;
    else
    {
        for(i=1;i<=n;i++)
        {
            num=num*10;
        }
        return num;
    }

}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式