?? cpp1.cpp
字號:
/*學生成績存儲結構定義*/
#include <stdio.h>
#include <process.h>
#include <string.h>
#define MAXSIZE 100
typedef struct /*定義學生信息結構體類型*/
{
int number;
char name[10];
int score;
}student;
typedef struct /*定義順序表類型*/
{
student data[MAXSIZE];
int last;
}SLstudent;
/*登記成績算法*/
void Creat(SLstudent *sLs)/*登記成績算法*/
{
int n,i;
printf("請輸入學生數:");
scanf("%d",&n);
sLs->last=n;
for(i=0;i<n;i++)
{
printf("請輸入學生%d的數據:\n",i+1);
printf("學號:");
scanf("%d",&sLs->data[i].number);
printf("姓名:");
scanf("%s",&sLs->data[i].name);
printf("成績:");
scanf("%d",&sLs->data[i].score);
}
getchar();
}
/*查詢成績算法*/
void Search(SLstudent *sls)
{
int p,n,i;
printf("請輸入學生的學號: ");
scanf("%d",&p);
n=sls->last;
for(i=0;i<n;i++)
{
if(sls->data[i].number==p)
{
printf("該學生的數據: \n");
printf("學號:%d ",sls->data[i].number);
printf("姓名:%s ",sls->data[i].name);
printf("成績:%d ",sls->data[i].score);
break;
}
}
if(i==n)
printf("未找到此學生數據!\n");
getchar();
}
/*插入數據算法*/
void Insert(SLstudent *sls)
{
int i,n,q;
printf("請輸入插入序列號:");
scanf("%d",&n);
q=sls->last;
if(q>100)
printf("表滿,插入錯誤!");
else{
for(i=q;i!=n;i--)
{
sls->data[i].number=sls->data[i-1].number;
strcpy(sls->data[i].name,sls->data[i-1].name);
sls->data[i].score=sls->data[i-1].score;
}
printf("學號:");
scanf("%d",&sls->data[i].number);
printf("姓名:");
scanf("%s",&sls->data[i].name);
printf("成績:");
scanf("%d",&sls->data[i].score);
sls->last++;
getchar();}
}
/*刪除數據算法*/
void Delete(SLstudent *sls)
{
int number,n,i,j;
printf("請需要刪除學生的學號: ");
scanf("%d",&number);
n=sls->last;
for(i=0;i<n;i++)
{
if(sls->data[i].number==number){
for(j=i;j<=n;j++){
sls->data[j].number=sls->data[j+1].number;
strcpy(sls->data[j].name,sls->data[j+1].name);
sls->data[j].score=sls->data[j+1].score;
sls->last--;}
printf("學生數據刪除成功!");
break;}
}
if(n==i)
printf("此學生數據不存在!");
getchar();
}
/*主程序*/
void main()
{
SLstudent sls;
int k;
while(1)
{
printf(" ------------------------------\n");
printf(" | 學生成績管理 |\n");
printf(" |============================|\n");
printf(" | 1 登記成績 |\n");
printf(" | 2 查詢成績 |\n");
printf(" | 3 插入成績 |\n");
printf(" | 4 刪除成績 |\n");
printf(" | 0 退出程序 |\n");
printf(" ------------------------------\n");
printf(" 請輸入選擇的功能號:");
scanf("%d",&k);
switch(k)
{
case 1: Creat(&sls);break;
case 2: Search(&sls);break;
case 3: Insert(&sls);break;
case 4: Delete(&sls);break;
case 0: exit(0);break;
}
}
}
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -