我正在尝试在turbo c7中使用DOS shell使用cmd在c中运行一个阶乘程序。代码是:
#include<stdio.h>
void main(int argc, char* argv[])
{
int i, n, fact = 1;
n = atoi(argv[1]);
for (i = 1; i <= n; i++)
{
fact = fact * i;
}
printf("Factorial is:%s\n",fact);
}
当我把它作为fact.exe运行时3 o / p是= factorial是:rland c ++ -copyright 1991 borland Intl。 我该怎么办?
答案 0 :(得分:3)
您想打印一个数字,而不是字符串,因此您的格式字符串不正确。
将printf("Factorial is:%s\n",fact);
更改为printf("Factorial is:%d\n",fact);
。