当前位置:首页 » 编程语言 » c语言学生结构体
扩展阅读
webinf下怎么引入js 2023-08-31 21:54:13
堡垒机怎么打开web 2023-08-31 21:54:11

c语言学生结构体

发布时间: 2022-08-24 05:25:33

c语言求助:定义一个学生结构体数组stu[10],结构体类型



#include <stdio.h>


#define N 10


typedef struct student {

int num;//成员num (学号)的类型为整型

char name[21];//成员name (姓名)的类型为字符数组

char sex;//成员sex(性别)的类型为字符型

int age; //成员score(分数)的类型为double类型

}stu;


void show(stu a[],int n) {

for(int i = 0; i < n; ++i)

printf("%d %d %s %c %d ",i + 1,a[i].num,a[i].name,a[i].sex,a[i].age);

printf(" ");

}


int find(stu a[],int n,int num) {

for(int i = 0; i < n; ++i) {

if(a[i].num == num) {

printf("%d %s %c %d ",a[i].num,a[i].name,a[i].sex,a[i].age);

return i;

}

}

return 0;

}


int main() {

int i,num;

stu a[N];

for(i = 0;i < N; ++i) {

scanf("%d",&a[i].num,a[i]);

fflush(stdin);

scanf("%s",a[i].name);

fflush(stdin);

scanf("%c",&a[i].sex);

scanf("%d",&a[i].age);

}

show(a,N);

printf("请输入待查学号:");

scanf("%d",&num);

if(!find(a,N,num)) printf(" 没有找到学号为%d的学生! ",num);

return 0;

}

㈡ c语言:结构体:有3个学生,每个学生的数据包括学号、姓名、3门课的成

#include<stdio.h>
struct student
{
char number[20];//number学号
char name[20];//name姓名
float score[3];//成绩
float aver;//平均分
};
int main()
{
struct student stu[3];
int i,max;
printf("请输入三位学生的学号、姓名、3门课的成绩(以空格分开输入):\n");
for(i=0;i<3;i++)
{
printf("请输入第%d个学生的信息:",i+1);
scanf("%s%s%f%f%f",stu[i].number,stu[i].name,&stu[i].score[0],&stu[i].score[1],&stu[i].score[2]);
stu[i].aver=(stu[i].score[0]+stu[i].score[1]+stu[i].score[2])/3;
}
printf("学号 姓名 c语言 高数 英语 平均\n");
for(i=0;i<3;i++)
{
printf("%-5s %-5s %-6.2f %-6.2f %-6.2f %-6.2f\n",stu[i].number,stu[i].name,stu[i].score[0],stu[i].score[1],stu[i].score[2],stu[i].aver);
}
return 0;
}

㈢ c语言结构体是什么

C语言结构体(Struct)从本质上讲是一种自定义的数据类型,只不过这种数据类型比较复杂,是由 int、char、float 等基本类型组成的。你可以认为结构体是一种聚合类型。

在实际开发中,我们可以将一组类型不同的、但是用来描述同一件事物的变量放到结构体中。例如,在校学生有姓名、年龄、身高、成绩等属性,学了结构体后,我们就不需要再定义多个变量了,将它们都放到结构体中即可。

简介

关键字struct和结构体名组合成一种类型标识符,其地位如同通常的int、char等类型标识符,其用途就像 int 类型标识符标识整型变量一样可以用来定义结构体变量。

定义变量以后,该变量就可以像定义的其他变量一样使用了;成员又称为成员变量,它是结构体所包含的若干个基本的结构类型,必须用“{}”括起来,并且要以分号结束,每个成员应表明具体的数据类型。

㈣ c语言中怎么建立一个学生的结构体,包括名字学号性别

struct student
{
char name[10];
char sex[10];
int old;
}s[100];
main()
{
int n,k=5;char name[10];
for(i=0;i<k;i++)
{
printf("请输入姓名:");scanf("%s",s[i].name);
printf("请输入性别:");scanf("%s",s[i].sex);
printf("请输入年龄:");scanf("%s",s[i].old);
}
printf("请输入要查找的人名");scanf("%s",name);
for(i=0;i<k;i++)
{if(strcmp(th[i].name,name)==0)
printf("%s,性别%s,年龄%d",s[i].name,s[i].sex,s[i].old);
}
}

这个是简单的,没有添加和删除

㈤ 求C语言答案.定义一个学生结构体就一个学生,包含学生姓名,学号,性别,年龄。输入年龄学号显示此学生的信息

typedef struct student //学生
{
char sno[max]; // 学号
char sname[max]; //姓名
char sex[max]; //性别
char age[max]; //年龄

struct student* next;
} student;

