复杂类型作函数参数之数组的输入与输出

Description


数组的输入与输出。编写程序,通过函数给数组输入若干不小于0的整数,用负数作为输入结束标志,通过另一函数输出该数组中的数据。

#include <stdio.h>
 #define  M  100                        /* M表示元素个数不超过100 */
 void array_out(int *, int);          /* 函数原型,输出元素个数 */
 int  array_in(int *);                /* 函数原型,输入元素 */
 int main( )
 {
     int s[M], k ;                     /* 定义数组s,元素个数不超过100 */
     k = array_in( s );                /* 调用array_in函数给数组s 赋值 */
     array_out (s, k);                /* 调用array_out函数输出数组s 的各元素值 */
     return 0;
 } 

//请编写array_in 和 array_out函数,只提交你编写的函数,注意输出的格式,5个换一行,每个输出占用4个字符

Input


输入任意数目的数字(数字保证小于等于100),以负数结束输入。

Output


输出数组的内容。

Sample Input
3 2 1 5 4 8 -1

Sample Output
   3   2   1   5   4
   8

HINT


#include <stdio.h>
#define  M  100                        /* M表示元素个数不超过100 */
void array_out(int *, int);          /* 函数原型,输出元素个数 */
int  array_in(int *);                /* 函数原型,输入元素 */
int main( )
{
    int s[M], k ;                     /* 定义数组s,元素个数不超过100 */
    k = array_in( s );                /* 调用array_in函数给数组s 赋值 */
    array_out (s, k);                /* 调用array_out函数输出数组s 的各元素值 */
    return 0;
}
int array_in(int *a)   //函数给数组s赋值,并统计元素个数
 {
     int i=0,x;
     scanf("%d",&x);
     while(x>=0)        //输入数组s各元素值,负数为结束标志
     {
         *(a+i)=x;      //将输入的值送入数组s各个元素中
         i++;
         scanf("%d",&x);
     }
     return i;          //返回数组s元素的个数
 }
 void array_out(int *a,int n)   //函数输出数组s各元素的值
 {
     int i;
     for(i=0;i<n;i++)
        printf(((i+1)%5==0)?"%4d\n":"%4d",*(a+i));
     printf("\n");
 }

  • 3
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值