用C语言数组写一个学生基本信息表,包括学号,姓名,年龄,成绩。有5个学生。

作者&投稿:曾罗 (若有异议请与网页底部的电邮联系)
用C语言定义一个结构体数组,包括学生学号、姓名、年龄、3门课的成绩和平均成绩。~

可选中1个或多个下面的关键词,搜索相关资料。也可直接点“搜索资料”搜索整个问题。
c语言结构体数组
成绩

#include

#define STUDENT 2

typedef struct tagSTU
{
char name[11] ;
char stunum[11] ;
float score1,score2,score3 ;
float total,aver ;
} STU;

void input(STU *stu, int num) //stu为学生数组的首地址,num为数组长度
{
int i ;

printf("请输入%d个学生的基本情况:
",num) ;
printf("姓名 学号 成绩一 成绩二 成绩三
") ;
for(i=0; i<num; i++)
{
scanf("%s%s%f%f%f",&stu[i].name,&stu[i].stunum,&stu[i].score1,
&stu[i].score2,&stu[i].score3) ;
}
}

float average(STU *stu, int num) //stu为学生数组的首地址,num为数组长度,返回总平均成绩
{
int i ;
float avertotal = 0 ;

for(i=0; i<num; i++)
{
stu[i].total = 0 ;
stu[i].total = stu[i].score1+stu[i].score2+stu[i].score3 ;
stu[i].aver = stu[i].total/3 ;
avertotal += stu[i].aver ;
}
return avertotal/num ;
}

void max(STU *stu, int num, STU *stuRev, int *stuRevNum) //stu为学生数组的首地址,num为数组长度
//stuRev表示要接收的数组,stuRevNum表示最终接收的个数,即最高成绩同学的个数(有可能不止一个同学)
{
STU temp[5] ;
float maxtotal = 0 ;
int i ,temp_index=0 ;

for(i=0; i<num; i++)
{
if(stu[i].total>maxtotal)
{
maxtotal = stu[i].total ;
temp[0] = stu[i] ;
temp_index = 0 ;
}
else if(stu[i].total==maxtotal)
{
temp[++temp_index] = stu[i] ;
}
}
for(i=0;i<=temp_index;i++)
{
stuRev[i] = temp[i] ;
}
*stuRevNum = temp_index+1 ;
}

void main()
{
STU stu[STUDENT] ;
STU stumax[STUDENT] ;
int stumax_num, i ;
float avertotal ;

input(stu,STUDENT) ;
avertotal = average(stu,STUDENT) ;
max(stu,STUDENT,stumax,&stumax_num) ;

//输出结果
printf("3门课总平均成绩: %4.2f
",avertotal) ;
printf("最高分同学有%d个:
",stumax_num) ;
printf("姓名 学号 成绩一 成绩二 成绩三
") ;
for(i=0; i<stumax_num; i++)
{
printf("%4s %4s %-4.2f %-4.2f %-4.2f
",stumax[i].name,stumax[i].stunum,
stumax[i].score1,stumax[i].score2,stumax[i].score3) ;
}
}

#include <stdio.h>
#define N 5
typedef struct Student
{
int number;
char name[64];
int age;
float grade;
}STUDENT;

int main()
{
int i;
    STUDENT stud[N]={
{10001,"张三",18,85.5},
{10002,"李四",19,88.5},
{10003,"王五",20,90.8},
{10004,"小明",21,60.0},
{10005,"小红",18,75.5}
};
for(i=0;i<N;i++)
printf("学号=%d姓名=%s年龄=%d成绩=%.2f
",
stud[i].number,stud[i].name,stud[i].age,stud[i].grade);
    return 0;
}

运行结果:

学号=10001      姓名=张三       年龄=18 成绩=85.50

学号=10002      姓名=李四       年龄=19 成绩=88.50

学号=10003      姓名=王五       年龄=20 成绩=90.80

学号=10004      姓名=小明       年龄=21 成绩=60.00

学号=10005      姓名=小红       年龄=18 成绩=75.50



#include "stdio.h"
struct stu{
    int ID,age,score;
    char n[16];
};
int main(void){
    struct stu stu[5];
    int i;
    for(i=0;i<5;i++)
        scanf("%d%s%d%d",&stu[i].ID,stu[i].n,&stu[i].age,&stu[i].score);
    printf("学号姓名年龄成绩
");
    for(i=0;i<5;i++)
        printf("%d%s%d%d
",stu[i].ID,stu[i].n,stu[i].age,stu[i].score);
    return 0;
}



c语言一维数组
\/\/向班级中加入一个学生void append(class c,student stu);\/\/统计不及格人数,并打印名单void showNotPass(class c);\/\/统计全班平均分及以上的学生人数并打印名单void showGreaterThanAvg(class c);\/\/统计各分数段的学生人数及所占百分比void showGradeRange(class c);\/\/输出最高分及学号void show...

C语言程序:定义一个一维数组,存10个学生的成绩(赋值)并打印出平均分及...
include <stdio.h>int main(){int a[10]={0},i=0,total=0;float avr = 0;for (i=0;i<10;i++){scanf("%d",&a[i]);total+=a[i];}avr = (float)(total\/10.0);for (i=0;i<10;i++){if (a[i]>avr){printf("%d\\n",a[i]);}}return 0;}66 55 77 88 99 66 ...

c语言编程:有一个一维数组,内放10个学生成绩,写一个函数,求出平均分...
i])imax=a[i];} return imax;} void main(){ int a[10],i,imax,imin;float av;printf("input 10 scores:\\n");for(i=0;i<10;i++){scanf("%d",&a[i]);} av=aveg(a);imax=max(a);imin=min(a);printf("%f\\n%d\\n%d\\n",av,imax,imin);} 一起学习QQ群:2326077 ...

c语言二维数组:创建一个二维数组,从键盘输入5个学生的4门成绩,_百度...
include<stdio.h> include<stdlib.h> define A 5 define B 4 int main(void){ int a[A][B],zcj[A],i,j,sum,t;double ave;for(i=0;i<A;i++){ printf("请输入第%d个学生的第4门成绩:",i+1);for(j=0;j<B;j++)scanf("%d",&a[i][j]);} for(i=0;i<A;i++){ su...

C语言定义一个一维数组,输入N个学生的考试成绩统计各分数段的人数(分数...
include <stdio.h>int main() {int i,sc,grade[5] = {0};char s[][7] = {"优秀","优良","良好","及格","不及格"};printf("请输入成绩:");while(scanf("%d",&sc) == 1) {\/\/Ctrl + Z结束输入过程if(sc <= 100 && sc >= 90) ++grade[0];else if(sc >= 80 && sc...

有一个数组,内放 10个学生成绩,用C语言写一个函数,求出平均分、 最高...
我这边运行没错误啊,如下图:不知道你的错误是什么,能不能贴出来。

编程C语言 怎么写1已知一个班20个学生的成绩,存放在一个一维数组中,要...
include "stdio.h"#include <stdlib.h>#include "time.h"int main(int argv,char *argc[]){char s[20],i,m;srand((unsigned)time(NULL));printf("Students' scores are as follows:\\n");for(m=i=0;i<20;i++){printf("%-4d",s[i]=rand()%100+1);\/\/模拟输入20人的成绩if(s...

C语言编程:定义一个二维字符数组A存放3个学生的姓名定义一个一维数组B...
include <stdio.h> define N3 int main(){ int B[N], i, m, n;char A[N][20], name[20];for (i = 0; i < N; i++) scanf("%s %d", A[i], B + i);printf("最高分是:");m = B[0]; n = 0;for (i = 1; i < N; i++) if (m < B[i]) { m = ...

用c语言写一个查找给定数组a中数值的函数
输入格式:第一行包含一个整数n。第二行包含n个非负整数,为给定的数列,数列中的每个数都不大于10000。第三行包含一个整数a,为待查找的数。输出格式:如果a在数列中出现了,输出它第一次出现的位置(位置从1开始编号),否则输出-1。样例输入:6 1 9 4 8 3 9 9 样例输出 2 数据规模与约定 ...

C语言写一个函数,实现数组的遍历打印?
void print_array(int arr[], int size) { for (int i = 0; i < size; i++) { printf("%d ", arr[i]);} printf("\\n");} 该函数接受一个整数数组 arr 和数组大小 size 作为参数,使用 for 循环遍历数组中的所有元素,并使用 printf 函数打印每个元素的值。最后使用 printf 函数...

青铜峡市17771295537: 急求用C语言编写学生信息表!
宁玛特普: #include <stdio.h> typedef struct node { int data; struct node *next; }list; list *creat() { int n; list *p,*q,*r; p=(list *)malloc(sizeof(list)); r=p; printf("input a num:\n"); scanf("%d",&n); while(n!=0) { q=(list *)malloc(sizeof(list)); r->next=q; q->data=n; r=q; ...

青铜峡市17771295537: 数据结构:用C语言创建一个具有10条学生记录的线性表并输出 数组中每个数组元素的内容为 -
宁玛特普: #include"stdio.h" #includetypedef struct Data {char num[10];char name[20]Int score; }typedef struct LNode { Data data;struct LNode *next; }LinkList;void CreatListF(LinkList *&L,Data a[],int n) //头插法建表 {LinkList *s;int i;L=(LinkList *)...

青铜峡市17771295537: 急求用C语言编写一个学生信息表!!!
宁玛特普: 如果学习的话,我建议自己写写吧.我给你构思: 应该还没有学习结构体吧 那就用简单的数组. for(i=0,i<=n,i++)scanf(&a) 这里输入就可以了,

青铜峡市17771295537: C语言 基于数组的"学生信息管理系统" -
宁玛特普: 我以前看到别人答疑的时候给发过一个类似的,你参考,自己改改吧,真心不难,就是复杂.#include #include #include #include #include #include int main(void) { FILE *fp; int fd; int n,i,j,k; char s[100]; char buff[100],buff_data[100][200],c; char id[30]...

青铜峡市17771295537: 跪求一个用c语言编写的学生信息数据库? -
宁玛特普: #include<stdio.h>#include<string.h>#define N 3 void sort(int a[],char name[N][10],int n); //声明排序函数 int binsearch(int x,int a[],int n); //声明查找函数 void main() { int i,a[N],x,h; char name[N][10]; printf("输入学生姓名和C语言成绩:"); for(...

青铜峡市17771295537: 用c语言写:定义一个学生结构体(包含姓名,学号,语文,数学,外语,总分).定义一个学生结构体数组. -
宁玛特普: #include <stdio.h> struct student {char name[20];int idnum;float score[3]; //分别存三科成绩double total; // 总分 }; struct student * highscore(struct student *s, int n) {int i;struct student * high = s;for(i = 0; i < n; i++) {(s+i)->total = (s+i)->score...

青铜峡市17771295537: 用C语言编写程序,完成以下功能: (1) 有5个学生,每个学生的数据包括学号、姓名、3门课的成绩 -
宁玛特普: #include <stdio.h>#define STUDENT 2 typedef struct tagSTU { char name[11] ; char stunum[11] ; float score1,score2,score3 ; float total,aver ; } STU; void input(STU *stu, int num) //stu为学生数组的首地址,num为数组长度 { int i ; printf("请输入%...

青铜峡市17771295537: C语言编程关于10个学生的信息包括学号,姓名几三门课的成绩
宁玛特普: #include "stdio.h"#include "conio.h"#include "math.h" struct node {int num; char *name;int a;int b;int c;int d;}; typedef struct node AA; shuchu(AA *p) {int i; printf("学号\t姓名\t语文\t数学\t英语\t平均分\n"); for(i=0;i<10;i++,p++) { printf("%...

青铜峡市17771295537: 用C语言写假设一个班级有30人,每人信息有姓名,学号,英语,语文,数学三种成绩 -
宁玛特普: #include <stdio.h>#define maxnumber 3 typedef struct stu{ int idnumber; char name[20]; double English_score; double chinese_score; double math_score; }Student; void copy1(char *a,char *b)//运用指针操作 { while(*a!='\0') { *(b++)=*(a++); } *b='\0'; ...

青铜峡市17771295537: 写一个C语言程序,要求如下: 输入29名学生的信息:包括姓名、学号、班级,及(C语言;服务器配置,数学) -
宁玛特普: #include "iostream"; //C++6.0为 iostream.h 更高版本为 iostream using namespace std; void main() { struct stu[29] { char[] name; int number; int class; }; for(i=0;i<=28;i++) { cout<<"请输入第"<<i+1<<"个学生的姓名"; cin>>stu[i].name;cout...

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网