怎么样解决这个程序的问题??谢谢啦!

Donnedaen 2010-04-08 10:01:49
/*文件名:course.cpp*/
#include <stdio.h>
#include <string.h>
#define Stud 100
typedef struct
{
int snum;
char sname[10];
}STUDENT;
typedef struct
{
int cnum;
char cname[20];
}COURSE;
void student();
extern void course();
void input()
{
printf("输入信息:");
for (int i=1;i<Stud;i++);
{scanf(" 第%d个学生\n",i);
printf(" 姓名:");
scanf("%s",Stud);
printf(" 学号:");
}
}
void main()
{
input();
int select;
do
{
printf("主选项 1:学生姓名 2:学生学号 0:退出=>");
scanf("%d",&select);
switch (select)
{
case 1:printf(" 输入学生姓名:");course();break;
case 2:printf(" 输入学生学号:");course();break;
case 0:break;
default:printf(" 选择错误\n");break;
}
}while (select!=0);
}
void course()
{
void adcourse();/*add to*/
void recourse();/*revise*/
void dicourse();/*display*/
void locourse();/*look for*/
void decourse();/*delete*/
void dacourse();/*delete all*/
int sell;
do
{
printf( "课程记录操作: 1:添加 2:修改 3:显示 4:查找 5:删除 6:全删 0:返回=>");
scanf("%d",&sell);
switch (sell)
{
case 1:adcourse();break;
case 2:recourse();break;
case 3:dicourse();break;
case 4:locourse();break;
case 5:decourse();break;
case 6:dacourse();break;
case 0:break;
default :printf("\t**选择错误\n");break;
}
}while (sell!=0);
}
void adcourse()
{
FILE *fp;
COURSE course,course1;
if ((fp=fopen("course.dat","ab++"))==NULL)
if ((fp=fopen(("course.dat","wb++"))==NULL)
{
printf("\t>>不能建立course.dat文件\n");
return;
}
printf(" 输入格式:课程号 课程名\n");
printf(" 课程记录:");
scanf("%d%s",&course.cnum ,course.cname);
rewind(fp);
while (!feof(fp))
{
fread(&course1,sizeof(COURSE),1,fp);
if (course1.cnum ==course.cnum) break;
}
if (!feof(fp))
printf("\t>>课程号重复\n");
else
fwrite(&course,sizeof(COURSE),1,fp);
fclose(fp);
}
void recourse()
{
FILE *fp;
COURSE course,ncourse;
int i,num;
if ((fp=fopen("course.dat","rb++"))==NULL)
{
printf("\t>>不能打开course.dat文件\n");
return;
}
fseek(fp,0,2);
if (ftell(fp)>0)
{
rewind(fp);
printf( "要修改的课程号:");
scanf("%d",&num);
for (i=0;!feof(fp)&&fread(&course,sizeof(COURSE),1,fp)==1;i++)
if (course.cnum==num) break;
if (feof(fp));
{
printf("\t>>没有%d课程号的课程\n",num);
return;
}
printf(" 输入格式:课程名\n");
scanf("%s",ncourse.cname);
ncourse.cnum=course.cnum;
fseek(fp,-(long)sizeof(COURSE),SEEK_CUR);
fwrite(&newcourse,sizeof(COURSE),1,fp);
fclose(fp);
}
else
printf("\t>>无任何记录\n");
fclose(fp);
}
}
void decourse()
{
void dacourse();
FILE *fp;
COURSE course[Stud];
int i,j,num;
if ((fp=fopen("course.dat","rb"))==NULL)
{
printf("\t>>不能打开course.dat文件\n");
return;
}
fseek(fp,0,2);
if (ftell(fp)>0)
{
rewind(fp);
for (i=0;!feof(fp)&&fread(&course[n],sizeof(COURSE),1,fp);n++);
printf(" 要删除的课程号:");
scanf("%d",&num);
for (i=0;i<n&&course[i].cnum!=num;i++);
if (i>=n)
{
printf("\t>>没有%d课程号的课程\n",num);
return;
}
fclose(fp);
if (n>1)
{
for (j=i;j<n-1;j++)
course[i]=course[i+1];
fp=fopen("course.dat","wb");
for (i=0;i<n-1;i++)
fwrite(&course[i],sizeof(COURSE),1,fp);
fclose(fp);
}
else dacourse();
}
else
{
printf("\t>>无任何记录\n");
fclose(fp);
}
}
void dicourse()
{
FILE *fp;
int i;
COURSE course;
if ((fp=fopen("course.dat","rb"))==NULL)

{
printf("\t>>不能打开course.dat文件\n");
return;
}
fseek(fp,0,2);
if (ftell(fp)>0)
{
rewind(fp);
printf(" 记录号 课程号 课程名\n");
i=0;
while (1)
{
fread(&course,sizeof(COURSE),1,fp);
if (feof(fp)) break;
printf(" %6d%10d%20s\n",i+1,course.cnum,course.cname );
i++;
}
}
else
printf("\t>>无任何记录\n");
}
void dacourse()
{
FILE *fp;
if ((fp=fopen("course.dat","rb"))==NULL)


{
printf("\t>>不能打开course.dat文件\n");
return;
}
printf("\t>>全部记录已删\n");
fclose(fp);
}
void locourse()
{
int i=0,num;
FILE *fp;
COURSE course;
if ((fp=fopen("course.dat","rb"))==NULL)

{
printf("\t>>不能打开course.dat文件\n");
return;
}
fseek(fp,0,2);
if (ftell(fp)>0)
{
printf(" 输入课程号:");
scanf("%d",&num);
rewind(fp);
while (1)
{
fread(&course,sizeof(COURSE),1,fp);
if (feof(fp)||course.cnum ==num) break;
i++;
}
if (!feof(fp))
{
printf(" 记录号 课程号 课程名\n");
printf(" %6d%10d%20s\n",i+1,course.cnum,course.cname );
}
else
printf("\t>>查无此记录\n");
}
else
printf("\t>>无任何记录\n");
}
















