| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 757 人关注过本帖, 1 人收藏
标题:帮忙看下我编的程序有错没
只看楼主 加入收藏
zz2556927
Rank: 1
等 级:新手上路
帖 子:5
专家分:0
注 册:2012-6-18
结帖率:0
收藏(1)
已结贴  问题点数:20 回复次数:11 
帮忙看下我编的程序有错没
下楼发代码
2012-06-18 11:35
zz2556927
Rank: 1
等 级:新手上路
帖 子:5
专家分:0
注 册:2012-6-18
收藏
得分:0 
#include<stdio.h>
#include<stdlib.h>
#include<string.h>
#define N 10

struct student
{
    int flag;//标记:未赋值时为0复制后为1判断数组是否为空的标记!很重要的思想
    int number;
    char name[20];
    int Englishscore;
    int Chinesescore;
};//此处不要忘记;

struct student stu[N];

int main()
{   
    int i=0;
    while(i<N)
    {
        stu[i].flag=0;
        i++;
    }
    char count;
    int delet();
    void input();
    int increase();
    int insert();
    int query();
    int sort();
    //初始化工作
    //FILE *fp;
    //fp=fopen("student","w+");
   
    while(1)
    {
        printf("************欢迎使用学生成绩管理系统*************\n");
        printf("*                1.录入学生成绩                 *\n");
        printf("*                2.修改学生成绩                 *\n");
        printf("*                3.增加学生成绩                 *\n");
        printf("*                4.查询学生成绩                 *\n");
        printf("*                5.删除学生成绩                 *\n");
        printf("*                6.排序                         *\n");
        printf("*                7.退出系统                     *\n");
        printf("*************************************************\n");
        scanf("%d",&count);
        switch(count)
        {
            case 1: input();break;        //录入成绩
            case 2: insert();break;        //修改成绩
            case 3: increase();break;    //增加成绩
            case 4: query();break;        //查询成绩
            case 5: delet();break;      //删除成绩
            case 6: sort();break;      //排序
            case 7: printf("     感谢您使用本系统,欢迎下次使用!\n"); exit(0);      break;

        }
    }
    return 0;
}

void input()
{
    int i=0;
   
    while(i<N)
    {
        printf("输入学生%d的信息:number,  Englishscore,  Chinesescore,  name:\n",(i+1));
        scanf("%d,%d,%d,%s",&stu[i].number,&stu[i].Englishscore,&stu[i].Chinesescore,stu[i].name);//char[]类型的 输入和输出放到最后,不然不识别是否结束,若结构体数组里有两个char[],那要用两次SCANF()函数。多一次回车。
        //scanf("%s",stu[i].name);一定注意char[]输入问题
        stu[i].flag=1;
        printf("录入成功\n");
        i++;
    }
}

int delet()                                                                       //删除
{   
    int count;
    printf("请输入您要删除的学生学号:\n");    //没想到解决输出"要删除的信息不存在"的问题。
    scanf("%d",&count);
   
    for(int i=0;i<N;i++)
    {
        if(stu[i].number==count && stu[i].flag == 1)
        {
              stu[i].flag=0;
              printf("删除成功!\n");
              return 0;//作用结束当前整个函数,比如for循环共五次,后三次没必要继续,那就用Return0结束,并且下面的语句也不再继续进行执行。break结束循环,但是会继续执行下面的PRINT语句,注意区别。
        }
    }
    printf("要删除的学生不存在!\n");

    return 0;
}

int insert()                                                               //修改
{
    printf("按学号修改\n");
    int choice;
    scanf("%d",&choice);
   
        int num;
        printf("请输入您要修改学生的学号\n");
        scanf("%d",&num);  
            for(int j=0;j<N;j++)
            {
                if((stu[j].number==num)&&(stu[j].flag==1))//这么写好像很省奥很概括
                {
                    printf("请重新输入学生信息:number,  Englishscore,  Chinesescore,  name:\n");
                    scanf("%d,%d,%d,%s",&stu[j].number,&stu[j].Englishscore,&stu[j].Chinesescore,stu[j].name);
                    printf("修改成功!\n");
                    return 0;
                }
               
            }
            printf("修改内容不存在\n");
            return 0;

}
int query()                                                                       //输出
{   
    printf("number   name   Englishscore   Chinesescorec     flag\n");
    for(int i=0;i<N;i++)
    {
        if(stu[i].flag==1)
            printf("%5d  %5s  %10d  %10d  %12d\n",stu[i].number,stu[i].name,stu[i].Englishscore,stu[i].Chinesescore,stu[i].flag);
    }
   
    return 0;
}
sort()
{
    int data[N];
    int i,j,t;
    data[N]=stu[N].number ;
    for(i=0;i<N;i++)
        for(j=0;j<N-i;j++)
            if(data[j]>data[j+1])
            {
                t=data[j];
                data[j]=data[j+i];
                data[j+i]=t;
            }  
      printf("排序结果为:\n");
    return 0;
}

