#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 GitHubssh虚拟机连接不上
- ¥15 装完kali之后下载Google输入法 重启电脑后出现以下状况 且退不出去 桌面消失 反复重启没用
- ¥15 ESP-IDP-BLE配网连接wifi
- ¥15 ue2.6.12版本用的若以,安装gojs,引入import * as go from 'gojs';报错
- ¥15 服务器上的网站安装php5.6版本
- ¥15 ModuleNotFoundError: No module named 'torch.utils._import_utils' 是缺少什么
- ¥15 请大咖一起探索iptv 直播源的hls通过反向代理解密
- ¥100 寻找技术员 云闪付tn转h5输入卡号付款的链接 重酬!
- ¥100 科大讯飞语音唤醒词,unbuntu环境,报错
- ¥50 python写segy数据时出错2