鱼C论坛

 找回密码
 立即注册
查看: 2496|回复: 3

[已解决]为什么输出只有一行啊

[复制链接]
发表于 2023-10-11 16:22:27 | 显示全部楼层
问题出在代码的第6行,多了一个分号;导致循环体被错误地限制在了分号后面的空语句上,而不会执行下面的循环。

修改代码如下所示:
  1. #include<stdio.h>
  2. int main() {
  3.     int n;
  4.     long long sum=0,t=1;
  5.     while(scanf("%d",&n)!=EOF) {
  6.         for(int i=1;i<=n;i++) {
  7.             for(int a=1;a<=i;a++) {
  8.                 t=a*t;
  9.             }
  10.             sum=sum+t;
  11.         }
  12.         printf("%lld\n",sum);
  13.         sum=0;
  14.         t=1;
  15.     }
  16. }
复制代码

修改后的代码会读取输入,进行计算,并输出结果。注意,在每次循环开始时需要将sumt重置为初始值,以便计算下一行的结果。

球一个最佳答案谢谢啦!这对我非常重要!
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2025-11-2 10:06

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表