int increase()
{
    for(int i=0;i<N;i++)
    {
        if(stu[i].flag==0)
        {
            printf("请输入学生信息\n");
            printf("number   name   Englishscore   Chinesescorec     flag\n");
            scanf("%d,%d,%d,%s",&stu[i].number,&stu[i].Englishscore,&stu[i].Chinesescore,stu[i].name);
            stu[i].flag=1;
            printf("输入学生信息成功!\n");
            return 0;
        }            
    }
            printf("对不起,信息库已满,不能输入!\n");
            return 0;
        
}
2012-06-18 11:35
zz2556927
Rank: 1
等 级:新手上路
帖 子:5
专家分:0
注 册:2012-6-18
收藏
得分:0 
本人新手
2012-06-18 11:36
zz2556927
Rank: 1
等 级:新手上路
帖 子:5
专家分:0
注 册:2012-6-18
收藏
得分:0 
一有字母打上运行就会崩溃
2012-06-18 11:43
zz2556927
Rank: 1
等 级:新手上路
帖 子:5
专家分:0
注 册:2012-6-18
收藏
得分:0 
没人? 在线等的啊
2012-06-18 11:43
忱罅斯潋旎
Rank: 2
等 级:论坛游民
帖 子:35
专家分:10
注 册:2012-6-3
收藏
得分:3 
回复 5楼 zz2556927
我前几天也写过这样的程序,我把我的发给你看看

做一个温暖的女子,不倾城,不倾国,只倾其所有过我想过的生活
2012-06-18 12:37
忱罅斯潋旎
Rank: 2
等 级:论坛游民
帖 子:35
专家分:10
注 册:2012-6-3
收藏
得分:0 
# include<stdio.h>
# include<string.h>
# include<stdlib.h>
struct user                                                //定义用户结构体
{
    char username[20];
    char password[20];
};
struct student                                             //定义学生信息结构体
{   
    int num;
    char name[20];
    float score[5];
    int classs;
    char subject[20];
};
struct user user[3]={{"admin","111"},{"andy","222"},{"bob","333"}};
struct student s[5]={
        101,"li",{65,66,78,90,87},1101,"软工",
        102,"wang",{65,66,78,90,87},1101,"通信",
        103,"yan",{87,59,87,86,92},1102,"通信",
        104,"ding",{99,98,86,93,92},1101,"软工",
        105,"zhang",{65,66,78,90,87},1102,"软工"};

void login(char a[],char b[])                                   //定义登陆函数
{   system("cls");                                              //运行前清屏
    void index();
    int i,count=0;
    for(i=0;i<3;i++)
    if(strcmp(a,user[i].username)==0&&strcmp(b,user[i].password)==0)
    {printf("登陆成功!\n");index();exit(1);}
    else                                                //如果输不正确,提示登录失败
        {
            printf("登陆失败\n");
            count++;                                              //count用来计数
            system("cls");  
    }                                                      //超过三次退出程序
        if(count>=3)
        {
            printf("登陆失败,请稍后再试\n");
            exit(1);
        }
        }


void main()
{  char a[20],b[20];
        
        printf("\t\t\t\t学生成绩管理系统\n");
        printf("********************************************************************************\n");
        printf("\t\t\t\t【用户登陆】\n");
        printf("\n\n");
        printf("\t\t用户名:");
        gets(a);
        printf("\t\t密码:");
        gets(b);
        login(a,b);                         //调用login函数
}

