C语言程序设计

  • 格式:doc
  • 大小:76.50 KB
  • 文档页数:4

C语言程序设计

学院: 电气工程学院 姓名: 蔡 余 敏 分数:

1. 功能:编写函数fun求 1!+2! +3! +„„+n! 的和。在main函数中由键盘输入n值,并输出运算结果。请编写fun函数。

实现程序代码如下:

#include

void main()

{

int n,m;

long int sum;

long int fun(int m);

scanf("%d",&n);

sum=fun(n);

printf("1!+2!+…+%d!= %ld\n",n,sum);

}

long int fun(int n)

{

int i;

long int s=1,sum=0;

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

{

s=s*i;

sum=s+sum;

}

return(sum);

}

2. 功能:从键盘为一维整型数组输入10个整数,调用fun函教找出其中最小的数,并在main函数中输出。请编写fun函数。

实现程序代码如下: #include

int fun(int x[],int n)

{

int i;

for(i=1;i

if(x[0]>x[i])

x[0]=x[i];

return(x[0]);

}

void main()

{

int *p,j,a[10],min;

p=a;

for(j=0;j<10;j++)

scanf("%d",p++);

p=a;

min=fun(p,10);

printf("数组的10个数中最小的数为:%d\n",min);

}

3. 功能:从键盘输入一个大于3的整数,调用函数fun判断其是否素数。然后在main函数中输出相应的结论信息。

实现程序代码如下:

#include

int fun(int x)

{

int i,log=1;

for(i=2;i

if(x%i==0)

{

log=0;

i=x;

}

return(log);

}

void main()

{

int n,j;

printf("从键盘输入一个大于3的整数\n"); scanf("%d",&n);

j=fun(n);

if(j==1)

printf("%d是素数\n",n);

if(j!=1)

printf("%d不是素数\n",n);

}

4. 功能:求5行5列矩阵的主、副对角线上元素之和。注意:两条对角线相交的元素只加一次。

实现程序代码如下:

#include

void main()

{

void fun(int a[][5]);

int i,j,n,x[5][5];

printf("从键盘输入一个5行5列矩阵x[5][5]=\n");

for(i=0;i<5;i++)

for(j=0;j<5;j++)

{

scanf("%d",&n);

x[i][j]=n;

}

fun(x);

}

void fun(int a[][5])

{

int i,j,sum=0;

for(i=0,j=4;i<=4,j>=0;i++,j--)

sum=sum+a[i][i]+a[j][j];

sum=sum-a[2][2];

printf("主副对角线元素之和为:%d\n",sum);

}

5. 功能:调用函数fun判断一个三位数是否“水仙花数”。在main函数中从键盘输入一个三位数,并输出判断结果。请编写fun函数。

实现程序代码如下:

#include

void main()

{

int fun(int n);

int t,x;

printf("从键盘输入一个三位数\n");

scanf("%d",&x);

t=fun(x);

if(t==1)

printf("%d是水仙花数\n",x);

else printf("%d不是水仙花数\n",x);

}

int fun(int n)

{

int i,j,k,log=0;

i=n/100;

j=n%100/10;

k=n%10;

if(n==i*i*i+j*j*j+k*k*k)

log=1;

return(log);

}