| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 2135 人关注过本帖, 1 人收藏
标题:结构体输入 然后输出的问题 代码如下
取消只看楼主 加入收藏
nosnoy
Rank: 9Rank: 9Rank: 9
来 自:mcu
等 级:贵宾
威 望:14
帖 子:541
专家分:1178
注 册:2016-9-17
结帖率:100%
收藏(1)
已结贴  问题点数:20 回复次数:2 
结构体输入 然后输出的问题 代码如下
小米是一个幼儿园老师,每学期的泥塑课上,她都会给每个学生发不超过250立方厘米的等量橡皮泥,教大家做泥塑。在上课过程中,她发现每个班都恰好有一个小朋友会去抢另一个小朋友的橡皮泥,于是她决定,在正式开始做泥塑前,让大家把手里的橡皮泥都捏成一个立方体,并且测量手里捏好的橡皮泥的长、宽和高。这样,她就可以知道谁被谁抢了橡皮泥了。

小米老师在不同的学期可能会带一个班或者同时带多个班,因此输入数据可能有一组或者多组。每组输入数据的第一行为一个整数n,表示了这个班的小朋友数,之后n行每行包括了由空格分隔的三个整数和一个字符串,那个字符串表示了小朋友的名字,前面三个整数则是这个学生手里橡皮泥块的长、宽、高数据。按照幼儿园的规定,每个班最多有9个小朋友,最少也要有2个小朋友,每个小朋友在学籍系统中的名称不超过8个字符长。当出现一个班级的小朋友数为-1时,表示没有更多的班级了。

编译结果:
Main.c: In function 'main':
 Main.c:49:4: error: expected declaration or statement at end of input
 }
 ^

#include<stdio.h>
 struct stu{
  int x,y,z;
  char name[8];
};//结构体
struct stu student[][9];//定义结构体数组
void main()
 {
   int a,c;//定义班级的小朋友个数及班几个数
   int i=0,j;
   while(1)//输入班级成员信息
   {
     scanf("%d",&a);//输入班级小朋友个数
     if(a==(-1)){break;}
     else for(j=0;j<4;j++)
     {
       scanf("%d %d %d %s",&student[i][j].x,&student[i][j].y,&student[i][j].z,student[i][j].name);
     }
     i++;
     c++;
   }
   int s[c][9];//计算班级成员的橡皮泥体积
   for(i=0;i<c;i++)
   {
     for(j=0;j<9;j++)
     {
       s[i][j]=student[i][j].x*student[i][j].y*student[i][j].z;
     }
   }
   char max[8],min[8];
  int g=10000,b=0,m,n,t,y;
      for(i=0;i<c;i++)//输出谁被谁抢了橡皮泥
   {
     for(j=0;j<9;j++)
     {
       if(s[i][j]>b)
       {
         m=s[i][j];
         m=i;n=j;
       }
       if(s[i][j]<g)
       {
         g=s[i][j];
         t=i;y=j;
       }
       printf("%s took clay from %s",student[m][n].name,student[t][y].name[8]);
     }
   
   }
搜索更多相关主题的帖子: 幼儿园 小朋友 结构体 立方体 橡皮泥 
2016-09-17 15:45
nosnoy
Rank: 9Rank: 9Rank: 9
来 自:mcu
等 级:贵宾
威 望:14
帖 子:541
专家分:1178
注 册:2016-9-17
收藏
得分:0 
回复 2楼 lanke711
编译时出现如下问题
段错误,也就是segmentfault, 可能您的代码出现栈溢出或非法指针访问。

代码如下:
#include<stdio.h>
 struct stu{
  int x,y,z;
  char name[8];
};//结构体
int s(int a, int b,int c);
struct stu student[][9];//定义结构体数组
void main()
 {
   int a,c;//定义班级的小朋友个数及班几个数
   int i=0,j;
   while(1){
     scanf("%d",&a);//输入班级小朋友个数
     if(a==(-1)){break;}
     else for(j=0;j < a;j++)
     {
       scanf("%d %d %d %s",&student[i][j].x,&student[i][j].y,&student[i][j].z,student[i][j].name);
     }
     i++;
     c++;
   }
   int s[c][9];//计算班级成员的橡皮泥体积
   for(i=0;i<c;i++)
   {
     for(j=0;j<9;j++)
     {
       s[i][j]=student[i][j].x*student[i][j].y*student[i][j].z;
     }
   }
   char max[8],min[8];
  int g=260,b=0,m,n,t,y;
      for(i=0;i<c;i++)//输出谁被谁抢了橡皮泥
   {
     for(j=0;j<9;j++)
     {
       if(s[i][j]>b)
       {
         m=s[i][j];
         m=i;n=j;
       }
       if(s[i][j]<g)
       {
         g=s[i][j];
         t=i;y=j;
       }
       printf("%s took clay from %s",student[m][n].name,student[t][y].name[8]);
     }
   }
}

穷举是最暴力的美学
2016-09-18 02:05
nosnoy
Rank: 9Rank: 9Rank: 9
来 自:mcu
等 级:贵宾
威 望:14
帖 子:541
专家分:1178
注 册:2016-9-17
收藏
得分:0 
回复 6楼 书生牛犊
谢谢!

穷举是最暴力的美学
2016-09-18 12:48
快速回复:结构体输入 然后输出的问题 代码如下
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.017129 second(s), 9 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved