这是我在这里发表的第一篇文章。我想问一下我正在为家庭作业做的问题。
我应该为"前5个阶乘"构建一个for循环。并将结果显示为表格。我按照书中的一个例子,然后设置了循环和操作,但我不知道如何在表格中生成循环。这是我的计划:
#include <stdio.h>
int main(void) {
//Problem: Display a range for a table from n and n^2, for integers ranging from 1-10.
int n, factorialnumber, i;
printf("TABLE OF FACTORIALS\n");
printf("n n!\n");
printf("--- -----\n");
for (n = 1; n <= 10; n++) {
factorialnumber = factorialnumber * n;
printf("\n %i = %i", factorialnumber, n);
}
return 0;
}
我知道这里的printf是错的。我会输入什么? 顺便说一句,我正在使用代码块。
答案 0 :(得分:2)
问题是你没有初始化变量(例如factorialnumber
)。如果它的初始值为6984857,那么整个算法就会搞砸了。
试试这个:
#include <stdio.h>
int main(void) {
//Problem: Display a range for a table from n and n^2, for integers ranging from 1-10.
int i, factorialnumber = 1;
int n = 10; // Max number to go through
printf("TABLE OF FACTORIALS\n");
printf("i i!\n");
printf("--- -----\n");
for (i = 1; i <= n; i++) {
factorialnumber *= i;
printf("%d! = %d\n", i, factorialnumber);
}
return 0;
}