void index()                                //定义索引函数
{
    void numquery();
    void classquery();
    void subquery();
    int n;
system("cls");
printf("\n\n\n\n\n\n");                                                                       //运行前清屏
printf("\t\t**************学生成绩管理系统登陆成功*************\n");                       //菜单选择界面
printf("\t\t                   1. 学号查询                    \n");
printf("\t\t                   2. 班级查询                    \n");
printf("\t\t                   3. 专业查询                    \n");
printf("\t\t                   0. 退出                        \n");
printf("\t\t***************************************************\n");
printf("\t\t请选择操作(0-3):");

    scanf("%d",&n);
    if(n==0) exit(1);
    if(n==1) numquery();                      //输入1调用numquery函数
    if(n==2) classquery();                    //输入2调用classquery函数
    if(n==3) subquery();                      //输入3调用subquery函数
}

void numquery()                                       //定义学号查询函数
{
    int i,n,m;
    system("cls");                                   //运行前清屏
    printf("*********************************学号查询***************************************\n");
    printf("请输入要查询的学号:101-105\n");
    scanf("%d",&m);
printf("学号\t姓名\t微积分\t物理\tC语言\t英语\t概率\t班级\t专业\n");
    for(i=0;i<5;i++)
    if(m==s[i].num)
   
printf("%4d\t%s\t%6.2f\t%6.2f\t%6.2f\t%6.2f\t%6.2f\t%6d\t%s\n",
s[i].num,s[i].name,s[i].score[0],s[i].score[1],s[i].score[2],s[i].score[3],s[i].score[4],s[i].classs,s[i].subject);
    for(i=0;i<5;i++)
        if(m==s[i].num)
        { printf("\n\n\n\n\n\n");
          printf("\t\t\t1.继续查询\n");
          printf("\t\t\t2.返回上一级菜单\n");
          printf("\t\t\t0.退出系统\n");
          printf("请选择下一步操作:(0-2)\n");
    scanf("%d",&n);
    if(n==0) exit(1);
    if(n==1) numquery();
    if(n==2) index();
    exit(1);}
    printf("该学号不存在!\n");
         printf("\n\n\n\n\n\n");
          printf("\t\t\t1.继续查询\n");
          printf("\t\t\t2.返回上一级菜单\n");
          printf("\t\t\t0.退出系统\n");
          printf("请选择下一步操作:(0-2)\n");
    scanf("%d",&n);
    if(n==0) exit(1);
    if(n==1) numquery();
    if(n==2) index();
}

