三九宝宝网宝宝教育教学论文

跪求 C语言程序设计现代方法

01月02日 编辑 39baobao.com

[C语言:迷宫求程序快哭了!好虐。。]输入这段就不用写了吧。比较简单 A 输入迷宫 用2维数组把这个 迷宫存下来就行了。 墙用0表示 路用1表示。 或者直接用字符的2维数组也行。设为公共变量 migong[m][m] 用公共...+阅读

这是我用的,我同学做的,我也没仔细看,如果可以的话就用这个吧。 #include/*引用库函数*/ #include #include #include typedef struct /*定义结构体数组*/ { char num[10]; /*学号*/ char name[20]; /*姓名*/ int score; /*成绩*/ }Student; Student stu[80]; /*结构体数组变量*/ int menu_select() /*菜单函数*/ { char c; do{ system("cls"); /*运行前清屏*/ printf("\t\t****Students' Grade Management System****\n"); /*菜单选择*/ printf("\t\t | 1. Input Records |\n"); printf("\t\t | 2. Display All Records |\n"); printf("\t\t | 3. Sort |\n"); printf("\t\t | 4. Insert a Record |\n"); printf("\t\t | 5. Delete a Record |\n"); printf("\t\t | 6. Query |\n"); printf("\t\t | 7. Statistic |\n"); printf("\t\t | 8. Add Records from a Text File|\n"); printf("\t\t | 9. Write to a Text file |\n"); printf("\t\t | 0. Quit |\n"); printf("\t\t*****************************************\n"); printf("\t\t\tGive your Choice(0-9):"); c=getchar(); /*读入选择*/ }while(c'9'); return(c-'0'); /*返回选择*/ } int Input(Student stud[],int n) /*输入若干条记录*/ {int i=0; char sign,x[10]; /*x[10]为清除多余的数据所用*/ while(sign!='n'&sign!='N') /*判断*/ { printf("\t\t\tstudent's num:"); /*交互输入*/ scanf("\t\t\t%s",stud[n+i].num); printf("\t\t\tstudent's name:"); scanf("\t\t\t%s",stud[n+i].name); printf("\t\t\tstudent's score:"); scanf("\t\t\t%d",&stud[n+i].score); gets(x); /*清除多余的输入*/ printf("\t\t\tany more records?(Y/N)"); scanf("\t\t\t%c",&sign); /*输入判断*/ i++; } return(n+i); } void Display(Student stud[],int n) /*显示所有记录*/ { int i; printf("\t\t\t-----------------------------------\n"); /*格式头*/ printf("\t\t\tnumber name score\n"); printf("\t\t\t-----------------------------------\n"); for(i=1;i { printf("\t\t\t%-16s%-15s%d\n",stud[i-1].num,stud[i-1].name,stud[i-1].score); if(i>1&i%10==0) /*每十个暂停*/ {printf("\t\t\t-----------------------------------\n"); /*格式*/ printf("\t\t\t"); system("pause"); printf("\t\t\t-----------------------------------\n"); } } printf("\t\t\t"); system("pause"); } void Sort_by_num(Student stud[],int n) /*按学号排序*/ { int i,j,*p,*q,s; char t[10]; for(i=0;i for(j=0;j if(strcmp(stud[j].num,stud[j+1].num)>0) {strcpy(t,stud[j+1].num); strcpy(stud[j+1].num,stud[j].num); strcpy(stud[j].num,t); strcpy(t,stud[j+1].name); strcpy(stud[j+1].name,stud[j].name); strcpy(stud[j].name,t); p=&stud[j+1].score; q=&stud[j].score; s=*p; *p=*q; *q=s; } } int Insert_a_record(Student stud[],int n) /*插入一条记录*/ {char x[10]; /*清除多余输入所用*/ printf("\t\t\tstudent's num:"); /*交互式输入*/ scanf("\t\t\t%s",stud[n].num); printf("\t\t\tstudent's name:"); scanf("\t\t\t%s",stud[n].name); printf("\t\t\tstudent's score:"); scanf("\t\t\t%d",&stud[n].score); gets(x); n++; Sort_by_num(stud,n); /*调用排序函数*/ printf("\t\t\tInsert Successed!\n"); /*返回成功信息*/ return(n); } int Delete_a_record(Student stud[],int n) /*按姓名查找,删除一条记录*/ { char s[20]; int i=0,j; printf("\t\t\ttell me his(her) name:"); /*交互式问寻*/ scanf("%s",s); while(strcmp(stud[i].name,s)!=0&i if(i==n) { printf("\t\t\tnot find!\n"); /*返回失败信息*/ return(n); } for(j=i;j { strcpy(stud[j].num,stud[j+1].num); strcpy(stud[j].name,stud[j+1].name); stud[j].score=stud[j+1].score; } printf("\t\t\tDelete Successed!\n"); /*返回成功信息*/ return(n-1); } void Query_a_record(Student stud[],int n) /*查找并显示一个记录*/ { char s[20]; int i=0; printf("\t\t\tinput his(her) name:"); /*交互式输入*/ scanf("\t\t\t%s",s); while(strcmp(stud[i].name,s)!=0&i if(i==n) { printf("\t\t\tnot find!\n"); /*输入失败信息*/ return; } printf("\t\t\this(her) number:%s\n",stud[i].num); /*输出该学生信息*/ printf("\t\t\this(her) score:%d\n",stud[i].score); } void Statistic(Student stud[],int n) /*新增功能,输出统计信息*/ { int i,j=0,k=0,sum=0; float aver; /*成绩平均值*/ for(i=0;i { sum+=stud[i].score; if(stud[j].score>stud[i].score) j=i; if(stud[k].score } aver=1.0*sum/n; printf("\t\t\tthere are %d records.\n",n); /*总共记录数*/ printf("\t\t\tthe hignest score:\n"); /*最高分*/ printf("\t\t\tnumber:%s name:%s score:%d\n",stud[j].num,stud[j].name,stud[j].score); printf("\t\t\tthe lowest score:\n"); /*最低分*/ printf("\t\t\tnumber:%s name:%s score:%d\n",stud[k].num,stud[k].name,stud[k].score); printf("\t\t\tthe average score is %5.2f\n",aver); /*平均分*/ } int AddfromText(Student stud[],int n) /*从文件中读入数据*/ { int i=0,num; FILE *fp; /*定义文件指针*/ char filename[20]; /*定义文件名*/ printf("\t\t\tInput the filename:"); scanf("\t\t\t%s",filename); /*输入文件名*/ if((fp=fopen(filename,"rb"))==NULL) /*打开文件*/ { printf("\t\t\tcann't open the file\n"); /*打开失败信息*/ printf("\t\t\t"); system("pause"); return(n); } fscanf(fp,"%d",&num); /*读入总记录量*/ while(i { fscanf(fp,"%s%s%d",stud[n+i].num,stud[n+i].name,&stud[n+i].score); ...

