编程达人帮我读读这程序

我现在是用turbo c 2.0做的c语言程序
但是我放到visual c++6.0中的c编译下编译没有办法通过
请帮忙修改一下、
不能单纯把后缀名改成.c++
必须是.c
谢谢
2.学生成绩管理程序设计
(1)选项菜单集成各功能函数模块
(2)录入学生成绩(姓名、学号、语文、数学成绩,总分自动计算)
(3)按总分排名次
(4)按姓名查找某学生成绩
(5)统计各课程的平均分、及格率、最高分、最低分
(6)打印成绩表

#include <iostream.h>
#include <stdlib.h>
struct student
{
int num;
char name[20];
int foxscore;
int cscore;
int englishscore;
struct student *next;
};

void menu()
{
cout<<" welecome to my student grade management system"<<endl;
cout<<" please follow everyone step in the menu"<<endl;
cout<<" 1.input information"<<endl;
cout<<" 2.total scores"<<endl;
cout<<" 3.sort"<<endl;
cout<<" 4.query"<<endl;
cout<<" ***************************************************"<<endl;
}
struct student *creat(struct student *head) /* 函数返回的是与节点相同类型的指针*/
{
struct student *p1,*p2;
p1=p2=(struct student*) malloc(sizeof(struct student)); /* 申请新节点*/
cin>>p1->num>>p1->name>>p1->foxscore>>p1->cscore>>p1->englishscore; /* 输入节点的值*/
p1-> next = NULL; /*将新节点的指针置为空*/
for(int i=1;i<=4;i++)
{
if (head==NULL) head=p1; /*空表,接入表头*/
else p2->next=p1; /*非空表,接到表尾*/
p2 = p1;
p1=(struct student *)malloc(sizeof(struct student)); /*申请下一个新节点*/
if(i<=3)
{
cin>>p1->num>>p1->name>>p1->foxscore>>p1->cscore>>p1->englishscore;
}
/*输入节点的值*/
}
return head; /*返回链表的头指针*/
}
我是菜鸟啊
能不能通过只修改代码来解决问题

第1个回答  2006-05-25
void count(struct student *head)
{
struct student *temp;
temp=head; /*取得链表的头指针*/
for(int i=1;i<=4;i++)
{
int m;
m=temp->foxscore+temp->cscore+temp->englishscore;
cout<<m<<endl;/*输出链表节点的值*/
temp=temp->next; /*跟踪链表增长*/
}
}
void sort(struct student *head)
{
struct student *tp;
tp=head;
int a[4];/*定义总分数组*/
int i,j,k;
a[1]=tp->foxscore+tp->cscore+tp->englishscore;
tp=tp->next;
a[2]=tp->foxscore+tp->cscore+tp->englishscore;
tp=tp->next;
a[3]=tp->foxscore+tp->cscore+tp->englishscore;
tp=tp->next;
a[4]=tp->foxscore+tp->cscore+tp->englishscore;
for(j=1;j<=3;j++)/*冒泡法排序*/
for(k=1;k<=4-j;k++)
if(a[k]<a[k+1])
{
int t=a[k];a[k]=a[k+1];a[k+1]=t;
}
for(i=1;i<5;i++)
cout<<a[i]<<endl;
}
void query(struct student *head)
{
struct student *temper;
temper=head;
int number;
cin>>number;
for(int i=1;i<=4;i++)
{
if(number==temper->num)
{
cout<<" name is:"<<temper->name<<endl;
cout<<" fox score is:"<<temper->foxscore<<endl;
cout<<" c score is:"<<temper->cscore<<endl;
cout<<" English score is:"<<temper->englishscore<<endl;
cout<<" congratulation,syetem have found what you want to search"<<endl;
}
temper=temper->next;
}
}
void main()
{
menu();
cout<<" firstly,please input information:"<<endl;
struct student *head;
head=NULL; /* 建一个空表*/
head=creat(head); /* 创建单链表*/
cout<<" secondly,count the total score each student:"<<endl;
count(head);
cout<<" thirdly,sorting the total score:"<<endl;
sort(head);
cout<<" enter num that you can search each shtudent's information"<<endl;
query(head);
cout<<" thanks you for use my student grade management system"<<endl;
}
第2个回答  2006-05-25
进入命令行方式,再进VC的BIN目录\Program Files\Microsoft Visual Studio\VC98\Bin 运行VCVARS32.BAT设置环境变量
然后就可以再cl.exe /TP XXX.c
就行了
要是你一定要在VC环境下面编译就要在ALT+F7->C/C++->Project Options里手动加/TP本回答被提问者采纳
第3个回答  2006-05-25
你是NJUPT的吗?

