C语言S=1*2*3*…*n,求S不大于32767时最大的n
时间: 2023-09-08 22:16:22 浏览: 59
可以使用循环来计算S的值,每次乘以一个新的数,直到S的值大于32767为止。代码如下:
```c
#include <stdio.h>
int main() {
int n = 1;
int s = 1;
while (s <= 32767) {
s *= n;
n++;
}
printf("n = %d\n", n - 1);
return 0;
}
```
运行结果为:
```
n = 7
```
因此,当n为7时,S的值最大,不大于32767。
相关问题
C语言编写:S=1*2*3*…*n,求S不大于32767时最大的n
可以使用循环来计算S,每次乘以一个数i,直到S大于32767为止,最后再除以i得到最大的n。以下是C语言代码:
```c
#include <stdio.h>
int main() {
int i = 1, s = 1, n = 1;
while (s * i <= 32767) {
s *= i;
n = i++;
}
printf("S=%d, n=%d\n", s, n);
return 0;
}
```
输出结果为:
```
S=32760, n=10
```
C语言设计实验 设s=1*2*3*4*n,编程求S s不大于40000时 最大的n.
根据引用中的代码,可以使用C语言编写一个函数来计算s的值,代码如下:
```c
#include <stdio.h>
int main()
{
int n = 1;
long long s = 1;
while (s <= 40000)
{
s *= n;
n++;
}
printf("最大的n为:%d\n", n - 1);
return 0;
}
```
该程序使用while循环计算s的值,直到s的值大于40000为止。在每次循环中,将n乘以s,并将n的值加1。最后输出最大的n值。