c语言输入,第一行表示数据组数,第二行表示第一组元素个数,第三行输入...

发布网友 发布时间:2024-10-23 22:53

我来回答

3个回答

热心网友 时间:2024-10-30 21:16

结构体+动态内存分配

#include "stdio.h"
#include "stdlib.h"
struct Co
{
  int num;
  int *content;
};
int main()
{
   int total=0,i,j;
   Co *p=NULL;
   scanf("%d",&total);
   p=(Co *)malloc(total*sizeof(Co));
   for(i=0;i<total;i++)
   {
      scanf("%d",&(p[i].num));
      p[i].content=(int *)malloc(p[i].num *sizeof(int));
      for(j=0;j<p[i].num;j++)
      {
        scanf("%d",p[i].content+j);
      }
   }
   printf("Output:\n");
   for(i=0;i<total;i++)
   {
     for(j=0;j<p[i].num;j++)
     {
       printf("%d ",(p[i].content)[j]);
     } 
 free(p[i].content);
     printf("\n");  
   }
   free(p);
 
}

可以看到,你输入的11个数正确输出

热心网友 时间:2024-10-30 21:16

#include <stdio.h>
int a[100][100],b[100];
int main(int argc, char *argv[])
{
 int i,j,n;
 scanf("%d",&n);
 for(i=0;i<n;i++)
 {
  scanf("%d",&b[i]);
  for(j=0;j<b[i];j++)
   scanf("%d",&a[i][j]);
 }
 printf("\n%d\n",n);
 for(i=0;i<n;i++)
 {
  printf("%d\n",b[i]);
  for(j=0;j<b[i];j++)
   printf("%d ",a[i][j]);
  putchar(10);
 }
 return 0;
}


热心网友 时间:2024-10-30 21:20

#include<stdio.h>
#include<stdlib.h>
int main(void)
{
    int *p[50],n,number;
    int i,j;

    printf("输入数据组数\n");
    scanf("%d",&n);
    for(i = 0 ; i < n; i++)
    {
        printf("请输入第%d组数据个数\n",i+1);
        scanf("%d",&number);
        p[i] = (int *)malloc(sizeof(int)*numer); //头文件stdlib.h
        printf("轻依次输入数据\n");
        for(j = 0 ; j < numer; j++)
        {
            scanf("%d",p[i]+j);
        }
    }
    
    return 0;
}

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com