以下为关联文档:

C语言迷宫要完整代码的#include#includeint migong[10][10]= //设置迷宫,最外围1为墙 里边0为可走路径 1为障碍{ {1,1,1,1,1,1,1,1,1,1}, {1,0,0,0,0,0,0,1,1,1}, {1,0,1,1,1,1,1,0,0,1}, {1,0,1,0...

高分求:迷宫问题数据结构C语言这个迷宫的路径不是唯一的,因此从不同方向开始试探执行结果也可能会不唯一。我写的是参考书上的,共有八个方向可以试探。 栈解决迷宫主要的几个问题: 1.迷宫的存储 2.栈的设计...

求解c语言一递归迷宫问题给你给伪算法:(设坐标为x,y,坐标向右和下延生。)函数:{ 判断当前是不是(7,7),如果是,表示走出迷宫。打印轨迹 1 尝试往左先走一步(x-1,如果x小于0,或者对应位置标识为阻塞) 2 1如果成功,用...

c语言链栈来求解迷宫是否有解//四连通的方式求解应该是比较容易的。current location push to stackwhile(stack !empty){ pop stack Coordinate Array flag=true //已经判定过。表示是否已经查找过。 i...

你同意演讲者关于语言陷阱的观点吗同意,下面有一个例子:有3个人去投宿,一晚300元.三个人每人掏了100元凑够300元交给了老板.后来老板说今天优惠只要250元就够了,拿出50元命令服务生退还给他们,服务生藏起了20元,然...

职场交流需要提防的非语言陷阱是什么几年前在加州大学洛杉矶分校的一项研究表明,个人行为表现给人的印象7%取决于用辞、38%取决于音质、55%取决于非语言交流。非语言交流的重要性由此可想而知! 回想一下你曾听过...

下列哪项不属于语言交际的三大要素语言交谈包括以下三个方面: 1.言语得体 言语既是交际心理现象,展现交际心理过程,就必须做到说话得体,恰如其分。任何夸大其词,或是不看对象,词不达意,都会影响交际心理的展现,妨碍相...

幼儿园语言活动青蛙鼓目标: 1、 在活动中,能大胆表达出故事的主要情节。 2、 通过活动,让幼儿体验关心他人的美好情感。 准备: 三只青蛙、梅花鹿、熊爷爷头饰各一,FLANSH动画, 小青蛙头饰与幼儿人数相...

如何上好小班语言小兔子找太阳语言是人类最重要的交际工具。特别是在信息技术、科学技术飞速发展的今天,人们交往日益频繁。它要求社会成员有较高的语言表达能力,能用清晰、简洁的语言表达自己的观点和见解...

推荐阅读
图文推荐