數據結構學生信息課程設計書
❶ 數據結構課程設計----學生信息管理系統
都已經有資料庫了,是不是就是寫SQL語句啊,還用什麼排序法啊?直接在SQL語句裡面寫好不就OK?
❷ 數據結構的課程設計。求高手指教~~~編寫一個簡單的學生信息管理程序,能實現對學生信息的簡單管理。
#include<iostream>
#include<string>
using namespace std;
struct student{
int num;
string name;
double score;
};
void ShowMenu(){
cout<<"(1) INPUT (press 1)\n"\
<<"(2) SORT (press 2)\n"\
<<"(3) QUERY (press 3)\n"\
<<"(4) EXIT (press 4)\n";
return;
}
student* INPUT(student* stu){
stu = new student[5];
for(int i=0; i<5; i++){
cout<<"請輸入第"<<i+1<<"個學生的學號,姓名和總分:";
cin>>stu[i].num>>stu[i].name>>stu[i].score;
}
cout<<"\n\n";
return stu;
}
void SORT(student* stu){
if(stu == NULL){
cout<<"尚未輸入學生信息!\n\n";
return;
}
for(int j=4; j>0; j--){
for(int k=4; k>4-j; k--){
if(stu[k-1].score < stu[k].score){
student tmpstu;
tmpstu.num = stu[k].num;
tmpstu.name = stu[k].name;
tmpstu.score = stu[k].score;
stu[k].num = stu[k-1].num;
stu[k].name = stu[k-1].name;
stu[k].score = stu[k-1].score;
stu[k-1].num = tmpstu.num;
stu[k-1].name = tmpstu.name;
stu[k-1].score = tmpstu.score;
}
}
}
cout<<"學生總分排名:\n";
cout<<"名次\t學號\t姓名\t總分\n";
for(int i=0; i<5; i++){
cout<<i+1<<'\t'<<stu[i].num<<'\t'<<stu[i].name<<'\t'<<stu[i].score<<endl;
}
cout<<endl;
}
void QUERY(student* stu){
if(stu == NULL){
cout<<"尚未輸入學生信息!\n\n";
return;
}
int num;
cout<<"請輸入學生的學號:";
cin>>num;
for(int i=0; i<5; i++){
if(num == stu[i].num){
cout<<"該生信息如下:\n";
cout<<"學號\t姓名\t總分\n";
cout<<stu[i].num<<'\t'<<stu[i].name<<'\t'<<stu[i].score<<endl;
cout<<endl;
return;
}
}
cout<<"該生不存在!\n\n";
}
int main(){
student* stu = NULL;
while(true){
ShowMenu();
char choice;
cin>>choice;
switch(choice){
case '1':
stu = INPUT(stu);
break;
case '2':
SORT(stu);
break;
case '3':
QUERY(stu);
break;
case '4':
exit(0);
default:
cout<<"錯誤的選項!"<<"\n\n";
break;
}
}
delete stu;
return 0;
}
❸ 求一份學生管理系統課程設計報告,數據結構課程設計
|」為什麼要中間拿那麼多空格隔開呢?逗號或「|」都比那好弄。
如果這題是老師出的,老師一定腦袋有問題。
//==============
效果圖查詢自己寫
需要的控制項
private System.Windows.Forms.Button button1;
private System.Windows.Forms.RichTextBox richTextBox1;
private System.Windows.Forms.Button button2;
private System.Windows.Forms.Button button3;
private System.Windows.Forms.GroupBox groupBox1;
private System.Windows.Forms.RichTextBox richTextBox2;
private System.Windows.Forms.GroupBox groupBox2;
private System.Windows.Forms.GroupBox groupBox3;
後台
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.Text;
using System.IO;
namespace WindowsFormsApplication1
{
public partial class cj : Form
{
public StreamWriter SW;
public cj()
{
InitializeComponent();
string Header = "姓名" + " " + "學號" + " " + "語文" + " " + "數學" + " " + "英語" + "
";
richTextBox1.AppendText(Header);
richTextBox2.AppendText(Header);
CheckDirectory();
}
private void button1_Click(object sender, EventArgs e)
{
string strFile;
strFile = System.Windows.Forms.Application.StartupPath + "\3.txt";
OpenFileDialog openFileDialog1 = new OpenFileDialog();
openFileDialog1.Filter = "文本文件(*.txt)|*.txt";
openFileDialog1.DefaultExt = "txt";
if (openFileDialog1.ShowDialog() == DialogResult.OK)
{
string FileName = openFileDialog1.FileName;
if (Path.GetExtension(FileName) != ".txt")
{
MessageBox.Show("格式不對");
}
else
{
FileStream stream = new FileStream(openFileDialog1.FileName, FileMode.Open, FileAccess.Read);
StreamReader sReader = new StreamReader(openFileDialog1.FileName, Encoding.Default);
if (sReader.ReadLine().Split('
').Length > 0)
{
richTextBox1.AppendText(sReader.ReadToEnd());
}
richTextBox1.AppendText("
");
// StreamWriter ssw = new System.IO.StreamWriter(FileName, true, System.Text.Encoding.Default);
}
}
}
private void WriteLog(string msg)
{
string strFile;
strFile = System.Windows.Forms.Application.StartupPath + "\data\3.log";
// StreamWriter SW;
try
{
SW = new System.IO.StreamWriter(strFile, true);
SW.WriteLine(msg);
}
catch (Exception ex)
{
WriteLog(ex.Message);
}
finally
{
SW.Flush();
SW.Close();
}
}
private void button2_Click(object sender, EventArgs e)
{
richTextBox1.Text = "姓名" + " " + "學號" + " " + "語文" + " " + "數學" + " " + "英語" + "
";
}
private void CheckDirectory()
{
if (Directory.Exists(System.Windows.Forms.Application.StartupPath + "\data") == false)
{
Directory.CreateDirectory(System.Windows.Forms.Application.StartupPath + "\data");
}
if (Directory.Exists(System.Windows.Forms.Application.StartupPath + "\data") == false)
{
Directory.CreateDirectory(System.Windows.Forms.Application.StartupPath + "\data");
}
}
private void button3_Click(object sender, EventArgs e)
{
string rowdata = "";
int m = richTextBox1.Lines.Length;
string[] lines = new string[m];
for (int i = 1; i < m-1; i++) //每一行
{
lines[i] = richTextBox1.Lines[i]+"
";
string[] cj = lines[i].Split(' ');
if (cj != null)
{
rowdata = " ";
for (int j = 0; j < cj.Length; j++) //每一列
{
if (cj[j].ToString() != "")
{
rowdata = rowdata + cj[j].ToString()+",";
}
}
rowdata.TrimEnd(',');
string[] ncj = rowdata.Split(',');
string str2 = ncj[2].ToString();
string str3 = ncj[3].ToString();
string str4 = ncj[4].ToString().TrimEnd('
');
// if ((int.Parse(str2) + int.Parse(str3) + int.Parse(str4) < 180))
if ((int.Parse(str2)<60 || int.Parse(str3)<60 || int.Parse(str4) < 60))
{
richTextBox2.AppendText(lines[i]);
}
}
}
if (File.Exists(System.Windows.Forms.Application.StartupPath + "\data\3.txt") == true)
{
File.Delete(System.Windows.Forms.Application.StartupPath + "\data\3.txt");
}
File.AppendAllText(System.Windows.Forms.Application.StartupPath + "\data\3.txt", richTextBox1.Text);
if (File.Exists(System.Windows.Forms.Application.StartupPath + "\data\4.txt") == true)
{
File.Delete(System.Windows.Forms.Application.StartupPath + "\data\4.txt");
}
File.AppendAllText(System.Windows.Forms.Application.StartupPath + "\data\4.txt", richTextBox2.Text);
MessageBox.Show("數據合成OK,在data文件夾");
}
}
}
❹ 數據結構課程設計:學生信息管理系統。
不免費代做
❺ 數據結構課程設計 圖書管理系統
#include<stdio.h>
#include<string.h>
#include<conio.h>
#include<stdlib.h>
#define N sizeof(struct book)
#define PT "%-5d %10s %6s %6s %8s %3d \n",p->num,p->name,p->where,p->author,p->pub,p->count
struct book /*圖書信息*/
{
int num; /*書號*/
char name[10]; /*書名*/
char where[10]; /*所在書庫*/
char author[15]; /*作者*/
char pub[20]; /*出版社*/
int count; /*數量*/
struct book *next;
};
/*輸出模塊*/
void print(struct book *p0)
{
struct book *p;
p=p0->next;
printf("\n\n\t\t^^^^^^^^^^^^^^圖書信息表^^^^^^^^^^^^^^");
printf("\n\n圖書編號---圖書名稱---所在書庫----作者----出版社---數量\n");
while(p!=NULL)
{
printf(PT);
p=p->next;
}
getch();
}
/*輸入模塊*/
struct book *creat()
{
struct book *head,*p1,*p2;
int i=0;
head=p2=(struct book *)malloc(N);
head->next=NULL;
printf("\n\n\t\t錄入圖書信息");
printf("\n\t---------------------------------------");
while(1)
{ p1=(struct book *)malloc(N);
printf("\n 請輸入圖書編號(書號為0結束): ");
scanf("%d",&p1->num);
if(p1->num!=0)
{
printf("\n\n書名 所在書庫 作者 出版社 圖書數量\n");
scanf("%s%s%s%s%d",p1->name,p1->where,p1->author,p1->pub,&p1->count);
p2->next=p1;
p2=p1;
i++;
}
else
break;
}
p2->next=NULL;
free(p1);
printf("\n\t\t----------------------------------------");
printf("\n\t\t %d 種書錄入完畢",i);
getch();
return head;
}
/*查找模塊*/
void find(struct book *p0)
{
char name[10];
int flag=1;
struct book *p;
p=p0->next;
printf("請輸入要查找的書名:\n");
scanf("%s",name);
for(p=p0;p;p=p->next)
if(strcmp(p->name,name)==0)
{
printf("\n\n圖書編號---圖書名稱---所在書庫----作者----出版社---數量\n");
printf(PT);
flag=0;
break;
}
if(flag) printf("\n 暫無此圖書信息\n");
getch();
}
/*刪除模塊*/
void del(struct book *p0)
{
char name[10];
int flag=1;
struct book *p;
p=p0;
printf("請輸入要刪除的書名:\n");
scanf("%s",name);
while(p!=NULL)
{
if(strcmp(p->name,name)==0)
{
p0->next=p->next; /*後續節點連接到前驅節點之後*/
free(p);
printf("\t該書資料已刪除.");
flag=0;
break;
}
p0=p;
p=p->next;
}
if(flag) printf("\n\t無此圖書信息。");
getch();
}
/*增加模塊*/
void insert(struct book *p0)
{
struct book *p;
p=(struct book *)malloc(N);
while(1)
{
printf("\n 請輸入要增加的圖書編號(書號為0 退出): ");
scanf("%d",&p->num);
if(p->num!=0)
{
if(p0->next!=NULL&&p0->next->num==p->num) /*找到重號*/
{
p=p->next;
free(p);
printf("\t該書已存在");
}
else
{printf("\n\n書名 所在書庫 作者 出版社 圖書數量\n");
scanf("%s%s%s%s%d",p->name,p->where,p->author,p->pub,&p->count);
p->next=p0->next;
p0->next=p;
printf("\t已成功插入.");
}
}
else
break;
}
getch();
}
/*修改模塊*/
void modify(struct book *p0)
{
char name[10];
int flag=1;
int choice;
struct book *p;
p=p0->next;
printf("請輸入要修改的書名:\n");
scanf("%s",name);
while(p!=NULL&&flag==1)
{
if(strcmp(p->name,name)==0)
{
printf("\n\t請選擇要修改的項:");
printf("\n\t 1.修改圖書編號\n");
printf("\n\t 2.修改圖書所在書庫\n");
printf("\n\t 3.修改圖書作者\n");
printf("\n\t 4.修改圖書出版社\n");
printf("\n\t 5.修改圖書庫存量\n");
scanf("%d",&choice);
switch(choice)
{
case 1: { printf("\n 請輸入新的圖書編號:");
scanf("%d",p->num); break;
}
case 2: { printf("\n 請輸入新的圖書書庫:");
scanf("%s",p->where); break;
}
case 3: { printf("\n 請輸入新的圖書作者:");
scanf("%s",p->author); break;
}
case 4: {printf("\n 請輸入新的圖書出版社:");
scanf("%s",p->pub); break;
}
case 5: {printf("\n 請輸入新的圖書庫存量:");
scanf("%d",p->count); break;
}
}
printf("\n\t該項已成功修改。\n\t 新的圖書信息:");
printf("\n\n圖書編號---圖書名稱---所在書庫----作者----出版社---數量\n");
printf(PT);
flag=0;
}
p0=p;
p=p0->next;
}
if(flag) printf("\n\t暫無此圖書信息。");
getch();
}
/*讀文件*/
struct book *read_file()
{
int i=0;
struct book *p,*p1,*head=NULL;
FILE *fp;
if((fp=fopen("library.txt","rb"))==NULL)
{printf("\n\n\n\n\n \t********庫文件不存在,請創建!**********");
getch();
return NULL;
}
head=(struct book *)malloc(N);
p1=head;
head->next=NULL;
printf("\n 已有圖書信息:");
printf("\n\n圖書編號---圖書名稱---所在書庫----作者----出版社---數量\n");
while(!feof(fp))
{
p=(struct book *)malloc(N); /*開辟空間以存放的取得信息*/
while(fscanf(fp,"%d%s%s%s%s%d",&p->num,p->name,p->where,p->author,p->pub,&p->count)!=EOF)
{
printf(PT);
i++;
}
p1->next=p;
p1=p;
}
p1->next=NULL;
fclose(fp);
printf("\n 共種%d 圖書信息",i);
printf("\n\n\n 文件中的信息以正確讀出。按任意鍵進入主菜單。");
getch();
return (head);
}
/*保存文件*/
void save(struct book *head)
{
FILE *fp;
struct book *p;
fp=fopen("library.txt","wb"); /*以只寫方式打開二進制文件*/
if(fp==NULL) /*打開文件失敗*/
{
printf("\n=====>打開文件失敗!\n");
getch();
return ;
}
else
for(p=head->next;p!=NULL;p=p->next)
fprintf(fp,"%d %s %s %s %s %d\n",p->num,p->name,p->where,p->author,p->pub,p->count);
fclose(fp);
printf("\n\t保存文件成功!\n");
}
void main()
{
struct book *head=NULL;
int choice=1;
head=read_file();
if(head==NULL)
{
printf("\n\t\t**********");
getch();
head=creat();
}
do
{
system("cls");
printf("\t\t----------Welcome---------\n");
printf("\n\n\t歡迎您,圖書管理員.\n");
printf("\n\n\n\n\n");
printf("\n\t 請選擇:");
printf("\n\t 1.查詢圖書信息\n");
printf("\n\t 2.修改圖書信息\n");
printf("\n\t 3.增加圖書信息\n");
printf("\n\t 4.刪除圖書信息\n");
printf("\n\t 5.顯示所有圖書信息\n");
printf("\n\t 0.退出系統\n");
scanf("%d",&choice);
switch(choice)
{
case 1: find(head); break;
case 2: modify(head); break;
case 3: insert(head); break;
case 4: del(head); break;
case 5: print(head); break;
case 0: system("cls");
printf("\n\n\n\n\n\t^^^^^^^^^^謝謝使用,再見^^^^^^^^^^!\n\n");
break;
}
}while(choice!=0);
save(head);
}
❻ 數據結構課程設計-學生成績管理系統的設計
好像沒有數據結構的 你試試c++語言面向對象程序設計課程設計
這個網站能免費下幾個,不能版免費下的就要收權費了
本站免費計算機課程設計論文下載
本人原創計算機類課程設計免費下載,銷售計算機畢業論文
請把我的網站介紹給同學們.謝謝支持本站
ACCESS課程設計庫存管理工資管理系統 sqlserver資料庫課程設計 c++語言面向對象程序設計課程設計 vb課程設計學生成績系統
asp留言板(沒有論文) 計算機實訓計算機組裝與維護課程設計
簡單的網頁設計沒有論文 office課程設計 操作系統課程設計
另有以上沒有列出的計算機課程設計為收費材料30元一份 更多