用C语言编写程序从键盘输入一个正整数数n,输出n! 用C语言编写一个程序,输入任意一个正整数n,输出P({1,2...
\u7528C\u8bed\u8a00\u7f16\u5199\u7a0b\u5e8f\u4ece\u952e\u76d8\u8f93\u5165\u4e00\u4e2a\u6b63\u6574\u6570\u6570n\uff0c\u8f93\u51fan\uff0c\u662f\u4ec0\u4e48\u60c5\u51b5\uff1f#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\u8bed\u8a00\u5b9e\u73b0\u5982\u4e0b\uff1a
#include
void main()
{
int i,j,k,n;
scanf("%d",&n); //\u8f93\u5165\u4e00\u4e2a\u6b63\u6574\u6570n
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\n",i);
//\u5224\u65adi\u7684\u6240\u6709\u771f\u56e0\u5b50\u4e4b\u548c\u662f\u5426\u7b49\u4e8ei\uff0c\u662f\u5219\u8f93\u51fai\u3002
}
}
\u6ce8\u610f\uff1a\u5efa\u8baen\u7684\u53d6\u503c\u5c0f\u4e8e10000\uff0c\u5426\u5219\u7a0b\u5e8f\u8fd0\u884c\u7684\u65f6\u95f4\u5c06\u6bd4\u8f83\u957f\u3002
\u77e5\u8bc6\u6269\u5c55\uff1a\u5b8c\u6570\uff0c\u4e00\u822c\u6307\u5b8c\u5168\u6570\uff0c\u4e00\u4e2a\u81ea\u7136\u6570\u5982\u679c\u5b83\u7684\u6240\u6709\u771f\u56e0\u5b50\uff08\u5373\u9664\u4e86\u81ea\u8eab\u4ee5\u5916\u7684\u7ea6\u6570\uff09\u7684\u548c\u7b49\u4e8e\u8be5\u6570\uff0c\u90a3\u4e48\u8fd9\u4e2a\u6570\u5c31\u662f\u5b8c\u5168\u6570\uff0c\u5982:6\u7684\u771f\u56e0\u5b50\u67091 \u30012\u30013\uff0c6=1+2+3\uff0c\u6240\u4ee56\u662f\u4e00\u4e2a\u5b8c\u5168\u6570\u3002
C\u8bed\u8a00\u5b9e\u73b0\u5982\u4e0b\uff1a
#include
void main()
{
int i,j,k,n;
scanf("%d",&n); //\u8f93\u5165\u4e00\u4e2a\u6b63\u6574\u6570n
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\n",i);
//\u5224\u65adi\u7684\u6240\u6709\u771f\u56e0\u5b50\u4e4b\u548c\u662f\u5426\u7b49\u4e8ei\uff0c\u662f\u5219\u8f93\u51fai\u3002
}
}
\u6ce8\u610f\uff1a\u5efa\u8baen\u7684\u53d6\u503c\u5c0f\u4e8e10000\uff0c\u5426\u5219\u7a0b\u5e8f\u8fd0\u884c\u7684\u65f6\u95f4\u5c06\u6bd4\u8f83\u957f\u3002
\u77e5\u8bc6\u6269\u5c55\uff1a\u5b8c\u6570\uff0c\u4e00\u822c\u6307\u5b8c\u5168\u6570\uff0c\u4e00\u4e2a\u81ea\u7136\u6570\u5982\u679c\u5b83\u7684\u6240\u6709\u771f\u56e0\u5b50\uff08\u5373\u9664\u4e86\u81ea\u8eab\u4ee5\u5916\u7684\u7ea6\u6570\uff09\u7684\u548c\u7b49\u4e8e\u8be5\u6570\uff0c\u90a3\u4e48\u8fd9\u4e2a\u6570\u5c31\u662f\u5b8c\u5168\u6570\uff0c\u5982:6\u7684\u771f\u56e0\u5b50\u67091 \u30012\u30013\uff0c6=1+2+3\uff0c\u6240\u4ee56\u662f\u4e00\u4e2a\u5b8c\u5168\u6570\u3002
编程实现计算n!,也就是n*(n-1)*(n-2)*....*1,可以通过递归函数来实现,具体实现方法:
#include <stdio.h>
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 <stdio.h>
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的阶乘)
5
120
*/
#include <stdio.h> //定义头文件
int main( ) //声明主函数
{
int n,i=1,j=1; //设定数据类型
printf("input n: "); //输入一个正整数
scanf("%d", &n); //输入
while (i<=n) //小于n
{
j=j*i; //求阶乘
i++; //累加
}
printf("%d!=%d
",n,j); //输出j
return 0; //返回主函数值
}
扩展资料:
其他方法得到n的阶乘:
#include <stdio.h>
int prime(int x);
void main( )
{
int m,n;
printf("Please input numbers: ");
scanf("%d",&m);
n=prime(m);
printf("%d! 的阶乘是: %d
", m,n);
}
int prime(int x)
{
int s;
if(x>0)
{
s=prime(x-1)*x;
}
else{
return 1;
}
return s;
源程序如下:
#include <stdio.h>//定义头文件
int main()//声明主函数
{
int n,i=1,jc=1;//设定数据类型
printf("input n: ");//输入一个正整数
scanf("%d", &n);//输入
while (i<=n)//小于n
{
jc=jc*i;//求阶层
i++;//累加
}
printf("%d!=%d\n",n,jc);//输出jc
return 0;//返回主函数值
}
VC++测试如下:
#include <stdio.h>
int main()
{
int input = 0;
int result = 1;
printf("请输入整数n:“);
scanf("%d", &input);
if (input < 2)
result = 1;
else
{
for (int i=2; i<=input; ++i)
result *= i;
}
printf("%d的阶乘 = %d\n", input, result);
}
晚上好楼主,我已经编译通过请看图 谢谢采纳!
#include <stdio.h>
int Cacu(int n)
{
int i,sum=1;
for(i=1;i<=n;i++)
sum=sum*i;
return sum;
}
void main()
{
int n,result;
printf("please input a number for you to operate\n");
scanf("%d",&n);
result=Cacu(n);
printf("the result you want to get is:\n");
printf("%d\n",result);
}
图:
绛旓細printf("1鍒%d涔嬮棿鎵鏈変釜浣嶆暟鏄3鎴5鐨勬暟鐨勫拰涓猴細%d\n", n, sum);return 0;} 鍦ㄨ繖涓绋嬪簭涓紝鎴戜滑浣跨敤 for 寰幆閬嶅巻浠 1 鍒 n 鐨勬墍鏈夋暣鏁帮紝鍒ゆ柇瀹冧滑鐨勪釜浣嶆暟鏄惁涓 3 鎴 5锛屽鏋滄槸锛屽垯灏嗗畠浠殑鍜岀疮鍔犲埌鍙橀噺 sum 涓傛渶缁堣緭鍑哄彉閲 sum 鐨勫硷紝鍗充负棰樼洰鎵姹傘傞渶瑕佹敞鎰忕殑鏄紝棰樼洰瑕佹眰杈撳叆涓...
绛旓細printf("璇杈撳叆涓涓姝f暣鏁!\n"); scanf("%lu",&num); for(i=1;i<=num;i++){ if(num%i==0) cnt++; } printf("姝ゆ暟鍏辨湁%lu涓笉鍚屾鏁存暟鍥犲瓙銆俓n",cnt); return 0;} 鏈洖绛旂敱鎻愰棶鑰呮帹鑽 涓炬姤| 绛旀绾犻敊 | 璇勮 1 0 涓婂笣鏉ヨ嚜鍦扮悆 閲囩撼鐜:66% 鎿呴暱: C/C++ 姹囩紪璇█ 鍏朵粬缂栫▼璇█ 鐧惧害...
绛旓細include<stdio.h>int main(){char a;scanf("%c",&a);printf("%c",a+1);return 0;}
绛旓細鏈汉涔熸槸瀛C璇█鐨勶紝浠ヤ笅鐨绋嬪簭鏄寜鐓т綘鐨勮姹缂栧啓鐨勶細#include <stdio.h> //姹傝緭鍏ユ暟鍚勪綅鏁扮殑绔嬫柟鍜 void main(){ int x,sum=0,j;printf("璇杈撳叆涓涓姝f暣鏁帮細");scanf("%d",&x); //杈撳叆涓涓暟 while(x!=0) //鍒ゆ柇X鏄惁涓洪浂 { j=x%10; //鍙栦釜浣嶆暟瀛 sum+=j*j*...
绛旓細C璇█:缂栧啓涓涓▼搴,浠庨敭鐩樿緭鍏10涓鐢熸垚缁,姹傚钩鍧囨垚缁┿1銆佽櫧鐒秏ain鍑芥暟鍙互浣滀负缁撴瀯浣撴垨鑰呯被鐨勬垚鍛樺嚱鏁帮紝浣嗙浉搴斿湴浼氬け鍘讳綔涓虹▼搴忓嚭鍏ュ彛鐨勫姛鑳姐 C++涓叏灞main鍑芥暟鐨勪功鍐欐牸寮忎笌C璇█瀹屽叏鐩稿悓锛屽姛鑳戒篃瀹屽叏鐩稿悓锛屼笖鍚屼竴C++绋嬪簭鍚屾牱鍙兘鏈変竴涓鍏ㄥ眬main鍑芥暟銆2銆佸惊鐜鍙ヤ腑杩涜10涓暟鐨勭疮鍔犲湪sum閲岄潰锛岀劧鍚...
绛旓細鎮ㄥソ锛屽緢楂樺叴涓烘偍浣滅瓟銆傚彲浠ヤ娇鐢ㄥ涓嬬殑C璇█绋嬪簭浠g爜瀹炵幇锛歩nclude <stdio.h> int main() { int n, fac = 1;printf("璇杈撳叆涓涓姝f暣鏁皀(n<10)锛歕n");scanf("%d", &n);for (int i = 1; i <= n; i++) { fac *= i;} printf("fac = %d\n", fac);return 0;} 杩欓噷浣跨敤...
绛旓細prinft("澶у啓瀛楁瘝鏄細%c\n",ch);} else(printf("璇杈撳叆澶у啓瀛楁瘝");)绀轰緥涓夛細include <stdio.h> main(){ char c; //澹版槑鍙橀噺 scanf("%c",&c); //閿洏涓婂彇鍊 printf("%c %c",c,ch-'a'+'A');//鏈韩鍜屽ぇ鍐欒緭鍑 } ...
绛旓細int n;scanf("%d",&n);if((n%4==0&&n%100!=0)||n%400==0)printf("%d鏄棸骞达紒\n",n);else printf("%d涓嶆槸鏄棸骞达紒\n",n);return 0;} / 2016 2016鏄棸骞达紒/ C璇█鏄竴闂ㄩ氱敤璁$畻鏈缂栫▼璇█锛屽簲鐢ㄥ箍娉涖侰璇█鐨勮璁$洰鏍囨槸鎻愪緵涓绉嶈兘浠ョ畝鏄撶殑鏂瑰紡缂栬瘧銆佸鐞嗕綆绾у瓨鍌ㄥ櫒銆佷骇鐢熷皯閲忕殑...
绛旓細1銆侀鍏堥渶瑕佹墦寮缂栫▼杞欢銆2銆杈撳叆浠ヤ笅绋嬪簭锛#include <stdio.h>int main(){ char str[40]; scanf("%s",&str); printf("%s",str); return 0;}銆3銆佺劧鍚庢寜F5杩愯绋嬪簭銆4銆佺劧鍚庤緭鍏ユ兂瑕佽緭鍏ョ殑瀛楃涓层5銆佹寜鍥炶溅閿紝灏变細寮瑰嚭浣犺緭鍏ョ殑瀛楃涓层6銆佹敞鎰忓瓧绗︿覆鐨勫ぇ灏忥紝鏀瑰彉涓嫭鍙蜂腑鐨勬暟瀛楁敼鍙樿緭鍏...
绛旓細鍦C璇█涓疄鐜鐢ㄩ敭鐩樿緭鍏ヤ竴涓瀛楃涓诧紝骞舵墦鍗板嚭鏉ョ殑瑙e喅鏂规硶濡備笅锛1銆侀鍏堝畾涔変竴涓瓧绗︿覆鏁扮粍锛屽浣犲彲浠ョ粰瀛楃涓100涓暟缁勭┖闂淬傚鍥炬嫭鍙峰唴鏁板瓧鍗充负浣犲畾涔夌殑鏁扮粍澶у皬銆2銆乬ets()鍑芥暟鐢ㄦ潵鑾峰彇閿洏杈撳叆鐨勫瓧绗︿覆锛屾嫭鍙峰唴鐨剆鍗充负瀛楃涓插彉閲忋3銆佹帴鐫鐢╬uts锛堬級鍑芥暟杈撳嚭涔嬪墠鎴戜滑浠庨敭鐩樿鍙栫殑瀛楃涓层傛嫭鍙峰唴涓...