C语言题目。编写程序实现,用户输入一个整数n,计算n!并输出。
#include
#include
#include
void main()
{
int a;
char str1[200];
printf("Please input a integer: "); scanf("%d", &a);
itoa(a, str1, 10);
printf("The length of integer=%d", strlen(str1));
}
C语言实现如下:
#include
void main()
{
int i,j,k,n;
scanf("%d",&n); //输入一个正整数n
for(i=2;i<=n;i++)
{
k=0;
for(j=1;j<=i-1;j++)
if(i%j==0) k+=j;
if(k==i) printf("%d
",i);
//判断i的所有真因子之和是否等于i,是则输出i。
}
}
注意:建议n的取值小于10000,否则程序运行的时间将比较长。
知识扩展:完数,一般指完全数,一个自然数如果它的所有真因子(即除了自身以外的约数)的和等于该数,那么这个数就是完全数,如:6的真因子有1 、2、3,6=1+2+3,所以6是一个完全数。
编程实现计算n!,也就是n*(n-1)*(n-2)*....*1,可以通过递归函数来实现,具体实现方法:
#include int Func(int n){if(n < 2)
return 1;
else
return n*Func(n-1);
}
void main(){int n =0,m=0;
printf("请输入一个正整数:")
scanf("%d",&n);
m=Func(n);
printf("%d!=%d
",n,m);}
在以上程序代码中,Func()为递归函数,主函数main()中接收键盘输入整数值后,调用Func()递归函数,首层m=n*(n-1)!,继续递归调用,m=n*(n-1)(n-2)!,这样逐层递归,直到计算出N!。
程序输出结果如下:
扩展资料:
所谓n的阶乘就是从1到n的乘积,所以除了递归法来实现以外,其实我们也可以通过一个for循环,从1到n依次求积同样可以达到计算n!的目地。
具体实现代码如下:
#include
int main() {int n,i,s=1;scanf("%d",&n);
for(i=1;i<=n;i++)//for循环求累积
s=s*i;
printf("%d
",s);
return 0;
}
/*运行结果:(例如求5的阶乘)5120*/
int main()
{
int n,i,j;
scanf("%d",&n);
int sum=1;
for(i=1;i<=n;i++)
{
sum=sum*i;
}
printf("%d\n",sum);
return 0;
}
#include <stdio.h>
main()
{
int n,i,sum=1;
printf("请输入一个数:");
scanf("%d",&n);
for(i=1;i<=n;i++)
sum*=i;
printf("%d\n",sum);
}
C语言题目。编写程序实现,用户输入一个整数n,计算n!并输出。
include<stdio.h> int main(){ int n,i,j;scanf("%d",&n);int sum=1;for(i=1;i<=n;i++){ sum=sum*i;} printf("%d\\n",sum);return 0;}
用Python编写程序:hello.py,要求用户输入姓名并打印“你好,姓名...
name=input("请输入姓名:")print("你好,",name)这段代码首先通过`input()`函数获取用户输入的姓名,然后使用`print()`函数将"你好,姓名!"的问候语输出到屏幕上。Python语言的简洁性和易读性在这一过程中得到了体现,它鼓励程序员使用缩进来组织代码块,而非像C语言那样使用花括号或特定的关键字来...
那位帮我解决c语言题,题目:编写程序,接收用户从键盘上输入的三个整数x...
int i,n,max,min;for(i=0;i<3;i++){ scanf("%d",&n);if(i==0) \/\/初始化max,min max=min=n;if(max<n) \/\/最大值 max=n;if(min>n) \/\/最小值 min=n;} printf("max number %d min number %d\\n",max,min);\/\/输出最大最小值 } ...
编写一个C语言的程序,用于接收用户输入的居住城市
楼主的题目是不是上机题目阿 现在的学生真越来越不像话了 天天就知道玩 string city;bool b=true;while(b){ printf("请输入你所居住的城市:");scanf("%d",&city)if(city=="New York"){ printf("\\n您来自纽约,我也是!");} else { printf("\\n我们居住在不同的城市!");} string coun...
C语言程序题目:由键盘输入三个数a,b,c,按从小到大的顺序输出这三个数...
在C语言中,编写一个程序来接收用户输入的三个数a、b和c,然后按照从小到大的顺序输出这些数字,可以参考以下代码片段:c include int main() { int a, b, c, temp;printf("请输入三个数:");scanf("%d %d %d", &a, &b, &c);\/\/ 判断并交换,使得a是最小的数 if (a > b) { t...
C语言程序题目:由键盘输入三个数a,b,c,按从小到大的顺序输出这三个数...
C语言程序如下:includestdio.h intmain(){ inta,b,c,t;printf(请输入三个数:);scanf(%d%d%d,a,b,c);if(ab){ t=a;a=b;b=t;} if(ac){ t=a;a=c;c=t;} if(bc){ t=b;b=c;c=t;} printf(从小到大的顺序是:%d%d%d\\n,a,b,c);return0;} \/iknow-pic.cdn.bcebos.com...
C语言程序题目:由键盘输入三个数a,b,c,按从小到大的顺序输出这三个数...
在C语言编程中,如果你需要编写一个简单的程序,让用户输入三个数a、b和c,然后以它们的升序输出,可以参考以下代码片段:c include int main() { int a, b, c, temp; \/\/ 定义变量 printf("请输入三个数:"); \/\/ 提示用户输入 scanf("%d %d %d", &a, &b, &c); \/\/ 读取用户输入 ...
求C语言大侠指教。。 题目:用户输入7个数字(整型),输出最大值和最小...
\/\/此题只需要最大值和最小值,所以遍历一次数组就知道了,不需要进行排序 include <stdio.h> int main(){ int i,max,min;int a[7];printf("请输入7个整数,并以空格隔开:\\n");for(i=0;i<7;i++){ scanf("%d",&a[i]);\/\/输入7个整数 } max = a[0];min = a[0];\/\/将最...
求一个C语言程序:编写程序获取用户输入的三个小写字母的ASCII码以及...
include <stdio.h>int main(){ char a[3]; printf("请连续输入3个小写字母,例如:abc :"); scanf("%[a-z]c",&a); \/\/限制只能输入 a-z printf("%c 的ASCII = %d ,大写 = %c \\n",a[0],a[0],a[0]-('a'-'A')); printf("%c 的ASCII = %d ,大...
编写一个c语言程序,定义一个数组含十个整数,当用户输入选择时执行不同...
printf("1,输入数组\\n""2,插入数据\\n""3,显示数组\\n""4,删除数据\\n""5,数组排序\\n""0,退出\\n");scanf("%d",&m);switch(m){ case 1:input(a,&n);display(a,&n);break;case 2:insert(a,&n);display(a,&n);break;case 3:display(a,&n);break;case 4:delet(a,&n);dis...