编程达人帮我读读这程序
void count(struct student *head){ struct student *temp;temp=head; \/*取得链表的头指针*\/ for(int i=1;i<=4;i++){ int m;m=temp->foxscore+temp->cscore+temp->englishscore;cout<<m<<endl;\/*输出链表节点的值*\/ temp=temp->next; \/*跟踪链表增长*\/ } } void sort(struct stu...

短码之美:编程达人的心得技法目录
1.3 实践入门 要开始,需要设置编程环境,常用语言如C\/C++,注册poj账号,并理解基本规则和微妙细节。热身阶段,从简单加法到复杂算法,如计算平均值和解决逻辑谜题。第二章:必读技巧2.1 精通规则 理解醉汉看守和阶段划分是关键,如连续数的和问题。快速排序的hack让你在排序挑战中游刃有余,熟练运用库...

有什么关于自学电脑编程的书?
17、《C++ primer》 18、《win32程序员参考手册》 19、《用TCP\/IP进行网际互连》 20、《COM 本质论》(七)学习计划 D―-这个学习计划是我个人定的,也共享给大家参考一下,共同进步吧。 1、《计算机组成原理》 2、《操作系统》 3、《数据结构》 4、《汇编语言》 5、《 C 》 6、《 C++ 》 7、《VC 技...

求编程达人帮忙,谢谢了
for i=1 to 100 s=s+i endfor (2)input "请输入x值:" to x ? "y="+alltrim(str(iif(x>0,x^3+5,iif(x=0,0,x-5)))

急!!!求各位数控车床编程达人帮我下忙!
程序:O***1;N1;(粗车55*50)G17G40G49G99G21;M03S500;T0101M08;G00X62.;Z2.0;G71U1.5R0.2;G71P10Q20U0.5W0F0.15;N10G00X56.;G01Z-52.F0.08;N20X62.;G00X100.'Z100.;M05;M09;M00;N2;(精车55*50)M03S900;T0202M08;G00X62.;Z2.0;G70P10Q20;G00X100.;Z100.;...

他是什么小达人500字作文
1、他是编程小达人 在我身边,有一位被誉为编程小达人的朋友——小明。他对编程的热爱和执着追求,让我深受感染。小明从小就对电脑和编程有着浓厚的兴趣。当他第一次接触到编程语言时,他就像找到了自己的归宿。他利用课余时间自学各种编程语言,不断尝试编写各种小程序。随着时间的推移,小明的编程技能...

编程达人数据库达人来帮下
是的,很多人都那么做。你若把.asp改成.mdb,相应程序中也要改过来。总而言之,不管是以什么扩展名结尾,你指定的“数据源驱动名称”一定要正确(目前你指定的是Access数据库驱动),才能正确的读取到你之后指定路径中的数据库。--- VBScript呀 ASP是用VBScript脚本语言的格式 上面是连接数据库用的...

C语言编程达人请进
看这一句:fwrite(&arr,sizeof(int),1,fp);sizeof(int)表示你写入的一块的大小,你用的是一个int大小。1表示你要写入的块的数目。显然在你机器上一个int是4个字节,而arr的类型是char *,一个char是1个字节,所以你写入4个字节大小的数据时就会写入四个字符。如果你要写入全部字符,改成 fwri...

求达人帮忙看看这是什么编程代码?要用什么工具编译?在线等..._百度知...
RegQueryValueExA() Win32 API MessageBoxA() Win32 API 综上所述代码用VC 6.0及以上版本都可以编译 有个问题, 该程序不完整 key4 key5 key7 变量未定义 char* readdir();char* readfile();void encode(char *buffer, int len);char* encode1(char *buffer);void encode2(char *buffer, ...

请编程达人帮下小忙
1if (sex=='M'||sex=='m')这是什么意思啊?为什么还要有sex=='m':这个表示为了判断输入的性别是不是男孩,还判断m是为了程序的健壮性,就是如果用户输入了小写m也认为是输入正确的。2如果要吧printf("你是男孩(M)还是女孩(F):");改成printf("你是男孩吗(Y\/N)");那么后来改成:if (...

相似回答
大家正在搜