#include<stdio.h>
void input(int *p) {
int a[5],i;
p=a;
for(i=0; i<5; i++)
scanf("%d ",&a[i]);
}//输入
double fact(int n) {
double sum=1;
int i;
for(i=1; i<=n; i++)
sum=sum*i;
return sum;
}//求阶乘
void output(int *p) {
int i;
int a[5];
input(p);
for(i=0; i<5; i++) {
if(a[i]<1) a[i]=0;
else a[i]=fact(i);
}
for(i=0;i<5;i++)
printf("%.0f ",a[i]);
}//如果这个数小于1 则输出0;
//如果是大于等于1,则输出该数的阶乘
//输出这个数组
int main() {
int a[5],i;
input(a);//输入五个数
output(a);//输出五个数
}
C语言关于函数的调用
- 写回答
- 好问题 0 提建议
- 追加酬金
- 关注问题
- 邀请回答
-
2条回答 默认 最新
- _GX_ 2022-01-28 12:38关注
帮你修改好了
#include <stdio.h> // 输入 void input(int *a, int n) { for (int i = 0; i < n; i++) scanf("%d", &a[i]); } // 求阶乘 double fact(int n) { double sum = 1; for (int i = 1; i <= n; i++) sum = sum * i; return sum; } // 如果这个数小于1 则输出0; // 如果是大于等于1,则输出该数的阶乘 void output(int *a, int n) { for (int i = 0; i < n; i++) { if (a[i] < 1) printf("0 "); else printf("%.0lf ", fact(a[i])); } } int main() { const int n = 5; int a[n]; input(a, n); // 输入五个数 output(a, n); // 输出五个数 }
本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 1无用
悬赏问题
- ¥15 求差集那个函数有问题,有无佬可以解决
- ¥15 【提问】基于Invest的水源涵养
- ¥20 微信网友居然可以通过vx号找到我绑的手机号
- ¥15 寻一个支付宝扫码远程授权登录的软件助手app
- ¥15 解riccati方程组
- ¥15 display:none;样式在嵌套结构中的已设置了display样式的元素上不起作用?
- ¥15 使用rabbitMQ 消息队列作为url源进行多线程爬取时,总有几个url没有处理的问题。
- ¥15 Ubuntu在安装序列比对软件STAR时出现报错如何解决
- ¥50 树莓派安卓APK系统签名
- ¥65 汇编语言除法溢出问题