void classquery()//班级查询函数
{system("cls"); //运行前清屏
    void highscore();
    void lowscore();
    void average();
    void paixu();
    int i,m,n;
printf("********************************班级查询******************************\n");
    printf("请输入要查询的班级:1101或1102\n");
    scanf("%d",&m);
    printf("学号\t姓名\t微积分\t物理\tC语言\t英语\t概率\t班级\t专业\n");
    for(i=0;i<5;i++)
    if(m==s[i].classs)
    printf("%4d\t%s\t%6.2f\t%6.2f\t%6.2f\t%6.2f\t%6.2f\t%6d\t%s\n",
    s[i].num,s[i].name,s[i].score[0],s[i].score[1],s[i].score[2],s[i].score[3],s[i].score[4],s[i].classs,s[i].subject);
    for(i=0;i<5;i++)   
        if(m==s[i].classs )
        { printf("\n\n\n\n\n\n");
          printf("\t\t\t1.成绩排序\t2.平均分\n");
          printf("\t\t\t3.最高分  \t4.最低分\n");
          printf("\t\t\t5.继续查询\t6.返回上一级菜单\n");
          printf("\t\t\t0.退出系统\n");
          printf("请选择下一步操作:(0-6)\n");
    scanf("%d",&n);
    if(n==0) exit(1);
    if(n==1) {paixu();printf("\n\n\n\n\n\n");
          printf("\t\t\t1.继续查询\n");
          printf("\t\t\t2.返回上一级菜单\n");
          printf("\t\t\t0.退出系统\n");
          printf("请选择下一步操作:(0-2)\n");
          scanf("%d",&n);
          if(n==0) exit(1);
          if(n==1) classquery();
          if(n==2) index();}
    if(n==2) {average();printf("\n\n\n\n\n\n");
          printf("\t\t\t1.继续查询\n");
          printf("\t\t\t2.返回上一级菜单\n");
          printf("\t\t\t0.退出系统\n");
          printf("请选择下一步操作:(0-2)\n");
          scanf("%d",&n);
          if(n==0) exit(1);
          if(n==1) classquery();
          if(n==2) index();}
    if(n==3){ highscore();printf("\n\n\n\n\n\n");
          printf("\t\t\t1.继续查询\n");
          printf("\t\t\t2.返回上一级菜单\n");
          printf("\t\t\t0.退出系统\n");
          printf("请选择下一步操作:(0-2)\n");
          scanf("%d",&n);
          if(n==0) exit(1);
          if(n==1) classquery();
          if(n==2) index();}
    if(n==4){ lowscore();printf("\n\n\n\n\n\n");
          printf("\t\t\t1.继续查询\n");
          printf("\t\t\t2.返回上一级菜单\n");
          printf("\t\t\t0.退出系统\n");
          printf("请选择下一步操作:(0-2)\n");
          scanf("%d",&n);
          if(n==0) exit(1);
          if(n==1) classquery();
          if(n==2) index();}
    if(n==5) {classquery();printf("\n\n\n\n\n\n");
          printf("\t\t\t1.继续查询\n");
          printf("\t\t\t2.返回上一级菜单\n");
          printf("\t\t\t0.退出系统\n");
          printf("请选择下一步操作:(0-2)\n");
          scanf("%d",&n);
          if(n==0) exit(1);
          if(n==1) classquery();
          if(n==2) index();}
    if(n==6){ index();printf("\n\n\n\n\n\n");
          printf("\t\t\t1.继续查询\n");
          printf("\t\t\t2.返回上一级菜单\n");
          printf("\t\t\t0.退出系统\n");
          printf("请选择下一步操作:(0-2)\n");
          scanf("%d",&n);
          if(n==0) exit(1);
          if(n==1) classquery();
          if(n==2) index();}   
          exit(1);
        }
    printf("该班级不存在!\n");
          printf("\n\n\n\n\n\n");
          printf("\t\t\t1.继续查询\n");
          printf("\t\t\t2.返回上一级菜单\n");
          printf("\t\t\t0.退出系统\n");
          printf("请选择下一步操作:(0-2)\n");
    scanf("%d",&n);
    if(n==0) exit(1);
    if(n==1) classquery();
    if(n==2) index();
}

