c++编写程序,实现从终端输入学生信息,根据学号查询并输出相应学生的信息

c++编写程序,实现从终端输入学生信息,根据学号查询并输出相应学生的信息。学生信息包括:学号 no、姓名 name、政治分数 politic、数学分数 maths、英语分数 english和专业课分数 special。
在线等,急求

#include<stdio.h>
#include<malloc.h>
struct Student
{
    int num;  //学号
    char name[20]; //姓名
    struct Score score;
};

struct Score
{
float politic;
float maths;
float english;
float special;
};

int main()
{
    int M,N,i,j;
    printf("Please input M:");
    scanf("%d",&M);
    struct Student *stu = NULL;
    stu = (struct Student*)malloc(sizeof(struct Student)*M); //创建一个结构体含有N个数据
    for(i = 0; i < M; i++)
    {
        printf("Please input the No%d student's number:",i+1);
        scanf("%d",&stu[i].num);
        printf("Please input the No%d student's name:",i+1);
        scanf("%s",stu[i].name);
        stu[i].score.politic = 0.0; //初始化float 老版本编译器如果不初始化可能会报错
printf("Please input the No%d student' score of",i+1);
scanf("%f",&stu[i].score.politic);
stu[i].score.maths = 0.0; 
scanf("%f",&stu[i].score.maths);
stu[i].score.english = 0.0; 
scanf("%f",&stu[i].score.english);
stu[i].score.special = 0.0; 
scanf("%f",&stu[i].score.special);
    }
    printf("Please input N:");
    scanf("%d",&N);
for(i = 0; i < M; i++)
{
if(i+1 == N)
{
peinrf("%d %s %.2f %.2f %.2f %.2f\n",stu[i].num,stu[i].name,
 stu[i].score.politic,
 stu[i].score.maths,
 stu[i].score.english,
 stu[i].score.special);
}
}
    free(stu); //释放
    return 0;
}

温馨提示:内容为网友见解,仅供参考
无其他回答

c++编写程序,实现从终端输入学生信息,根据学号查询并输出相应学生的信息...
printf("Please input the No%d student'

用C++设计一个学生类,要求输入学生信息,凭学号输出学生的信息
include<stdio.h> void main(){ int a;printf("输入学生号:");scanf("%d",&a);switch(a){ case '1':printf("某人、\\n");break;case '2':printf("某人2\\n");break;case '3':printf("某人3\\n");break;} }

用c++编写一个学生类。输出每个学生的姓名、学号、成绩
cout << "成绩:" << ends << score << endl;}int main(){ Student stu("小明", 19, 97); stu.display(); system("pause"); return 0;}

用C++编写一个程序 : 输入10个学生的姓名、学号和成绩,将其中不及格...
void main(){ printf("学号\\t姓名\\t成绩\\n");for(int i=0;i<n;i++){ scanf("%d %s %f",&stt[i].num ,stt[i].name ,&stt[i].score );} \/\/用C++编写一个程序 : 输入10个学生的姓名、学号和成绩,将其中不及格的姓名、学号和成绩输出 printf("不及格学员的名单如下:\\n")...

2、 编写一个简单的C++程序:通过键盘输入你的基本信息,如姓名、学号...
char name[50];\\x0d\\x0a int class_;\\x0d\\x0a cout > number >> name >> class_;\\x0d\\x0a cout << "姓名:" << name << endl << "学号:" << number << endl << "班级:" << class_ << endl;\\x0d\\x0a return 0;\\x0d\\x0a} ...

用c++编 能够录入学生信息,包括(学号、姓名、性别、身高、成绩等)并且...
cout<<"请输入第"<<i+1<<"个学生的信息:"<<endl;pArray[i].Set_stu_inf();pArray[i].average();pArray[i].Sum();} } \/\/+--- \/\/|求取全班最高分和总平均分 \/\/+--- void ComputeHighestAndAverage(){ if(pArray != NULL){ float TempAll = 0.0f;for(unsigned int ...

用c++语言写, 从键盘输入多名学生信息:学号,姓名,3门课成绩,计算每个人...
include <string> include <cstring> using namespace std;struct student{ int no;string name;double chinese;double math;double english;double average;};int main(){ cout << " how many student:";int total;cin>>total;student *temp=new student[total];for(int i=0;i<total;++...

C++,从键盘输入10个学生的信息包括学号,姓名,成绩要求按每个学生的...
;charname[20];intscore[3];floataverage;}stud[SIZE];voidinput()\/*输入学生的信息*\/{inti;for(i=0;i<SIZE;i++){printf("第%d个学生的信息:\\n",i+1);scanf("%s%s%d%d%d",stud[i].id,stud[i].name,&stud[i].score[0],&stud[i].score[1],&stud[i].score[2]);stud[i]...

C++:输入10个学生的姓名、学号和成绩,将其中不及格者的姓名、学号和成绩...
可以先声明一个具有姓名、学号、成绩3个数据成员的类,然后输出、输入可以写成类里的成员函数。完成了类声明之后,用这个类定义一个含有10个元素的数组,这样就可以很方便的实现输入学生信息、存储学生信息,再根据需要输出学生信息的功能。而且这样程序看起来也会相当简洁。具体代码如下: 【程序代码】#...

C++ 中有关输入学号 输出名字的 编程问题
代码已经写出来了,可以根据下面内容形式的.txt学生学号输出:01 李成成 02 李成华 03 王成凤 04 张明明 05 陈东 06 李果 07 张圆圆 代码:include <iostream> include <fstream> include <string> using namespace std;class Student { public:int OutResult(fstream &in, ...

相似回答