当前位置: 代码迷 >> C语言 >> [原创]请路过的c高手进来为小弟指点以下
  详细解决方案

[原创]请路过的c高手进来为小弟指点以下

热度:116   发布时间:2005-07-02 16:52:00.0
[原创]请路过的c高手进来为小弟指点以下

题目是: 声明一个结构: 保存学生的成绩档案, 学生成绩档案: 姓名,学号,成绩 并随意录入两个学生的信息,并输出学员的平均成绩。

#include <stdio.h> //定义库函数 #include <string.h> //定义库函数

strict student //定义结构化学生类型 { int num; //声明学号 char name[20]; //声明姓名 char sex; //声明性别 float score; //声明成绩 }; struct student stu[2]={{1,"黎明",'G',89.5}, {2,"王敏"','M',92}};//定义一个一唯的学生数组 void main() { float stu_1,stu_2,avg; //定义变量 stu_1=89.5; stu_2=92; avg=(stu_1+stu_2)/2; //求2个数的平均值 } printf("学号":%ld\n,姓名:%s\n,成绩:%s\n", stu_1.num,stu_1.name,stu_1.score"); //输出学生1 printf("学号":%ld\n,姓名:%s\n,成绩:%s\n"," stu_2.num,stu_2.name,stu_2.score"); //输出学生2 printf("avg=%f\n",avg); //输出平均直 }

为身摸在运行是有错误??


----------------解决方案--------------------------------------------------------
在线等
----------------解决方案--------------------------------------------------------
void main( )
中怎么{}不搭配呢?

再说你这程序干什么用啊,给了结构体又没用,就在main中仅用于打印.
----------------解决方案--------------------------------------------------------
有好几个细节错误啊!如:
main()中的{}不配对,printf()中的""也不配对,后面的变量怎么能用“”呢?而且stu_1都是你自己定义的变量,怎么能用结构体的调用方法呢?
程序本身也不符合题目要求啊:
        随意录入两个学生的信息,你都在主函数外初始化了;要求给出平均成绩,应该是程序本省自己提取结构体中的成绩信息,然后得出结果,打印输出。
----------------解决方案--------------------------------------------------------
简直是前言不搭后语!
你这个结构体也没用上啊!
哈哈!
stu[] 怎么变成了stu_1?
----------------解决方案--------------------------------------------------------
printf("学号:%ld\n,姓名:%s\n,成绩:%s\n",
           stu[0].num,stu[0].name,stu[0].score"); //输出学生1
    printf("学号:%ld\n,姓名:%s\n,成绩:%s\n,"
           stu[1].num,stu[1].name,stu[1].score"); //输出学生2
    printf("avg=%f\n",avg); //输出平均直
中间的'}'去掉不要

----------------解决方案--------------------------------------------------------
哈哈,指法不严谨。
----------------解决方案--------------------------------------------------------
那怎摸改呢,请指出
----------------解决方案--------------------------------------------------------

#include <stdio.h> #include <string.h>

strict student { int num; char name[20]; char sex; float score; }; struct student stu[2]={{1,"黎明",'G',89.5}, {2,"王敏"','M',92}};//定义一个一唯的学生数组 void main() { int i; float avg; avg=(stu[0].score+stu[1].score)/2; for (i=0;i<2;i++) printf("学号":%ld\n,姓名:%s\n,成绩:%s\n",stu[i].num,stu[i].name,stu[i].score"); printf("avg=%f\n",avg); }


----------------解决方案--------------------------------------------------------
  相关解决方案