| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 436 人关注过本帖
标题:这是为什么,给我讲讲,谢谢
只看楼主 加入收藏
dumuchenglin
Rank: 1
等 级:新手上路
帖 子:1
专家分:0
注 册:2012-6-20
结帖率:0
收藏
已结贴  问题点数:20 回复次数:3 
这是为什么,给我讲讲,谢谢
以下程序利用结构体指针输出一组化学元素名称及其原子量。请改正程序中的错误。
 struct  list
 { int  i;
   char  name[4];
   float  w;
 }tab[4]={{1,"H",1.008}, {2,"He",4.0026}, {3,"Li",6.941}, {4,"Be",9.01218}};
# include “stdio.h”
void main( )
{ struct *p;
  printf("No\tName\tAtomic Weight\n");
  for (p=tab; p<4; p++)
    printf("%d\t %s\t %f\n",
               p->i, p->name, p->w);
 }
我是这样改的为什么不对呢?
以下程序利用结构体指针输出一组化学元素名称及其原子量。请改正程序中的错误。
 struct  list
 { int  i;
   char  name[4];
   float  w;
 }tab[4]={{1,"H",1.008}, {2,"He",4.0026}, {3,"Li",6.941}, {4,"Be",9.01218}};
# include “stdio.h”
void main( )
{ struct list*p=tab;
  printf("No\tName\tAtomic Weight\n");
  for (p=tab; p<4; p++)
    printf("%d\t %s\t %f\n",
               p->i, p->name, p->w);
 }
搜索更多相关主题的帖子: 结构体 include 化学元素 
2012-06-20 17:55
csxuedn
Rank: 2
等 级:论坛游民
帖 子:15
专家分:48
注 册:2012-6-15
收藏
得分:7 
楼主估计你这句for (p=tab; p<4; p++)有问题,改为下句试试:
for (p=&tab[0]; p<=&tab[3]; p++)

还有struct list *p=&tab;这样才对……

下面是在DEV C++下编译成功的:代码如下:
struct  list
{
        int  i;
        char  name[4];
        float  w;
}tab[4]={{1,"H",1.008}, {2,"He",4.0026}, {3,"Li",6.941}, {4,"Be",9.01218}};
# include <stdio.h>
int main(void)
{  
    struct list *p;
    printf("No\tName\tAtomic Weight\n");
    for (p=&tab[0]; p<=&tab[3]; p++)
    {
        printf("%d\t %s\t %f\n", p->i, p->name, p->w);
    }
    getchar();
    return 0;
}
2012-06-20 19:13
Mrnobody
Rank: 2
等 级:论坛游民
帖 子:19
专家分:17
注 册:2012-6-20
收藏
得分:7 
struct  list
 { int  i;
    char  name[4];
    double  w;
 }tab[4]={{1,"H",1.008}, {2,"He",4.0026}, {3,"Li",6.941}, {4,"Be",9.01218}};
 # include <stdio.h>
 void main( )
 {
     struct list *p;
     int i=0;
   printf("No\tName\tAtomic Weight\n");
   for (p=tab; i<4; p++)
   {
     printf("%d\t %s\t %f\n",
               p->i, p->name, p->w);
     i++;
   }

 }
这是我修改的  不知道合不合要求
2012-06-20 20:04
阿鞠尼
Rank: 13Rank: 13Rank: 13Rank: 13
来 自:首尔
等 级:蒙面侠
威 望:5
帖 子:1467
专家分:4442
注 册:2012-5-30
收藏
得分:7 
程序代码:
# include “stdio.h”\\\\\\\\\\\\\这里应该是"stdio.h"
void main( )
{ struct list*p=tab;\\\\\\\\\\\\\\\\\\这里应该有个空格struct list *p=tab;这就说明你已经把结构体指针指向结构体数组的首地址了 相当于struct list *p=&tab[0];
  printf("No\tName\tAtomic Weight\n");
  for (p=tab; p<4; p++)\\\\\\\\\\\\这里第一个条件就不用写了 第二个条件写成p<=&tab[3]
    printf("%d\t %s\t %f\n",
               p->i, p->name, p->w);
} 

喜欢睡觉 却经常熬夜
2012-06-20 21:08
快速回复:这是为什么,给我讲讲,谢谢
数据加载中...
 
   



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

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