void subquery()                           //专业查询函数
{system("cls");                           //运行前清屏
    void highscore();
    void lowscore();
    void average();
    void paixu();
    int i,n;
    char m[20];
printf("****************************专业查询*******************************\n");
    printf("请输入要查询的专业:软工或通信\n");
    scanf("%s",&m);
    printf("学号\t姓名\t微积分\t物理\tC语言\t英语\t概率\t班级\t专业\n");
    for(i=0;i<5;i++)
    if(strcmp(m,s[i].subject)==0)  
    printf("%4d\t%s\t%6.2f\t%6.2f\t%6.2f\t%6.2f\t%6.2f\t%6d\t%s\n",
    s[i].num,s[i].name,s[i].score[0],s[i].score[1],s[i].score[2],s[i].score[3],s[i].score[4],s[i].classs,s[i].subject);
    for(i=0;i<5;i++)
    if(strcmp(m,s[i].subject)==0)   
    {
          printf("\n\n\n\n\n");
          printf("\t\t\t1.成绩排序\t2.平均分\n");
          printf("\t\t\t3.最高分  \t4.最低分\n");
          printf("\t\t\t5.继续查询\t6.返回上一级菜单\n");
          printf("\t\t\t0.退出系统\n");
          printf("请选择下一步操作:(0-6):");
    scanf("%d",&n);
    if(n==0) exit(1);
    if(n==1) {paixu();printf("\n\n\n\n\n\n");
          printf("\t\t\t1.继续查询\n");
          printf("\t\t\t2.返回上一级菜单\n");
          printf("\t\t\t0.退出系统\n");
          printf("请选择下一步操作:(0-2)\n");
           scanf("%d",&n);
          if(n==0) exit(1);
          if(n==1) subquery();
          if(n==2) index();}
    if(n==2) {average();printf("\n\n\n\n\n\n");
          printf("\t\t\t1.继续查询\n");
          printf("\t\t\t2.返回上一级菜单\n");
          printf("\t\t\t0.退出系统\n");
          printf("请选择下一步操作:(0-2)\n");
          scanf("%d",&n);
          if(n==0) exit(1);
          if(n==1) subquery();
          if(n==2) index();}
    if(n==3) {highscore();printf("\n\n\n\n\n\n");
          printf("\t\t\t1.继续查询\n");
          printf("\t\t\t2.返回上一级菜单\n");
          printf("\t\t\t0.退出系统\n");
          printf("请选择下一步操作:(0-2)\n");
          scanf("%d",&n);
          if(n==0) exit(1);
          if(n==1) subquery();
          if(n==2) index();}
    if(n==4){ lowscore();printf("\n\n\n\n\n\n");
          printf("\t\t\t1.继续查询\n");
          printf("\t\t\t2.返回上一级菜单\n");
          printf("\t\t\t0.退出系统\n");
          printf("请选择下一步操作:(0-2)\n");
          scanf("%d",&n);
          if(n==0) exit(1);
            if(n==1) subquery();
          if(n==2) index();}
    if(n==5) {classquery();printf("\n\n\n\n\n\n");
          printf("\t\t\t1.继续查询\n");
          printf("\t\t\t2.返回上一级菜单\n");
          printf("\t\t\t0.退出系统\n");
          printf("请选择下一步操作:(0-2)\n");
          scanf("%d",&n);
          if(n==0) exit(1);
          if(n==1)subquery();
          if(n==2) index();}
    if(n==6) {index();printf("\n\n\n\n\n\n");
          printf("\t\t\t1.继续查询\n");
          printf("\t\t\t2.返回上一级菜单\n");
          printf("\t\t\t0.退出系统\n");
          printf("请选择下一步操作:(0-2)\n");
          scanf("%d",&n);
          if(n==0) exit(1);
          if(n==1) subquery();
          if(n==2) index();}   
    exit(1);}
    printf("该专业不存在!\n");
          printf("\n");
          printf("\n");
          printf("\t\t\t1.继续查询\n");
          printf("\t\t\t2.返回上一级菜单\n");
          printf("\t\t\t0.退出系统\n");
          printf("请选择下一步操作:(0-2)\n");
          scanf("%d",&n);
     if(n==0) exit(1);
     if(n==1) subquery();
     if(n==2) index();
}
void highscore()
{   system("cls"); /*运行前清屏*/
    int i,j,n;
    float max;
    printf("==============================每门成绩的最高分=============================\n");
    printf("\n\n\n\n\n");
    printf("\t\t微积分\t物理\tc语言\t英语\t概率\n");
    printf("\t\t");
    for(j=0;j<5;j++)
    {max=0;
    for(i=0;i<5;i++)
    if(max>s[i].score[j]);
    else max=s[i].score[j];
    printf("%6.2f\t",max);}
    printf("\n");
    printf("\n\n\n\n\n\n");
          printf("\t\t\t1.继续查询\n");
          printf("\t\t\t2.返回上一级菜单\n");
          printf("\t\t\t0.退出系统\n");
          printf("请选择下一步操作:(0-2)\n");
          scanf("%d",&n);
    if(n==0) exit(1);
    if(n==1) highscore();
    if(n==2) index();
}
void lowscore()
{system("cls");             //运行前清屏
    int i,j,n;
    float min;
    printf("================================每门成绩的最低分==============================\n");
    printf("\n\n\n\n\n");
    printf("\t\t微积分\t物理\tc语言\t英语\t概率\n");
    printf("\t\t");
    for(j=0;j<5;j++)
    {min=100;
        for(i=0;i<5;i++)
        if(min<s[i].score[j]);
        else min=s[i].score[j];
        printf("%6.2f\t",min);}
    printf("\n");
 printf("\n\n\n\n\n\n");
          printf("\t\t\t1.继续查询\n");
          printf("\t\t\t2.返回上一级菜单\n");
          printf("\t\t\t0.退出系统\n");
          printf("请选择下一步操作:(0-2)\n");
    scanf("%d",&n);
    if(n==0) exit(1);
    if(n==1) lowscore();
    if(n==2) index();
}

