C言語で入力した値の階乗を表示するプログラムを書きましたが、うまくいきません。
#include <stdio.h>
int main()
{
int x = 1; int i; puts("自然数xを入力してください。"); scanf("%d",&x); for(i = 1;i <= x; ++i){ x = x * i; }; printf("xの階乗は%dです。",x); return 0;
}
例えば、xに5を代入して出力すると、xの階乗は-1899959296です。となり、正確な値が表示されません。
何がいけないのかご教授いただけると嬉しいです。よろしくお願いします。

回答3件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2019/07/07 10:58