-------------------Configuration: 数据结构设计 - Win32 Debug--------------------
Compiling...
a.cpp
G:\学习\编程\数据结构设计\a.cpp(74) : error C2018: unknown character '0xa3'
G:\学习\编程\数据结构设计\a.cpp(74) : error C2018: unknown character '0xac'
G:\学习\编程\数据结构设计\a.cpp(74) : error C2660: 'fopen' : function does not take 1 parameters
G:\学习\编程\数据结构设计\a.cpp(75) : error C2018: unknown character '0xa3'
G:\学习\编程\数据结构设计\a.cpp(75) : error C2018: unknown character '0xac'
G:\学习\编程\数据结构设计\a.cpp(75) : error C2660: 'fopen' : function does not take 1 parameters
G:\学习\编程\数据结构设计\a.cpp(76) : error C2143: syntax error : missing ')' before '{'
G:\学习\编程\数据结构设计\a.cpp(100) : error C2018: unknown character '0xa3'
G:\学习\编程\数据结构设计\a.cpp(100) : error C2018: unknown character '0xac'
G:\学习\编程\数据结构设计\a.cpp(100) : error C2660: 'fopen' : function does not take 1 parameters
G:\学习\编程\数据结构设计\a.cpp(114) : warning C4390: ';' : empty controlled statement found; is this the intent?
G:\学习\编程\数据结构设计\a.cpp(122) : error C2065: 'newcourse' : undeclared identifier
G:\学习\编程\数据结构设计\a.cpp(129) : error C2143: syntax error : missing ';' before '}'
G:\学习\编程\数据结构设计\a.cpp(129) : error C2143: syntax error : missing ';' before '}'
G:\学习\编程\数据结构设计\a.cpp(129) : error C2143: syntax error : missing ';' before '}'
G:\学习\编程\数据结构设计\a.cpp(131) : error C2143: syntax error : missing ';' before '{'
G:\学习\编程\数据结构设计\a.cpp(131) : error C2447: missing function header (old-style formal list?)
G:\学习\编程\数据结构设计\a.cpp(136) : error C2018: unknown character '0xa3'
G:\学习\编程\数据结构设计\a.cpp(136) : error C2018: unknown character '0xac'
G:\学习\编程\数据结构设计\a.cpp(159) : error C2018: unknown character '0xa3'
G:\学习\编程\数据结构设计\a.cpp(159) : error C2018: unknown character '0xac'
G:\学习\编程\数据结构设计\a.cpp(177) : error C2018: unknown character '0xa3'
G:\学习\编程\数据结构设计\a.cpp(177) : error C2018: unknown character '0xac'
G:\学习\编程\数据结构设计\a.cpp(177) : error C2660: 'fopen' : function does not take 1 parameters
G:\学习\编程\数据结构设计\a.cpp(203) : error C2018: unknown character '0xa3'
G:\学习\编程\数据结构设计\a.cpp(203) : error C2018: unknown character '0xac'
G:\学习\编程\数据结构设计\a.cpp(203) : error C2660: 'fopen' : function does not take 1 parameters
G:\学习\编程\数据结构设计\a.cpp(218) : error C2018: unknown character '0xa3'
G:\学习\编程\数据结构设计\a.cpp(218) : error C2018: unknown character '0xac'
G:\学习\编程\数据结构设计\a.cpp(218) : error C2660: 'fopen' : function does not take 1 parameters
执行 cl.exe 时出错.

数据结构设计.exe - 1 error(s), 0 warning(s)

...全文
214 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
Donnedaen 2010-04-11
  • 打赏
  • 举报
回复
补充:用VC++编译主要是这行有问题"if ((fp=fopen("course.dat","ab++"))==NULL)"具体而言在这儿"course.dat",请问这儿有什么问题?
Donnedaen 2010-04-11
  • 打赏
  • 举报
回复
[Quote=引用 5 楼 cattycat 的回复:]
你的输入中有非法字符,就是中文的字符,用个visual assist VC助手吧
[/Quote]
代码是结合c语言书上及自己的理解整合出来的,是不是有中文字符就会出现:
G:\学习\编程\数据结构设计\a.cpp(75) : error C2018: unknown character '0xa3'
G:\学习\编程\数据结构设计\a.cpp(75) : error C2018: unknown character '0xac'
这样两个错误呢?
cattycat 2010-04-09
  • 打赏
  • 举报
回复
你的输入中有非法字符,就是中文的字符,用个visual assist VC助手吧
ithiker 2010-04-09
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 xuwenq 的回复:]
估计lz是从什么地方拷了些代码过来,附带了一些隐性字符
用记事本中转一下?
[/Quote]
应该是这样的,或是检查下中英文标点,看有没有输错
Daniel_31 2010-04-09
  • 打赏
  • 举报
回复
看着太费劲了
小李子 2010-04-08
  • 打赏
  • 举报
回复
估计lz是从什么地方拷了些代码过来,附带了一些隐性字符
用记事本中转一下?
AlanBruce 2010-04-08
  • 打赏
  • 举报
回复
UP


UP

15,440

社区成员

发帖
与我相关
我的任务
社区描述
C/C++ 非技术区
社区管理员
  • 非技术区社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