void average()            //均值函数
{system("cls");          //运行前清屏
    int i,j,n;
    float m,sum=0;
    printf("====================================每门成绩的平均分============================\n");
    printf("\n\n\n\n\n");
    printf("\t\t微积分\t物理\tc语言\t英语\t概率\n");
    printf("\t\t");
    for(j=0;j<5;j++)
    {sum=0;
        for(i=0;i<5;i++)
            sum=sum+s[i].score[j];
        m=sum/5.0;
   
        printf("%6.2f\t",m);}
        printf("\n");
         printf("\n\n\n\n\n\n");
          printf("\t\t\t1.继续查询\n");
          printf("\t\t\t2.返回上一级菜单\n");
          printf("\t\t\t0.退出系统\n");
          printf("请选择下一步操作:(0-2)\n");
    scanf("%d",&n);
    if(n==0) exit(1);
    if(n==1) average();
    if(n==2) index();
}

void paixu()                    //排序函数
{system("cls");                 //运行前清屏
    int i,j,k;
    float t;
    printf("各科成绩按从高到低排序为:\n\n");
    printf("微积分\t");
    {for(i=0;i<5;i++)
    {k=i;
    for(j=i+1;j<5;j++)
        if(s[j].score[0]>s[k].score[0])
            k=j;
        if(k!=i)
        {t=s[i].score[0];s[i].score[0]=s[k].score[0];s[k].score[0]=t;}
   
        printf("%6.2f\t",s[i].score[0]);
    }
    printf("\n");}   
    printf("物理\t");
    {for(i=0;i<5;i++)
    {k=i;
    for(j=i+1;j<5;j++)
        if(s[j].score[1]>s[k].score[1])
            k=j;
        if(k!=i)
        {t=s[i].score[1];s[i].score[1]=s[k].score[1];s[k].score[1]=t;}
   
        printf("%6.2f\t",s[i].score[1]);
    }
    printf("\n");}
    printf("c语言\t");
    {for(i=0;i<5;i++)
    {k=i;
    for(j=i+1;j<5;j++)
        if(s[j].score[2]>s[k].score[2])
            k=j;
        if(k!=i)
        {t=s[i].score[2];s[i].score[2]=s[k].score[2];s[k].score[2]=t;}
   
        printf("%6.2f\t",s[i].score[2]);
    }
    printf("\n");}
    printf("英语\t");
    {for(i=0;i<5;i++)
    {k=i;
    for(j=i+1;j<5;j++)
        if(s[j].score[3]>s[k].score[3])
            k=j;
        if(k!=i)
        {t=s[i].score[3];s[i].score[3]=s[k].score[3];s[k].score[3]=t;}
   
        printf("%6.2f\t",s[i].score[3]);
    }
    printf("\n");}
    printf("概率\t");
    {for(i=0;i<5;i++)
    {k=i;
    for(j=i+1;j<5;j++)
        if(s[j].score[4]>s[k].score[4])
            k=j;
        if(k!=i)
        {t=s[i].score[0];s[i].score[4]=s[k].score[4];s[k].score[4]=t;}
   
        printf("%6.2f\t",s[i].score[4]);
    }
    printf("\n");}
}

做一个温暖的女子,不倾城,不倾国,只倾其所有过我想过的生活
2012-06-18 12:37
小糊涂神c30
Rank: 8Rank: 8
等 级:蝙蝠侠
威 望:3
帖 子:198
专家分:809
注 册:2012-4-25
收藏
得分:3 
你的代码帮你执行了,没有什么问题,只是输入的格式不正确造成的。
录入成绩的时候,每一项之间用逗号隔开 而不是回车或空格
自己看一下代码吧,看准了用什么样的格式输入!
2012-06-18 13:30
never_yzq
Rank: 4
等 级:业余侠客
帖 子:112
专家分:213
注 册:2012-5-25
收藏
得分:3 
回复 7楼 忱罅斯潋旎
如果这真是你写的,你是我见过的,最牛逼的女生!
2012-06-18 22:56
xiaozilai
Rank: 1
等 级:新手上路
帖 子:9
专家分:6
注 册:2012-5-30
收藏
得分:3 
写的不代表是自己想的
2012-06-18 22:58
快速回复:帮忙看下我编的程序有错没
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.014493 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved