| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 461 人关注过本帖
标题:求助啊,谁能帮我改一下程序
只看楼主 加入收藏
____LI
Rank: 1
等 级:新手上路
帖 子:1
专家分:0
注 册:2012-2-15
结帖率:0
收藏
已结贴  问题点数:20 回复次数:2 
求助啊,谁能帮我改一下程序
#include <stdio.h>
#include <string.h>
struct equipment
{
    char ID[10];
    char kind[10];
    char name[10];
    char price[10];
    char time[10];
    char over[10];
    char overtime[10];
}
    data[70];



void build(struct eqiupment data[70],int n)
{
    int i;
    printf("输入实验设备编号、种类、名称、价格、购入日期、是否报废、报废日期: \n");
    for(i=0;i<n;i++)
    {
        scanf("%s %s %s %s %s %s %s",data[i].ID,data[i].kind,data[i].name,data[i].price,data[i].time,data[i].over,data[i].overtime);
    }
        printf("已录入设备信息。\n");        
}        
        


int chance(struct equipment data[70],int n)
{
    int j=0;
    int i;
    char temp[10];
    printf("输入需要修改设备的ID:\n");
    scanf("%s",temp);
    for(i=0;i<n;i++)
    if( strcmp(temp,data[i].ID) == 0 )
    {
        printf("重新输入此设备编号、种类、名称、价格、归入日期、是否报废、报废日期:\n");
        scanf("%s %s %s %s %s %s %s",data[i].ID,data[i].kind,data[i].name,data[i].price,data[i].time,data[i].over,data[i].overtime);
        j++;
    }
    if(j==0)   
    {
        printf("没有此设备信息。\n");
    }
    return(n);
}   
int del(struct equipment data[70],int n)
{
    int j=0;
    int i,k;
    char temp[10];
    printf("输入需要删除设备的ID:\n");
    scanf("%s",temp);
    for(i=0;i<n;i++)
    {
        if( strcmp(temp,data[i].ID) == 0 )
        {   
            for(k=i;k<n+1;k++)
            {
                strcpy(data[k].ID,data[k+1].ID);
                strcpy(data[k].kind,data[k+1].kind);
                strcpy(data[k].name,data[k+1].name);
                strcpy(data[k].price,data[k+1].price);
                strcpy(data[k].time,data[k+1].time);
                strcpy(data[k].over,data[k+1].over);
                strcpy(data[k].overtime,data[k+1].overtime);
                j++;
            }
        }
    }
    if(j==0)   
    printf("没有此设备信息。\n");
    else printf("已删除此设备信息。\n");
    n--;
    return(n);
}

int show(struct equipment data[70],int n)
{
    int i;
    for(i=0;i<n;i++)   
    {
        {
            printf("%s %s %s %s %s %s %s",data[i].ID,data[i].kind,data[i].name,data[i].price,data[i].time,data[i].over,data[i].overtime);
        }
    }
    return(n);
}


main()
{
    int n;
    char choose,go[10];
    printf(" <<<<<<<<<<<<<<<<<<<<<<<<<实验设备管理系统<<<<<<<<<<<<<<<<<<<<<<<< \n");
    printf("输入设备数量:\n");
    printf("你的输入是:");
    scanf("%d",&n);
    build(data,n);

again:
printf("\n\n");
printf("|请选择操作: 1代表修改设备信息|\n");
printf("|            2代表删除设备信息|\n");
printf("|            3代表查询设备信息|\n");
printf("|            0代表退出程序    |\n");
printf("\n你的输入是:");
scanf(" %c",&choose);
 
switch (choose)
{
case '1':n=chance(data,n);   break;
case '2':n=del(data,n);      break;
case '3':n=show(data,n);     break;
case '0':goto end;
default: printf("输入错误。\n");
     goto again;
}

printf("\n若想再次选择操作,请输入Y,而输入其他键代表退出程序。\n");
printf("你的输入是:");
scanf("%s",go);
if( strcmp(go,"Y")==0 )   
{
    goto again;
    }

end:
printf("\n已退出 \n");
}
搜索更多相关主题的帖子: 实验设备 void equipment include price 
2012-02-15 16:01
snakelazixp
Rank: 2
等 级:论坛游民
帖 子:51
专家分:94
注 册:2012-2-13
收藏
得分:10 
楼主能不能把问题讲得明白点。。。。。。。。。。。。
2012-02-15 19:31
dgd199152
Rank: 2
等 级:论坛游民
帖 子:18
专家分:55
注 册:2012-2-15
收藏
得分:10 
主函数前加void,build函数的参数的结构名称打错了u和i顺序错了#include <stdio.h>
 #include <string.h>
 struct equipment
 {
     char ID[10];
     char kind[10];
     char name[10];
     char price[10];
     char time[10];
     char over[10];
     char overtime[10];
 }data[70];



