n的阶乘;计算1!+2!+3!+4!+...+10!;编写代码,演示多个字符从两边移动,向中间汇聚;求ax^2+bx+c=0的解;写一个程序返回参数二进制中1的个数;6.求两个数的最大公约数。

1.计算n的阶乘。

#include<stdio.h>

int main()

{

int i;

int n;

    int t=1;

printf("请输入一个整数:");

    scanf("%d",&n);

for(i=1;i<=n;i++)

{

       

t=t*i;

 

}

printf("%d!=%d\n",n,t);

return 0;

}

2.计算1!+2!+3!+4!+...+10!

#include<stdio.h>

int main()

{

int i,step=1;

    int sum=0;

    for(i=1;i<=10;i++)

  {  

 

 step=step*i;

      

 

      sum=sum+step;

}

printf("%d\n",sum);

return 0;

}

3.编写代码,演示多个字符从两边移动,向中间汇聚。

#include<stdio.h>

#include<windows.h>

int main()

{

char a1[]="#############";

char a2[]="hello,jingjie";

int len=strlen(a1);

int i=0;

int j=len-1;

printf("%s\n",a1);

    while(i<=j)

{   

    Sleep(1000);

a1[i]=a2[i];

a1[j]=a2[j];

i++;

j--;

    Sleep(1000);

printf("%s\n",a1);  

}

return 0;

}

 

4.求ax^2+bx+c=0的解。

#include<stdio.h>

#include<math.h>

#define ESP 0.0000000001

int main()

{   

float a=0.0,b=0.0,c=0.0;

printf("请输入三个系数:\n");

scanf("%f%f%f",&a,&b,&c);

    if((a>-ESP)&&(a<ESP))

{

printf("不是一元二次方程\n");

 

}

else

{  

float d=b*b-4*a*c;

if((d>-ESP)&&(d<ESP))

{

printf("有两个相等的根:\n%f\n",(-b)/2*a);

}

else if(d>0)

{

printf("有两个不同的根:\n%f  %f\n",((-b)+sqrt(d))/2*a,((-b)-sqrt(d))/2*a);

}

else

{

printf("有两个共轭复根\n");

}

}

 

5.写一个程序返回参数二进制中1的个数;

#include<stdio.h>

int count_one_bit(int n)

{

int count=0;

while(n)

{

count++;

n=n&(n-1);

}

return count;

}

int main()

{

int num=0;

int ret=0;

printf("请输入一个整数:");

scanf("%d",&num);

ret=count_one_bit(num);

printf("该数的二进制中的个数为:%d\n",ret);

return 0;

}

 

6.求两个数的最大公约数。

#include<stdio.h>

int main()

{

int num1,num2;

printf("请输入两个数:");

scanf("%d%d",&num1,&num2);

    printf("%d,%d的最大公约数为:",num1,num2);

while(num1%num2!=0)

{

int tmp=num1%num2;

num1=num2;

num2=tmp;

}

printf("%d\n",num2);

return 0;

}

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 好的,这个问题可以回答。请使用下面的代码段进行: ```cpp #include <iostream> using namespace std; int main() { int n; // n的阶乘 int res = 1; // 结果 cin >> n; for (int i = 1; i <= n; i++) { res *= i; } cout << res << endl; return 0; } ``` 希望以上回答可以帮到你,有其他问题欢迎继续提问。 ### 回答2: 编写一个程序,实现n的阶乘的功能,并从键盘读取输入的n值。 首先,从标准输入读取用户输入的n值。可以使用`input()`函数来实现。 接下来,我们需要定义一个变量`factorial`用于保存计算阶乘的结果。初始值设为1,因为n的阶乘的初始值为1。 然后,使用一个循环来计算n的阶乘。从1到n依次累乘,并将结果保存在`factorial`。循环的结构可以使用`for`来实现。 最后,输出计算得到的n的阶乘结果。 下面是完整的程序代码: ```python n = int(input("请输入一个整数n:")) factorial = 1 for i in range(1, n+1): factorial *= i print(f"{n}的阶乘为:{factorial}") ``` 当我们运行程序时,会提示用户输入一个整数n。如果用户输入的是5,程序计算5的阶乘并输出结果120。 注意:以上程序假设用户输入的是一个正整数。如果输入的是一个负数或者其他类型的非法输入,程序可能会产生错误。可以添加一些输入检查的代码来确保用户输入的是合法的值。 ### 回答3: 编程 n! 的方法有许多种,下面以 Python 语言为例,演示如何从键盘输入 n 的值并计算阶乘。 ```python n = int(input("请输入一个正整数 n:")) # 从键盘输入 n 的值 result = 1 for i in range(1, n+1): result *= i print(f"{n} 的阶乘为:{result}") ``` 首先,我们使用 `int(input(...))` 语句获取用户从键盘输入的值,并将其转换为整数类型,保存到变量 `n` 。 然后,我们初始化变量 `result` 为 1,用于保存阶乘计算结果。 接下来,我们使用 `for` 循环迭代从 1 到 n(包括 n)的整数,每次将当前整数乘以 `result` 的值,并将结果保存到 `result` 。 最后,我们使用 `print` 语句输出计算结果,使用格式化字符串将输入的值 n 和计算阶乘结果显示在输出。 注意,此方法假设用户输入的 n 是正整数。如果用户输入的是负数或零,得到的阶乘结果将为 1。 此外,为了代码的可读性和代码的复用性,我们可以将计算阶乘的过程封装为一个函数,方便多次调用。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值