void regist()
{
char ch;
student *s,*ptr; //s用来建新结点,ptr用来暂存头结点

do
{

s=(student*)malloc(sizeof(student)); // 新建一个学生结点

printf("\n开始注册..."); //开始注册
printf("\n请输入该学生的学号:");
scanf("%s",s->sno);
printf("\n请输入该学生的姓名:");
scanf("%s",s->sname);
printf("\n请输入该学生的性别:");
scanf("%s",s->sex);
printf("\n请输入该学生的年龄:");
scanf("%s",s->age);

ptr=head;
head=s;//将新结点插入队头
s->next=ptr;

return;
}
void print() //输出全部学生信息
{
student *ptr=head;
printf("\n学号 姓名 年龄 性别 ");
while(ptr)
{
LinePrint(ptr);
ptr=ptr->next;
}
printf("\n");
return;
}

㈥ c语言定义一个学生结构

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

typedefstructStudent{
intID;
charName[32];
charSex;//M,代表男,F,代表女
floatMathScore;
floatChineseScore;
floatEnglishScore;
};

floatGetAverageScore(Student*ptr_stu)
{
intnAverageScore=(ptr_stu->MathScore+ptr_stu->ChineseScore+ptr_stu->EnglisgScore)/3;
returnnAverageScoer;
}

floatGetMaxScore(Student*ptr_stu)
{
floatmaxScore=ptr_stu->MathScore;
if(ptr_stu->ChineseScore>maxSocre)
{
maxScore=ptr_stu->ChineseScore;
}
if(ptr_stu->EnglishScore>maxScore)
{
maxScore=ptr_stu->EnglishScore;
}

returnmaxScore;
}

intmain()
{
Studentstu;
stu.ID=12138;
strcpy(stu.Name,"张三");
stu.Sex='M';
stu.MathScore=88;
stu.ChineseScore=92;
stu.EnglishScore=76;

floatmaxScore,averageScore;
maxScore=GetMaxScore(&stu);
averageSocre=GetAverageScore(&stu);

printf("MaxScoreis:%f AverageScoreis:%f",maxScore,averageScore);
return0;
}

㈦ c语言结构体是什么

c语言结构体是:

C语言结构体Struct从本质上讲是一种自定义的数据类型,只不过这种数据类型比较复杂,是由int、char、float等基本类型组成的。你可以认为结构体是一种聚合类型。

在实际开发中,我们可以将一组类型不同的、但是用来描述同一件事物的变量放到结构体中。例如,在校学生有姓名、年龄、身高、成绩等属性,学了结构体后,我们就不需要再定义多个变量了,将它们都放到结构体中即可。

c语言简介

在C语言中,可以使用结构体Struct来存放一组不同类型的数据。结构体的定义形式为,struct结构体名(结构体所包含的变量或数组)。

结构体是一种集合,它里面包含了多个变量或数组,它们的类型可以相同,也可以不同,每个这样的变量或数组都称为结构体的成员Member。

㈧ c语言里面的结构体是什么意思

结构体(struct)是由一系列具有相同类型或不同类型的数据构成的数据集合,叫做结构。

在C语言中,结构体(struct)指的是一种数据结构,是C语言中聚合数据类型(aggregate data type)的一类。结构体可以被声明为变量、指针或数组等,用以实现较复杂的数据结构。

结构体同时也是一些元素的集合,这些元素称为结构体的成员(member),且这些成员可以为不同的类型,成员一般用名字访问

(8)c语言学生结构体扩展阅读

将一个结构体变量中的数据传递给另一个函数,有下列3种方法:

(1) 用结构体变量名作参数。一般较少用这种方法。

(2) 用指向结构体变量的指针作实参,将结构体变量的地址传给形参。

(3) 用结构体变量的引用变量作函数参数。

在软件开发过程中,常常需要动态地分配和撤销内存空间,例如对动态链表中结点的插入与删除。C语言中是利用库函数malloc和free来分配和撤销内存空间的。

㈨ 用C语言:定义一个学生结构体,包括6个成员:姓名,班级,英语成绩,数学成绩和总成绩。

#include 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[0] + (s+i)->score[1] + (s+i)->score[2]; if(high->total (s+i)->total) high = s+i; } return high;}main(){ struct student *s, student[5]; // 录入学生信息 for(s = student; s student+5; s++) { printf("输入第%d个学生的信息:\n", s-student+1); printf("姓名:"); scanf("%s", s->name); printf("学号:"); scanf("%d", &s->idnum); printf("语文 数学 英语:\n"); scanf("%f %f %f", &(s->score[0]), &(s->score[1]), &(s->score[2])); } // 输出学生信息 printf("\n学生信息\n姓名\t学号\t语文\t数学\t英语\n"); for(s = student; s student+5; s++) printf("%s\t%d\t%.1f\t%.1f\t%.1f\n", s->name, s->idnum, s->score[0], s->score[1],s->score[2]); // 计算学生总分病返回总分最高的学生信息 s = highscore(student, 5); printf("\n总分最高的学生是:%s,学号:%d\n成绩:语文:%.1f数学:%.1f英语:%.1f总分:%.1f\n", s->name, s->idnum, s->score[0], s->score[1],s->score[2], s->total);}