void build(struct equipment data[70],int n)
 {
     int i;
     printf("输入实验设备编号、种类、名称、价格、购入日期、是否报废、报废日期: \n");
     for(i=0;i<n;i++)
     {
         scanf("%s%s%s%s%s%s%s",data[i].ID,data[i].kind,data[i].name,data[i].price,data[i].time,data[i].over,data[i].overtime);
     }
         printf("已录入设备信息。\n");
 }



int chance(struct equipment data[70],int n)
 {
     int j=0;
     int i;
     char temp[10];
     printf("输入需要修改设备的ID:\n");
     scanf("%s",temp);
     for(i=0;i<n;i++)
     if( strcmp(temp,data[i].ID) == 0 )
     {
         printf("重新输入此设备编号、种类、名称、价格、归入日期、是否报废、报废日期:\n");
         scanf("%s %s %s %s %s %s %s",data[i].ID,data[i].kind,data[i].name,data[i].price,data[i].time,data[i].over,data[i].overtime);
         j++;
     }
     if(j==0)
     {
         printf("没有此设备信息。\n");
     }
     return(n);
 }
int del(struct equipment data[70],int n)
 {
     int j=0;
     int i,k;
     char temp[10];
     printf("输入需要删除设备的ID:\n");
     scanf("%s",temp);
     for(i=0;i<n;i++)
     {
         if( strcmp(temp,data[i].ID) == 0 )
         {
             for(k=i;k<n+1;k++)
             {
                 strcpy(data[k].ID,data[k+1].ID);
                 strcpy(data[k].kind,data[k+1].kind);
                 strcpy(data[k].name,data[k+1].name);
                 strcpy(data[k].price,data[k+1].price);
                 strcpy(data[k].time,data[k+1].time);
                 strcpy(data[k].over,data[k+1].over);
                 strcpy(data[k].overtime,data[k+1].overtime);
                 j++;
             }
         }
     }
     if(j==0)
     printf("没有此设备信息。\n");
     else printf("已删除此设备信息。\n");
     n--;
     return(n);
 }

int show(struct equipment data[70],int n)
 {
     int i;
    for(i=0;i<n;i++)
     {
         {
             printf("%s %s %s %s %s %s %s",data[i].ID,data[i].kind,data[i].name,data[i].price,data[i].time,data[i].over,data[i].overtime);
         }
     }
     return(n);
 }


void main()
 {
     int n;
     char choose,go[10];
     printf(" <<<<<<<<<<<<<<<<<<<<<<<<<实验设备管理系统<<<<<<<<<<<<<<<<<<<<<<<< \n");
     printf("输入设备数量:\n");
     printf("你的输入是:");
     scanf("%d",&n);
     build(data,n);

again:
 printf("\n\n");
 printf("|请选择操作: 1代表修改设备信息|\n");
 printf("|            2代表删除设备信息|\n");
 printf("|            3代表查询设备信息|\n");
 printf("|            0代表退出程序    |\n");
 printf("\n你的输入是:");
 scanf(" %c",&choose);

 switch (choose)
 {
 case '1':n=chance(data,n);   break;
 case '2':n=del(data,n);      break;
 case '3':n=show(data,n);     break;
 case '0':goto end;
 default: printf("输入错误。\n");
      goto again;
 }

printf("\n若想再次选择操作,请输入Y,而输入其他键代表退出程序。\n");
 printf("你的输入是:");
 scanf("%s",go);
 if( strcmp(go,"Y")==0 )
 {
     goto again;
     }

end:
 printf("\n已退出 \n");
 }

2012-02-15 19:44
快速回复:求助啊,谁能帮我改一下程序
数据加载中...
 
   



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

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