C语言实验报告(四)(2)

2019-08-01 22:48

}

{

printf(\ }

printf(\ scanf(\}

return 0;

5. 排列数计算

描述: 表示从m个元素中抽出n个元素的排列的个数。

计算公式为:编写一个用户自定义函数,该函

数有一个整数参数,函数的功能是求解这个整数的阶乘,函数的返回值为这个整数的阶乘。编写一个程序,从键盘输入m、n值,分别两次调用用户自定义函数来求解

输入: 多行测试数据,每行两个用空格隔开的整数,0 0 表示结束。

输出: 有多行,对应于非0 0行的排列值。

样例输入: 5 3

8 2 0 0

样例输出: 60

56

·程序代码:

#include \int main(void)

{

double n,m,t;

double x1,x2,i,k,kk; scanf (\ while (n!=0&&m!=0) {

x1=1;

/*if(m

for(i=1;i<=m;i++) {

x1*=i; }

k=m-n; x2=1;

for(i=1;i<=k;i++) {

x2*=i; }

kk=x1/x2;

printf(\ scanf (\ }

return 0; }

6. 素数对

描述: 哥德巴赫猜想大家都知道一点吧.我们现在不是想证明这个结论,而是想在程序语言内部能够表示的数集中,任意取出一个偶数,来寻找两个素数,使得其和等于该偶数.做好了这件实事,就能说明这个猜想是成立的.由于可以有不同的素数对来表示同一个偶数,所以专门要求所寻找的素数对是两个值最相近的,而且素数对中的第一个数不大于第二个数.

输入:输入中是一些偶整数M(6

输出:对于每个偶数,输出两个彼此最接近的素数,其和等于该偶数(要求这两个素数是不等的)。 样例输入: 20

30 40 46

样例输出: 7 13

13 17 17 23 17 29

·程序代码:

#include \int prime(int n) {

int i;

for (i=2;i

int main() {

int m,i;

while(scanf(\ for(i=m/2;i>=2;i--)

if(prime(i)&&prime(m-i)&&i!=m-i) {

printf(\ break; }

return 0;

}

7. 函数表达式计算

描述:计算下列表达式的值:

输入:输入x和n的值,其中x为非负实数,n为正整数。 输出:输出f(x,n),保留2位小数。 样例输入: 3 2 样例输出: 2.00 ·程序代码:

#include \#include \/*

f(x,1)=sqrt(1+x);

f(x,2)=sqrt(2+sqrt(1+x))=sqrt(2+f(x,1));

f(3,x)=sqrt(3+sqrt(2+qrt(1+x)))=sqrt(3+f(x,2)); ......

f(x,n)=sqrt(n+f(x,n-1));*/ double f(double x,int n) {

if(n>1)

return sqrt(n+f(x,n-1)); else

return sqrt(1+x); }

int main() {

int n; double x;

scanf(\ printf(\ return 0; }

8. 递归公约数

描述:递归形式的公约数定义如下:

使用此定义求两个整数的最大公约数。

输入: 有多行,每行为两个用空格隔开的整数。

输出: 对应的有多行,每行为对应输入的两个整数的最大公约数。

样例输入: 12 6 9 5 11 3 样例输出: 6

1 1

·程序代码:

# include \int gcd(int m, int n ) {

if(m%n==0) return n; else

gcd(n,m%n); }

int main(void) {

int a,b;

while (scanf(\ {

printf(\ }

return 0; }


C语言实验报告(四)(2).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:无刷直流电动机控制系统分析

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: