想问一下这里哪里出错,c语言刚学,谢谢 - 爱问答

(爱问答)

想问一下这里哪里出错,c语言刚学,谢谢

/*8、编写函数
  n 2         k 2
求 ∑  2j^2 + ∑ i!(-1)^i  
 j = n 1     i = k 1   */
#include<stdio.h>
#include<math.h>
int main()
{
int f(int n1,int n2,int k1,int k2);
int n1,n2,j,k1,k2,k=0,i,s1=0,s2=0,sum=0,t=1;
printf("输入n1,n2,k1,k2:");
scanf("%d%d%d%d",&n1,&n2,&k1,&k2); 
printf("sum=%d ", sum);
}
int f(int n1,int n2,int k1,int k2)
{
    int n1,n2,j,k1,k2,k=0,i,s1=0,s2=0,sum=0,t=1;
if(n1>n2||k1>k2)
printf("错误! ");
else
    {
      for(j=n1;j<=n2;j++)
       {
      s1=s1+2*j*j;
   }
      for(i=k1;i<=k2;i++)
      {
      k=1;
      t=1;
      while(k<=i)
      {
      t=t*k;
      t++;
    }
    if(i%2==1)
      s2=s2+t*(-1);
    else 
      s2=s2+t;
    }
    sum=s1+s2;
}
return 0;
}

语法上,你把子函数及主函数变量定义搞混了,且你的子函数根本没用

逻辑上,while(k<=i)是死循环,修改的参考

#include<stdio.h> #include<math.h> int main() {    int f(int n1,int n2,int k1,int k2);    int n1,n2,k1,k2; //j,k=0,i,s1=0,s2=0,sum=0,t=1;    ////子程序变量不要放在主程序中    printf("输入n1,n2,k1,k2:");    scanf("%d%d%d%d",&n1,&n2,&k1,&k2);    printf("sum=%d ", f(n1,n2,k1,k2)); /////要调用函数才能有结果的 } int f(int n1,int n2,int k1,int k2) {    int /*n1,n2,j,k1,k2,*/k=0,j,i,s1=0,s2=0,sum=0,t=1;    if(n1>n2||k1>k2)        printf("错误! ");    else {        for(j=n1; j<=n2; j++) {            s1=s1+2*j*j;        }        for(i=k1; i<=k2; i++) {            k=1;            t=1;            while(k<=i) {                t=t*k;                k++; //若是t++,k不变,死循环            }            if(i%2==1)                s2=s2+t*(-1);            else                s2=s2+t;        }        sum=s1+s2;    }    return sum; }

相关标签:谢谢c语言

下一篇:c语言代码不知道错在哪

上一篇:c语言的一道题目,帮帮说一下详细过程

热门标签:
excel 网盘 破解 word dll
最新更新:
微软重新评估新的Outlook的使用时机 联想推出搭载联发科Helio G80芯片组的Tab M9平板 英特尔创新大赛时间确定! 微软Edge浏览器在稳定渠道中推出Workspaces功能 英伟达RTX4060TiGPU推出MaxSun动漫主题! 谷歌地图为用户提供了街景服务! GameSir 在T4 Kaleid中推出了一款出色的控制器! 微软开始在Windows 11 中测试其画图应用程序的新深色模式! LG电子推出全球首款无线OLED电视 英伟达人工智能芯片崭露头角! Steam Deck可以玩什么游戏-Steam Deck价格限时优惠 雷蛇推出CobraPro鼠标 Kindle电子阅读器可以访问谷歌商店吗 Windows10如何加入组策略 window10图片查看器怎么没有了?