大神们帮帮忙C语言题: 输入整数n的值,如果0<n<10 求n!并输出,否则输出n的值

如题所述

第1个回答  推荐于2016-06-14
#include<stdio.h>
#include<stdlib.h>

void fu(int);
int main(int argc,char * argv[])
{
int n;
printf("请输入一个数:\n");
scanf("%i",&n);
if(n>0 && n<10)
{
fu(n);
}
else
{
printf("n的值为:%d\n",n);
}
system("p;ause");
return 0;
}
void fu(int n)
{
int i;
static x=1;
for(i=n;i>0;i--)
{
x=x*i;
}
printf("n!是:%d\n",x);
}本回答被提问者和网友采纳
第2个回答  2014-07-11
#include <stdio.h>
#include <stdlib.h>
int main()
{
int N;
int res=1;
printf("请输入N的值:\n");
scanf("%d",&N);
if(N>0&&N<10)
{
for(int i = 1;i<=N;i++)
res*=i;
printf("%d\n",res);
}
else
printf("%d\n",N);
system("pause");
return 0;
}

第3个回答  2014-07-11
#include<stdio.h>
int fun(int n)
{
if(n>=10||n<=0)return n;
else if(n==1)return 1;
else return fun(n-1)*n;
}
int main()
{
int n;
scanf("%d",&n);
printf("%d\n",fun(n));
return 0;
}

c语言,输入一个整数n和n个整数,输出这n个整数的最大值
include<stdio.h>int main(){int n,a,i,t;scanf("%d",&n);scanf("%d",&t); \/\/先读的第一个数要默认成最大的,不然,t的初值是不定的for(i=1;i<n;i++) \/\/循环中再读n-1个数{scanf("%d",&a);if(t<a) t=a;}printf("%d\\n",t);return 0;\/\/} ...

c语言:从键盘任意输入一个整数n,编程计算并输出1-n之间的所有素数之和...
int prime(int x){ int i;for(i=2;i<=(int)sqrt(x);i++)if(x%i==0)return 0;return 1;} void main(){ int n,i,j,sum=2;printf("n=\\n");scanf("%d",&n);printf("小于等于%d的素数\\n",n);if(n>2){ printf("%4d",2);j++;} for(i=3;i<=n;i+=2)if(prime(i...

关于相邻数的问题,求c语言大神帮忙编程啊!!!
a:b;}int main()\/\/原题,数据范围最大支持2^63 - 1 -> -2^63{ long long maxn = 0, sum = 0, maxi = 1LL<<63, a; int n; scanf("%d",&n); while(n--) { scanf("%lld",&a); maxi = max(maxi, a); sum += a; if (sum < 0)...

从键盘输入n个数,求这n个数的和并输出。C语言怎么编???
include<stdio.h> main(){int n,i,a,sum=0;scanf("%d",&n);\/*输入你所要计算的数的个数*\/ printf("\\n");for(i=1;i<=n;i++)\/*依次输入n个数,并求和*\/ {scanf("%d",&a);sum+=a;} printf("%d\\n",sum);return 0;} ...

C语言大神,帮帮忙,从键盘输入一组整数,找出其中3个连续排列的数字。并...
int i,j,flag=1;int islianxu(int a[],int i);\/\/判断是否有连续数的函数申明 printf("请输入三组整型数据(每组数据10个):\\n");for(i=0;i<3;i++)for(j=0;j<10;j++)scanf("%d",&a[i][j]);\/\/开始判断 for(i=0;i<3;i++){ if(islianxu(a[i],10)){ flag=0;for(...

求各位大大帮忙啊,C语言的细胞分裂题目
根据题意,使用递归函数,我的代码,细胞是从第二天才开始分裂。所以N输入值小于等于1,细胞不分裂。如果你想第一天就分裂,把代码*n<=1改成*n<=0。include<stdio.h>int division(int *,int);int main(){ int n; while(1) { printf("请输入N的值(0<N<20):"); scanf...

在c语言中,输入一个数字n,在下一行输入n个数据,用数组。
include<stdio.h> int main(){ int n,a[100],b[100],c[100],i,j,k; scanf("%d",&n); for(i=0;i<n;i++) { scanf("%d",&a[i]); \/\/多了空格,下同 } for(j=0;j<n;j++) { scanf("%d",&b[j]); } for(k=0;k<n;k++) ...

输入两个整数,如果相等输出Yes. ,否则输出No.
include <stdio.h>int main(){ int a,b; scanf("%d%d",&a,&b); puts(a==b?"Yes.":"No."); return 0;}

C语言,输入一个正整数repeat (0<repeat<10),做repeat 次运算 输入正整 ...
i,max,repeat,n,m; scanf("%d",&repeat); \/\/ 数据组数while(repeat--) {scanf("%d",&n); \/\/ 每组数据个数scanf("%d",&max); \/\/ 先读入一个数做基准for(i = 1;i < n; i++) {scanf("%d",&m);if(m > max) max = m;}printf("%d\\n",max);}return 0;} ...

想用c语言写一段代码实现输入一个整数n,求从0加到n的和。
用错了,%d include<stdio.h>int main(){ int n; int sum = 0; int i = 0; printf("Input a number:\\n"); scanf("%d",&n); while(i <= n) { sum += i; i++; } printf("The sum:%d", sum); return 0;} ...

相似回答