C语言版本:
//---------------------------------------------------------------------------
#pragma hdrstop
#pragma argsused
#include <stdio.h>
#include <stdlib.h>
//---------------------------------------------------------------------------
//要求编一个C语言程序,查询学生的成绩,要输入学生的学号、姓名、所在系
#define NUMBER 3
void main()
{
// 定义“学生”结构体
struct StuScore
{
int StuNo;
char StuName[10];
char StuDept[20];
int StuScore;
}StuScoreSet[NUMBER];
// 声明查询条件及查询结果
int input_stuno;
char input_stuname[10];
char input_studept[20];
int output_stuscore;
// 录入学生信息
int i;
for (i=0; i<NUMBER; i++) //录入学生信息
{
printf("请输入学号:");
scanf("%d", & StuScoreSet[i].StuNo);
printf("请输入成绩:");
scanf("%d", & StuScoreSet[i].StuScore);
printf("********************\n");
}
printf("\n\n******* 录入信息完毕 ******\n\n\n");
// 查询学生信息
printf("请输入待查学生的学号:");
scanf("%d", &input_stuno);
for (i=0; i<NUMBER; i++)
{
if ( StuScoreSet[i].StuNo == input_stuno )
{
printf("该生成绩:%d \n", StuScoreSet[i].StuScore);
break;
}
}
return;
}
//---------------------------------------------------------------------------
/*
程序说明:
1. 定义结构体,以备用户录入各学生信息,定义常量NUMBER 作为学生数量(注意,该程序设定只有当录入所有学生信息后才可继续进行后续任务,因此建议测试、演示时将学生数设置得少一些,如<=5);
2. 学号以int类型定义,因此建议测试时,学号统一录入为1001,1002,…… 或类似规律性的数据(理论上最好定义为字符型数组,但实现代码要多一些。为简写代码此处不考虑);
3. 在录入所有学生的信息之后,任意输入一名学生的学号(该数据必须是有效数据——之前应录入),将查询结果显示在输出屏幕上;
4. 上面程序你是需求的简写,即只录入了学号和成绩,如果需要根据“姓名”、“所在系”等其他信息作为查询条件,请自己修改、完善;
5. 更科学的做法是录入信息存入文件,查询时读写相应文件,并根据条件取出、打印结果,建议动手实践。
*/