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); }