c语言程序设计,输入10个学生信息,姓名,学号,专业,创建结构;并将这10个同学的信息存入文件,命名为s

共有 1485 人关注过本帖
标题:求指导:班上有30个学生,给出姓名、出生日期、学号、专业等信息,编程根据 ...
等 级:新手上路
结帖率:100%
&&已结贴√
&&问题点数:20&&回复次数:5&&&
求指导:班上有30个学生,给出姓名、出生日期、学号、专业等信息,编程根据学号查找学生的信息并输出
Description
班上有30个学生,给出姓名、出生日期、学号、专业等信息,编程根据学号查找学生的信息并输出。
定义一个 struct student 来完成本题。
首先是30行,每行一个学生的信息,分别是 姓名(小于32个字符)、生日(8位数字)、学号(8位数字)、专业(小于32个字符),以空格分隔。
然后是一个n,表示有n个查询
接下来n行,每行一个学号。
对于每一个学号,输出学生的信息,一行中包含姓名、生日(8位数字)、学号(8位数字,不足的左边补0)、专业。
如果学号没有对应学生信息,输出一行“Not found”
Sample Input
高昊 12233 计算机
陈越东 12234 计算机
黄庆乐 12235 计算机
屠鹏博 12236 计算机
田伟 12237 计算机
王江 12238 计算机
(...以及后续24个学生的信息,略)
Sample Output
高昊 12233 计算机
以上是问题的要求,小弟我基本程序语句只知道一些,不知道怎么用结构体,求赐教~~~谢谢了
程序代码:#include &stdio.h&
#include &malloc.h&
#include &string.h&
#include &stdlib.h&
#define NULL 0
#define LEN sizeof(struct student)
struct student{
&&& char name[<font color=#];
&&& long int
&&& long int
&&& char major[<font color=#];
&&& struct student *
void seek();
int main(){
&&& int i,s,k;
for(i=<font color=#;i&<font color=#;i++){
struct student *p0;&&&
p0 = (struct student *)malloc(LEN);
scanf (&%s&,p0-&name);&&&
scanf (&%ld&,&p0-&birthday);
scanf (&%ld&,&p0-&order);
scanf (&%s&,p0-&major);
scanf(&%d&,&k);
for(s=<font color=#;s&k;s++){
&&& seek();
return <font color=#;
void seek()
struct student *p1;
scanf(&%ld&, &order);
if(head==NULL)
&&printf(&Not found\n&);
while (order!=p1-&order && p1-&next!=NULL)
if (order == p1-&order)
printf (&%s %ld %d %s\n&, p1-&name, p1-&birthday, p1-&order, p1-&major);
printf (&Not found\n&);
这是之前参考大神代码写的,但是连编译都过不了,还有好多地方自己都看不懂
搜索更多相关主题的帖子:
等 级:职业侠客
帖 子:107
专家分:387
如果你想要别人帮忙:
1、编译不通过,贴出来错误信息。
2、看不懂,贴出你看不懂的地方。
ps:如果你自己都不懂,别人就算给正确源码你,有什么意义。
来 自:中国
等 级:论坛游民
帖 子:18
专家分:46
&&得分:20&
#include &stdio.h&
#include &malloc.h&
#include &string.h&
#include &stdlib.h&
#define NULL 0
#define LEN sizeof(struct student)
struct student{
&&& char name[32];
&&& char major[32];
&&& struct student *
int main(){
&&& void seek(int k);
&&& struct student *p0;&&&
&&& p0 = (struct student *)malloc(LEN);
&&& for(i=0;i&32;i++){
&&& scanf (&%s&,&p0-&name);&&&
&&& scanf (&%ld&,&p0-&birthday);
&&& scanf (&%ld&,&p0-&order);
&&& scanf (&%s&,&p0-&major);
&&& p0=p0-&
&&& scanf(&%d&,&k);
&&& seek(k);
&&& return 0;
void seek(int k){
&&& struct student *p0;
&&& p0 = (struct student *)malloc(LEN);
&&& if(p0==NULL)
&&&&&&printf(&Not found\n&);
&&& while (k!=p0-&order && p0-&next!=NULL)
&&&&&&&&p0 = p0-&
&&& if (k==p0-&order)
&&&&&&&&printf (&%s %ld %d %s\n&, p0-&name, p0-&birthday, p0-&order, p0-&major);
&&&&&&&&printf (&Not found\n&);
稍作了修改,不知可以正常运行波
等 级:蒙面侠
帖 子:812
专家分:4151
这里是个学习交流的地方。不是索要答案的地方。。。
一花一世界、一叶一追寻、片片花叶落、情系何人身。
等 级:蜘蛛侠
帖 子:1092
专家分:1446
你的程序错的太多了,如果要修改实际就是重写了。你先看看书,自己修改一下再来问。
另:to 3楼:你的结点连接是不对的。
来 自:广东
等 级:论坛游民
帖 子:21
专家分:26
c语言入门书籍有讲链表,建议你去看一看。哈哈……
我只会一点C和HTML,叫我情何以堪!我要学php和java!
版权所有,并保留所有权利。
Powered by , Processed in 0.024707 second(s), 9 queries.
Copyright&, BCCN.NET, All Rights ReservedC语言 编程!!!二、实验题目: 有10个学生,每个学生的数据包括学号,姓名,及三门课成绩,总,平均。_百度知道
C语言 编程!!!二、实验题目: 有10个学生,每个学生的数据包括学号,姓名,及三门课成绩,总,平均。
二、实验题目:有10个学生,每个学生的数据包括学号,姓名,及三门课成绩,总成绩和平均成绩,从键盘输入10个学生的数据(包括学号,姓名及3门课成绩),要求打印出每位学生的学号,姓名,三门课的成绩,总成绩和平均成绩,最后再打印出3门课的总平均成绩以及最高分的学生的数据(包括姓名和总成绩)。三、实验要求:(1)根据学生信息定义一个结构体类型,在说明一个该结构体类型的数组;(2)用input函数从键盘上输入10个学生的数据;(3)用average函数求出每个学生总成绩、平均成绩和所有学生的总平均成绩;(4)用maximum函数找出最高分的学生的数据;(5)在主函数中输出每位学生的学号、姓名、三门课的成绩、总成绩和平均成绩以及总平均分和最高分学生的数据。
输出形式如下:
Average=85.00
The highest score:li,score total:270四:实验用仪器设备、器材或软件环境:TC2.0五:实验原理及设计方案:利用结构体、函数的调用和指针的传输。定义一个结构体,定义一个主函数,;定义一个input函数;定义一个average函数;定义一个maximum函数;然后,主函数进行调用,得到数据。六:程序流程图:有结果的截图是最好的!!会追加分的!!!你可以直接联系我,急求啊。我这有几分做好的不知道对不对。!!!
提问者采纳
自己多思考、所练习嘛,别老是百度。不过还是帮帮你# include&stdio.h&# define N 10struct student{char name[20];float score[3];} ;void main(){ void input(struct student s[]);
void sort(struct student s[]);
void print(struct student s[]);
struct student stu[N],* p=
print(p);}void input(struct student s[]){
printf(&please enter num,name and 3 scores:&#92;n&);
for(i=0;i&N;i++)
scanf(&%d %s %f %f %f&,&s[i].num,s[i].name,&s[i].score[0],&s[i].score[1],&s[i].score[2]);
s[i].total=s[i].score[0]+s[i].score[1]+s[i].score[2];
s[i].aver=(s[i].score[0]+s[i].score[1]+s[i].score[2])/3.0;
}}void sort(struct student s[]){
int i,j,k;
for(i=0;i&N-1;i++) {k=i;
for(j=i+1;j&N;j++)
if(s[j].aver&s[k].aver) k=j;
t=s[k];s[k]=s[i];s[i]=t; }}void print(struct student s[]){
printf(&the sorted result is:&#92;n&);
printf(& num
score1 score2 score3 total aver&#92;n&);
for(i=0;i&N;i++)
printf(&%5d %-9s %-6.1f %-6.1f %-6.1f %-6.1f %-6.1f&#92;n&,s[i].num,s[i].name,s[i].score[0],s[i].score[1],s[i].score[2],s[i].total,s[i].aver);}
提问者评价
其他类似问题
为您推荐:
等待您来回答
下载知道APP
随时随地咨询
出门在外也不愁求c语言代码(可运行7.15之前要)学生信息管理系统 要求1.输入模块完成10个学生的学号,姓名,_百度知道
求c语言代码(可运行7.15之前要)学生信息管理系统 要求1.输入模块完成10个学生的学号,姓名,
求c语言代码(可运行7.15之前要)学生信息管理系统要求1.输入模块完成10个学生的学号,姓名,三科成绩的输入,并计算平均成绩和总成绩,然后将数据存储到stud.dat2.插入模块完成按学号顺序插入学生信息功能3.排序功能完成按学号或总成绩对学生信息进行排序,并输出排序结果。4.查询功能完成按学号或姓名进行查询功能,并输出查询结果5.删除功能完成按输入的学号或姓名来删除学生信息的功能6.输出功能完成读取并显示学生信息
提问者采纳
我这里有一个现成的,基本能实现你的功能,而且功能更全,源代码和执行文件到:
下载,如果有用请采纳!谢谢
用手机我发现看不到我写的网址,用电脑就能看到并下载
我收不到下载地址,可以重新发下吗??
源代码和执行文件到: 下载
提问者评价
太给力了,你的回答完美地解决了我的问题,非常感谢!
其他类似问题
为您推荐:
学生信息管理系统的相关知识
等待您来回答
下载知道APP
随时随地咨询
出门在外也不愁C语言课程设计&#x2d;学生综合测评系统
扫扫二维码,随身浏览文档
手机或平板扫扫即可继续访问
C语言课程设计-学生综合测评系统
举报该文档为侵权文档。
举报该文档含有违规或不良信息。
反馈该文档无法正常浏览。
举报该文档为重复文档。
推荐理由:
将文档分享至:
分享完整地址
文档地址:
粘贴到BBS或博客
flash地址:
支持嵌入FLASH地址的网站使用
html代码:
&embed src='/DocinViewer-4.swf' width='100%' height='600' type=application/x-shockwave-flash ALLOWFULLSCREEN='true' ALLOWSCRIPTACCESS='always'&&/embed&
450px*300px480px*400px650px*490px
支持嵌入HTML代码的网站使用
您的内容已经提交成功
您所提交的内容需要审核后才能发布,请您等待!
3秒自动关闭窗口}

我要回帖

更多关于 c语言 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信