运行错误-求c语言大神帮忙看看哪里出错了

问题描述

求c语言大神帮忙看看哪里出错了

#include
#include
#include

struct course
{
int num; //选题编号
char name[20];//课题名称
char kind[10];//课程性质
int taltime,ttime,etime,mark,term;//课程时间,学分,开课信息
};
struct student
{
int snum; //学生学号
int cnum; //所选课题编号
char cname[20];//所选课题名称
};
//函数原型
void fl();
void menu();
void browser();
void search();
void xuan_ti();
void xuanti_information();
void input();

void fl()
{
printf("n 选题编号课题名称课程性质授课学时实验或上机学时总学时学分开课学期:n");
}
void menu()
{
printf("nnn");
printf(" 欢迎使用毕业设计选题管理系统! n");
printf(" 1-浏览选题信息 2-查询选题信息n");
printf(" 3-进入选题操作 4-选题情况统计n");
printf(" 5-录入选题信息 0-退出选题系统n");
printf(" 请选择输入选项编号(请选择5进行课程信息录入):");
}

void main()
{
int n;
menu();
scanf("%d",&n);
//防止错误,提示重新输入
for(;n>5||n
{
printf("n 输入错误,请重新输入! ");
scanf("%d",&n);
}
while(n>0&&n
{
switch(n)
{
case 1:browser();break;//浏览选题信息
case 2:search();break; //查询选题信息
case 3:xuan_ti();break;//进入选题信息
case 4:xuanti_information();break;//选题情况统计
case 5:input();break;//录入选题信息
}
scanf("%d",&n);
for(;n>5||n
{
printf("n 输入错误,请重新输入! ");
scanf("%d",&n);
}
system("cls");//清除屏幕
}
if(n==0)
exit(0);//退出系统
}
//浏览选题信息
void browser()
{
FILE*fp;//定义指向文件的指针
struct course c;//定义课程结构体变量c
if((fp=fopen("course.txt","r"))==NULL)
{
printf("nCannot open course!n");
}
fl();
for(;!feof(fp);)//直到文件结束
{
fscanf(fp,"%d%s%s%d%d%d%d%dn",&c.num,&c.name,&c.kind,&c.ttime,&c.etime,&c.taltime,&c.mark,&c.term);//格式化输出
}
fclose(fp);//关闭文件
menu();
}
//查询选题信息
void search()
{
FILE*fp;//定义文件指针变量
struct course c;//定义学生结构体变量c
int score;
char kind[10];
char name[20];
int b;
//输入需要的查询选题信息的方式
printf("n 1.按学分查询n");
printf("n 2.按课程性质查询n");
printf("n 3.按课程名称查询n");
printf("n 请选择查询方式,输入选项数字:");
scanf("%d",&b);
for(;b3;)
{
printf("n 输入错误,请重新输入! ");
scanf("%d",&b);
}
//按学分查询
if(b==1)
{
printf("n 请输入您要查询的学分:");
scanf("%d",&score);
if((fp=fopen("course.txt","r"))==NULL)
printf("nCannot open coruse!n");
fl();
for(;!feof(fp);)
{
fscanf(fp,"%d%s%s%d%d%d%d%dn",&c.num,&c.name,&c.kind,&c.ttime,&c.etime,&c.taltime,&c.mark,&c.term);
if(c.mark==score)
printf("%5d%12s%9s%9d%12d%13d%8d%9dn",c.num,c.name,c.kind,c.ttime,c.etime,c.taltime,c.mark,c.term);
}
}
//按课程性质查询
else if(b==2)
{
printf("n 请输入您要查询的课程性质:");
scanf("%s",&kind);
if((fp=fopen("course.txt","r"))==NULL)
printf("nCannot open coruse!n");
fl();
for(;!feof(fp);)
{
fscanf(fp,"%d%s%s%d%d%d%d%dn",&c.num,&c.name,&c.kind,&c.ttime,&c.etime,&c.taltime,&c.mark,&c.term);
if(strcmp(c.kind,kind)==0)
printf("%5d%12s%9s%9d%12d%13d%8d%9dn",c.num,c.name,c.kind,c.ttime,c.etime,c.taltime,c.mark,c.term);
}
}
//按选题名称查询
else if(b==3)
{
printf("n 请输入您要查询的选题名称:");
scanf("%s",&name);
if((fp=fopen("course.txt","r"))==NULL)
printf("nCannot open coruse!n");
fl();
for(;!feof(fp);)
{
fscanf(fp,"%d%s%s%d%d%d%d%dn",&c.num,&c.name,&c.kind,&c.ttime,&c.etime,&c.taltime,&c.mark,&c.term);
if(strcmp(c.name,name)==0)
printf("%5d%12s%9s%9d%12d%13d%8d%9dn",c.num,c.name,c.kind,c.ttime,c.etime,c.taltime,c.mark,c.term);
}
}
else{
printf("输入错误!");
exit(1);
}
fclose(fp);
menu();//调用menu函数
}
//进入选题操作
void xuan_ti()
{
struct student s;//定义学生结构体变量s
struct course c;
FILE*fp;
printf("n请输入您的学号及您要选择的课题编号(用空格分开):");
scanf("%d%d,&s.snum,&s.cnum");
if((fp=fopen("course.txt","r"))==NULL)//打开选题记录文件
{
printf("nCannot open course!n");
}
for(;feof(fp);)
{
fscanf(fp,"%d%s%s%d%d%d%d%dn",&c.num,&c.name,&c.kind,&c.ttime,&c.etime,&c.taltime,&c.mark,&c.term);
if(s.cnum==c.num)
break;
}
fclose(fp);//关闭选题记录文件
if((fp=fopen("student.txt","a+"))==NULL)
{
printf("nCannot open student!n");
}//将学生选题信息输入文件
fprintf(fp,"%d%d%sn",s.snum,s.cnum,c.name);
fclose(fp);
printf("n 恭喜您选题成功!n");
menu();
}
//选题情况统计
void xuanti_infomation()
{
int total=0;//人数统计变量
FILE*fp;
struct student s;
if((fp=fopen("student.txt","r"))==NULL)
{
printf("nCannot open student!n");
}
printf("n 学号选题编号名称n");
for(;!feof(fp);)
{
fscanf(fp,"%d%d%sn",&s.snum,&s.cnum,&s.cname);
total++;
printf("%22d%17d%18sn",s.snum,s.cnum,s.cname);
}
printf("n 选题学生总人数:%d人",total);
fclose(fp);
menu();
}
//录入课题信息
void input()
{
FILE*fp;
struct course c;
int count;
int i;
if((fp=fopen("course.txt","a+"))==NULL)//建立文件设计题目的信息
{
printf("cannot open filen");
}
printf("n (录入选题信息)请输入课题数量:");
scanf("%d",&count);
printf("n (各项目间用空格分开)");
fl();
for(i=0;i<count;i++)
{
scanf("%d%s%s%d%d%d%d%dn",&c.num,&c.name,&c.kind,&c.ttime,&c.etime,&c.taltime,&c.mark,&c.term);
fprintf(fp,"%d%s%s%d%d%d%d%dn",c.num,c.name,c.kind,c.ttime,c.etime,c.taltime,c.mark,c.term);
}
fclose(fp);
printf("n 录入信息成功!");
menu();
}

解决方案

// 你这不是抄的我跟你信 ,给你改了。自己运行看看
//

#include
#include
#include
struct course
{
int num; //选题编号
char name[20];//课题名称
char kind[10];//课程性质
int taltime,ttime,etime,mark,term;//课程时间,学分,开课信息
};
struct student
{
int snum; //学生学号
int cnum; //所选课题编号
char cname[20];//所选课题名称
};
//函数原型
void fl();
void menu();
void browser();
void search();
void xuan_ti();
void xuanti_information();
void input();
void fl()
{
printf("n 选题编号课题名称课程性质授课学时实验或上机学时总学时学分开课学期:n");
}
void menu()
{
printf("nnn");
printf(" 欢迎使用毕业设计选题管理系统! n");
printf(" 1-浏览选题信息 2-查询选题信息n");
printf(" 3-进入选题操作 4-选题情况统计n");
printf(" 5-录入选题信息 0-退出选题系统n");
printf(" 请选择输入选项编号(请选择5进行课程信息录入):");
}
void main()
{
int n;
menu();
scanf("%d",&n);
//防止错误,提示重新输入
if(n>5)
{
printf("n 输入错误,请重新输入! ");
scanf("%d",&n);
}
while(n>0&&n) {
switch(n)
{
case 1:browser();break;//浏览选题信息
case 2:search();break; //查询选题信息
case 3:xuan_ti();break;//进入选题信息
case 4:xuanti_information();break;//选题情况统计
case 5:input();break;//录入选题信息
}
scanf("%d",&n);
if(n>5)
{
printf("n 输入错误,请重新输入! ");
scanf("%d",&n);
}
system("cls");//清除屏幕
}
if(n==0)
exit(0);//退出系统
}
//浏览选题信息
void browser()
{
FILE*fp;//定义指向文件的指针
struct course c;//定义课程结构体变量c
if((fp=fopen("course.txt","r"))==NULL)
{
printf("nCannot open course!n");
}
fl();
for(;!feof(fp);)//直到文件结束
{
fscanf(fp,"%d%s%s%d%d%d%d%dn",&c.num,&c.name,&c.kind,&c.ttime,&c.etime,&c.taltime,&c.mark,&c.term);//格式化输出
}
fclose(fp);//关闭文件
menu();
}
//查询选题信息
void search()
{
FILE*fp;//定义文件指针变量
struct course c;//定义学生结构体变量c
int score;
char kind[10];
char name[20];
int b;
//输入需要的查询选题信息的方式
printf("n 1.按学分查询n");
printf("n 2.按课程性质查询n");
printf("n 3.按课程名称查询n");
printf("n 请选择查询方式,输入选项数字:");
scanf("%d",&b);
for(;b>3;)
{
printf("n 输入错误,请重新输入! ");
scanf("%d",&b);
}
//按学分查询
if(b==1)
{
printf("n 请输入您要查询的学分:");
scanf("%d",&score);
if((fp=fopen("course.txt","r"))==NULL)
printf("nCannot open coruse!n");
fl();
for(;!feof(fp);)
{
fscanf(fp,"%d%s%s%d%d%d%d%dn",&c.num,&c.name,&c.kind,&c.ttime,&c.etime,&c.taltime,&c.mark,&c.term);
if(c.mark==score)
printf("%5d%12s%9s%9d%12d%13d%8d%9dn",c.num,c.name,c.kind,c.ttime,c.etime,c.taltime,c.mark,c.term);
}
}
//按课程性质查询
else if(b==2)
{
printf("n 请输入您要查询的课程性质:");
scanf("%s",&kind);
if((fp=fopen("course.txt","r"))==NULL)
printf("nCannot open coruse!n");
fl();
for(;!feof(fp);)
{
fscanf(fp,"%d%s%s%d%d%d%d%dn",&c.num,&c.name,&c.kind,&c.ttime,&c.etime,&c.taltime,&c.mark,&c.term);
if(strcmp(c.kind,kind)==0)
printf("%5d%12s%9s%9d%12d%13d%8d%9dn",c.num,c.name,c.kind,c.ttime,c.etime,c.taltime,c.mark,c.term);
}
}
//按选题名称查询
else if(b==3)
{
printf("n 请输入您要查询的选题名称:");
scanf("%s",&name);
if((fp=fopen("course.txt","r"))==NULL)
printf("nCannot open coruse!n");
fl();
for(;!feof(fp);)
{
fscanf(fp,"%d%s%s%d%d%d%d%dn",&c.num,&c.name,&c.kind,&c.ttime,&c.etime,&c.taltime,&c.mark,&c.term);
if(strcmp(c.name,name)==0)
printf("%5d%12s%9s%9d%12d%13d%8d%9dn",c.num,c.name,c.kind,c.ttime,c.etime,c.taltime,c.mark,c.term);
}
}
else{
printf("输入错误!");
exit(1);
}
fclose(fp);
menu();//调用menu函数
}
//进入选题操作
void xuan_ti()
{
struct student s;//定义学生结构体变量s
s.cnum=0;
s.snum=0;
struct course c;
FILE*fp;
printf("n请输入您的学号及您要选择的课题编号(用空格分开):");
scanf("%d%d,&s.snum,&s.cnum");
if((fp=fopen("course.txt","r"))==NULL)//打开选题记录文件
{
printf("nCannot open course!n");
}
for(;feof(fp);)
{
fscanf(fp,"%d%s%s%d%d%d%d%dn",&c.num,&c.name,&c.kind,&c.ttime,&c.etime,&c.taltime,&c.mark,&c.term);
if(s.cnum==c.num)
break;
}
fclose(fp);//关闭选题记录文件
if((fp=fopen("student.txt","a+"))==NULL)
{
printf("nCannot open student!n");
}//将学生选题信息输入文件
fprintf(fp,"%d%d%sn",s.snum,s.cnum,c.name);
fclose(fp);
printf("n 恭喜您选题成功!n");
menu();
}
//选题情况统计
void xuanti_infomation()
{
int total=0;//人数统计变量
FILE*fp;
struct student s;
if((fp=fopen("student.txt","r"))==NULL)
{
printf("nCannot open student!n");
}
printf("n 学号选题编号名称n");
for(;!feof(fp);)
{
fscanf(fp,"%d%d%sn",&s.snum,&s.cnum,&s.cname);
total++;
printf("%22d%17d%18sn",s.snum,s.cnum,s.cname);
}
printf("n 选题学生总人数:%d人",total);
fclose(fp);
menu();
}
//录入课题信息
void input()
{
FILE*fp;
struct course c;
int count;
int i;
if((fp=fopen("course.txt","a+"))==NULL)//建立文件设计题目的信息
{
printf("cannot open filen");
}
printf("n (录入选题信息)请输入课题数量:");
scanf("%d",&count);
printf("n (各项目间用空格分开)");
fl();
for(i=0;i<count;i++)
{
scanf("%d%s%s%d%d%d%d%dn",&c.num,&c.name,&c.kind,&c.ttime,&c.etime,&c.taltime,&c.mark,&c.term);
fprintf(fp,"%d%s%s%d%d%d%d%dn",c.num,c.name,c.kind,c.ttime,c.etime,c.taltime,c.mark,c.term);
}
fclose(fp);
printf("n 录入信息成功!");
menu();
}

解决方案二:

你运行后的错误日志是什么?看日志你应该可以找到错误的地方

解决方案三:

是否能说明你预期得到什么结果,以及实际的结果(或错误信息)?

解决方案四:

很多地方语法都是错的,楼主还是自己先编译一下吧。漏洞百出。

解决方案五:

楼主的代码应该会有好多问题,可以根据错误提示从前往后修改,因为有的代码出现错误是由于前面的错误并未修改,还有楼主用到的for语句好多都是类似for( ; value; )的形式,好像是判断语句似的,如果代码不是拿来主义的话可以好好修改一下。

时间: 2024-12-02 14:40:43

运行错误-求c语言大神帮忙看看哪里出错了的相关文章

mingw-用msys编译GMP、PBC库是出现错误,求万能的大神帮忙解决!

问题描述 用msys编译GMP.PBC库是出现错误,求万能的大神帮忙解决! 用msys编译GMP.PBC库是出现如下错误,求万能的大神帮忙解决! Config.log如下: This file contains any messages produced by compilers while running configure, to aid debugging if configure makes a mistake. It was created by GNU MP configure 6.

acm-ACM HDU1879继续畅通工程 提交RE.求各路大神帮忙看一下哪儿错了

问题描述 ACM HDU1879继续畅通工程 提交RE.求各路大神帮忙看一下哪儿错了 题目大意: 求最小生成树的权值和,并输出.已经修建的路(已经连上的边)是不会算入到最后的ANS中. Input 测试输入包含若干测试用例.每个测试用例的第1行给出村庄数目N ( 1< N < 100 ):随后的 N(N-1)/2 行对应村庄间道路的成本及修建状态,每行给4个正整数,分别是两个村庄的编号(从1编号到N),此两村庄间道路的成本,以及修建状态:1表示已建,0表示未建. 当N为0时输入结束. Samp

tomcat-MyEclipse和Tomcat的问题 求哪位大神帮忙指教一下拜托拜托急急急

问题描述 MyEclipse和Tomcat的问题 求哪位大神帮忙指教一下拜托拜托急急急 这是Action包里的 package com.bus.cnu.action; import com.carver.ptm.core.persistence.base.BaseDao; import java.util.List; import javax.servlet.http.HttpServletRequest; import org.apache.struts2.ServletActionConte

android应用-android 运行报错。 各位大神帮忙看看

问题描述 android 运行报错. 各位大神帮忙看看 在 problems 里面 没有提示错误,但是 运行起来就 一打开程序 就直接退出了..看着貌似线程的问题.. 具体看不懂 请教各位大神.. 01-11 10:57:25.741: E/AndroidRuntime(25259): FATAL EXCEPTION: main 01-11 10:57:25.741: E/AndroidRuntime(25259): java.lang.RuntimeException: Unable to s

hibernate 根据持久化类 创建数据库表的时候出现的错误如下,请大神帮忙解决?

问题描述 hibernate 根据持久化类 创建数据库表的时候出现的错误如下,请大神帮忙解决? 十二月 09, 2015 1:49:52 下午 org.hibernate.tool.hbm2ddl.DatabaseMetadata getTableMetadata 信息: table not found: DIC_TAB 十二月 09, 2015 1:49:52 下午 org.hibernate.tool.hbm2ddl.DatabaseMetadata getTableMetadata 信息:

证书-微信支付接口的,求哪位大神帮忙下

问题描述 微信支付接口的,求哪位大神帮忙下 现在在做一个手机站放到微信上,购物车订单功能能都做好了现在要做微信支付,以前没做过,微信支付接口到时是要放什么证书么 ,还是跟支付宝那种一样接口做好就可以直接用.我是用asp.net做的

java-【spring-mvc 报404错误问题】麻烦大神帮忙看看 :)

问题描述 [spring-mvc 报404错误问题]麻烦大神帮忙看看 :) 各种环境都有,spring下面的包,commons-logging.jar,请问怎么解决? 解决方案 没有加载到Spring的配置文件吧,web.xml中你注释掉了 解决方案二: 没有加载到Spring的配置文件吧,web.xml中你注释掉了 解决方案三: web.xml中没有配置spring-servlet.xml 解决方案四: 你处理的是/hello 你的mv的里面直接写hello,不认识 解决方案五: 404是找不

大神帮忙看看那写错了

问题描述 大神帮忙看看那写错了 求你们帮我看看 为什么结果显示不出来 谢谢 如需要html代码 请说一下 谢谢 没有那个点击 按钮 click事件 我还没有添加 js // 金额 input1 上浮 shangfu 利息 lixi 本息合计 benxi 计算结果 bizhong $("documetn").ready(function() { //初始化存入日期 var d = new Date(); var s2 = d.getFullYear() + "-" +

c# 数据库-大神,看看那出错了,说user有语法错误

问题描述 大神,看看那出错了,说user有语法错误 private void button1_Click(object sender, EventArgs e) { SqlConnection con = null; try { con = new SqlConnection( "Data Source=llll-PC;Initial Catalog=yonghu;User ID=sa;Password=123"); string sql = "select * from T