我用C编写了一个简单的程序来计算数字的阶乘

时间:2016-09-26 04:31:18

标签: c

我在C中创建了一个简单的程序来计算数字的阶乘,但最后我想再次运行程序。我没有看到"按任意键继续",我希望它显示"按任意键再次查找数字的阶乘"。

代码:

#include<stdio.h>
int main()
{
    int facto, i, m ;
    m=1 ;
    printf("Ener a Value : ");
    scanf("%d", &facto) ;
    for( i=facto-1 ; i>m ; i-- )  
        facto *= i ; 
    printf("My Reg num:SP-16/BBS/033\nFactorial of the number : =%d\n", facto );
    system ("pause") ;
} 

3 个答案:

答案 0 :(得分:3)

  

&#34;按任意键继续&#34;

此行来自您的url_update = '<f:uri.action action="updateFileds" absolute="1" noCacheHash="1"/>'; var params = new FormData(jQuery('#updatewindow').get(0)); jQuery.ajax({ url: url_update, type: "POST", data: params, success: function (data) { if (data == 'true') { location.reload(); } else { } } }); 。如果你想:

1 ..找到另一个因子

2 ..打印另一个消息

你应该使用循环和printf,就像这样

system(pause)

答案 1 :(得分:0)

首先,我要指出你的问题仍然很不清楚。如果你的意思是你希望在用户想要的时候连续运行程序,那么我建议将阶乘查找代码放在do-while循环中。 while条件将基于&#39;选择&#39;变量。只有在选择&#39;变量接收输入&#39; n&#39; (因为程序必须在某个时候结束),代码是否会停止重新运行。

#include <stdio.h>

int main(void) {
int facto, i, m ;
char choice='y';

do{
  printf("Ener a Value : ");
  scanf("%d", &facto);
  m=1 ;
  for( i=facto-1 ; i>m ; i-- )  
    facto *= i ; 

  printf("My Reg num:SP-16/BBS/033\nFactorial of the number : =%d\n",facto );
  printf("Press any key to find factorial of a number again");
  scanf("%c", &choice);
  } while(choice!='n');

}

答案 2 :(得分:0)

您的代码非常简单明了。我没有做任何调整的事情。

但是,如果您希望重新运行整个程序一次又一次,那么您应该始终考虑使用具有特定结束条件的循环

尝试此操作(按输入结束程序,其他任何内容将重复此操作)

#include<stdio.h>
int main()
{
    int facto, i, m ;
    m=1 ;
    do {
        fflush(stdin);
        system("cls");
        printf("Ener a Value : ");
        scanf("%d", &facto) ;
        getchar();
        for( i=facto-1 ; i>m ; i-- )  
        facto *= i ; 
        printf("My Reg num:SP-16/BBS/033\nFactorial of the number : =%d\n", facto );
        printf("press any key to find factorial of a number again (Enter to end): ");
    }
    while ( getchar()!='\n');
}