| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1038 人关注过本帖
标题:帮我把子程序加到总程序中,我按讲的加了,就是调试错误
只看楼主 加入收藏
yxf2328063
Rank: 1
等 级:新手上路
帖 子:15
专家分:0
注 册:2013-12-20
收藏
得分:0 
回复 8楼 yxf2328063
你能帮我看下嘛/
2013-12-20 17:26
so_love
Rank: 13Rank: 13Rank: 13Rank: 13
等 级:蒙面侠
威 望:7
帖 子:812
专家分:4151
注 册:2013-11-25
收藏
得分:0 
那你说一下是什么错误啊。

一花一世界、一叶一追寻、片片花叶落、情系何人身。
2013-12-20 17:26
yxf2328063
Rank: 1
等 级:新手上路
帖 子:15
专家分:0
注 册:2013-12-20
收藏
得分:0 
回复 10楼 so_love
/*main()*/
#include<stdio.h>
#include<stdio.h>
#include<conio.h>
#include<dos.h>
#include<stdlib.h>
#include<string.h>
 void sort(char *name[],int n)
    {    char *pt;
        int i,j,k;
        for(i=0;i<n-1;i++)
        {k=1;
            for(j=i+1;j<n;j++)
                if(strcmp(name[k],name[j])>0)k=j;
                if(k!=i)
                {    pt=name[i];
                    name[i]=name[k];
                    name[k]=pt;    }}}
    void print(char*name[],int n)
    {    int i;
        for(i=0;i<n;i++)
            printf("%s\n",name[i]);    }
void h1()
{    static char *name[]={"CHINA","AMERICA","AUSTRALIA","RUSSIA","GERMAN"};
    int n=5;
    sort(name,n);
    print(name,n);}

void h2()
{    int a[10],max,n,i;
    printf("enter 10 interger numbers:");
    for(i=0;i<10;i++)
        scanf("%d",&a[i]);
    printf("\n");
    for(i=1,max=a[0],n=0;i<10;i++)
    {if(max<a[i])
     {max=a[i];    n=i;}}   
    printf("max=%d\n n=%d\n",max,n);}

int fac(int n)
{int f;
 if(n<0)
  printf("n<0,data error!");
 else if(n==0||n==1)
        f=1;
     else f=fac(n-1)*n;
return(f);}

void h7()
#include <stdio.h>
#include <conio.h>
typedef struct Student
{
   char name[255];
   float score[4];
   float avers;
}Student;
void main()
{
    int i,j;
    float sum;
    Student s[10],tmp;
    for(i=0;i<10;i++)
    {
        printf("输入第%d个学生的名字:",i+1);
        scanf("%s",s[i].name);
        sum=0;
        for(j=0;j<3;j++)
        {
            printf("输入第%d个学生的第%d门课的成绩:",i+1,j+1);
            scanf("%f",&s[i].score[j]);
            sum+= s[i].score[j];
        }
        s[i].avers=sum*1.0/3;
    }
    for(i=0;i<10;i++)
       for(j=0;j<3-i;j++)
         if(s[j].avers< s[j+1].avers)
         {
             tmp=s[j];
             s[j]=s[j+1];
             s[j+1]=tmp;
         }
    printf("%-10s%-10s%-10s%-10s%-10s\n","姓名","课程1","课程2","课程3","平均分");
    for(i=0;i<10;i++)
    {
       printf("%-10s",s[i].name);
       for(j=0;j<3;j++)
           printf("%-9.1f ",s[i].score[j]);
       printf("%-9.1f\n",s[i].avers);
     }
    getch();
}
void h10()
{char S1[200],S2[100];
    char *p,*q;   
    printf("请输出字符串s1:\n");
    printf("请输出字符串s2:\n");
    scanf("%s%s",S1,S2);
    p=S1;q=S2;
    while(*p++);
    p--;
    while(*q)
    {*p=*q;p++;q++;}
    *p='\0';
    printf("连接以后\ns1=%s\n",S1);
}







main()
{ int a;
do{
printf("  1.调用函数1\n");
printf("  2.调用函数2\n");
printf("  3.调用函数3\n");
printf("  4.调用函数4\n");
printf("  5.调用函数5\n");
printf("  6.调用函数6\n");
printf("  7.调用函数7\n");
printf("  8.调用函数8\n");
printf("  9.调用函数9\n");
printf("  10.调用函数10\n");
printf("  11.请退出\n");
printf("  请选择:\n");
scanf("%d",&a);
 switch(a)
 {case 1 : h1();break;
  case 2:  h2();break;
  case 7:  h7();break;
  case 10: h10();break;
 }
}while(a!=11);
exit(0);
}这是我加好后的,可调试错误啊
2013-12-20 17:29
so_love
Rank: 13Rank: 13Rank: 13Rank: 13
等 级:蒙面侠
威 望:7
帖 子:812
专家分:4151
注 册:2013-11-25
收藏
得分:0 
你能描述一下是什么错误么???

一花一世界、一叶一追寻、片片花叶落、情系何人身。
2013-12-20 17:30
yxf2328063
Rank: 1
等 级:新手上路
帖 子:15
专家分:0
注 册:2013-12-20
收藏
得分:0 
回复 12楼 so_love
----------------Configuration: main2_1 - Win32 Debug--------------------
Compiling...
main2_1.cpp
C:\Users\lenovo\Desktop\新建文件夹\main2_1.cpp(53) : error C2143: syntax error : missing ';' before '<class-head>'
C:\Users\lenovo\Desktop\新建文件夹\main2_1.cpp(53) : fatal error C1004: unexpected end of file found
执行 cl.exe 时出错.
2013-12-20 17:30
so_love
Rank: 13Rank: 13Rank: 13Rank: 13
等 级:蒙面侠
威 望:7
帖 子:812
专家分:4151
注 册:2013-11-25
收藏
得分:0 
/*main()*/
#include<stdio.h>
#include<stdio.h>
#include<conio.h>
#include<dos.h>
#include<stdlib.h>
#include<string.h>
typedef struct Student
{
   char name[255];
   float score[4];
   float avers;
}Student;


void sort(char *name[],int n)
    {    char *pt;
        int i,j,k;
        for(i=0;i<n-1;i++)
        {k=1;
            for(j=i+1;j<n;j++)
                if(strcmp(name[k],name[j])>0)k=j;
                if(k!=i)
                {    pt=name[i];
                    name[i]=name[k];
                    name[k]=pt;    }}}
    void print(char*name[],int n)
    {    int i;
        for(i=0;i<n;i++)
            printf("%s\n",name[i]);    }
void h1()
{    static char *name[]={"CHINA","AMERICA","AUSTRALIA","RUSSIA","GERMAN"};
    int n=5;
    sort(name,n);
    print(name,n);}

void h2()
{    int a[10],max,n,i;
    printf("enter 10 interger numbers:");
    for(i=0;i<10;i++)
        scanf("%d",&a[i]);
    printf("\n");
    for(i=1,max=a[0],n=0;i<10;i++)
    {if(max<a[i])
     {max=a[i];    n=i;}}   
    printf("max=%d\n n=%d\n",max,n);}

int fac(int n)
{int f;
if(n<0)
  printf("n<0,data error!");
else if(n==0||n==1)
        f=1;
     else f=fac(n-1)*n;
return(f);}
void h7()
{
    int i,j;
    float sum;
    Student s[10],tmp;
    for(i=0;i<10;i++)
    {
        printf("输入第%d个学生的名字:",i+1);
        scanf("%s",s[i].name);
        sum=0;
        for(j=0;j<3;j++)
        {
            printf("输入第%d个学生的第%d门课的成绩:",i+1,j+1);
            scanf("%f",&s[i].score[j]);
            sum+= s[i].score[j];
        }
        s[i].avers=sum*1.0/3;
    }
    for(i=0;i<10;i++)
       for(j=0;j<3-i;j++)
         if(s[j].avers< s[j+1].avers)
         {
             tmp=s[j];
             s[j]=s[j+1];
             s[j+1]=tmp;
         }
    printf("%-10s%-10s%-10s%-10s%-10s\n","姓名","课程1","课程2","课程3","平均分");
    for(i=0;i<10;i++)
    {
       printf("%-10s",s[i].name);
       for(j=0;j<3;j++)
           printf("%-9.1f ",s[i].score[j]);
       printf("%-9.1f\n",s[i].avers);
     }
    getch();
}
void h10()
{char S1[200],S2[100];
    char *p,*q;   
    printf("请输出字符串s1:\n");
    printf("请输出字符串s2:\n");
    scanf("%s%s",S1,S2);
    p=S1;q=S2;
    while(*p++);
    p--;
    while(*q)
    {*p=*q;p++;q++;}
    *p='\0';
    printf("连接以后\ns1=%s\n",S1);
}







main()
{ int a;
do{
printf("  1.调用函数1\n");
printf("  2.调用函数2\n");
printf("  3.调用函数3\n");
printf("  4.调用函数4\n");
printf("  5.调用函数5\n");
printf("  6.调用函数6\n");
printf("  7.调用函数7\n");
printf("  8.调用函数8\n");
printf("  9.调用函数9\n");
printf("  10.调用函数10\n");
printf("  11.请退出\n");
printf("  请选择:\n");
scanf("%d",&a);
switch(a)
{case 1 : h1();break;
  case 2:  h2();break;
  case 7:  h7();break;
  case 10: h10();break;
}
}while(a!=11);
exit(0);
}

你好好看看   程序不允许2个main函数。。。

一花一世界、一叶一追寻、片片花叶落、情系何人身。
2013-12-20 17:33
yxf2328063
Rank: 1
等 级:新手上路
帖 子:15
专家分:0
注 册:2013-12-20
收藏
得分:0 
回复 16楼 so_love
帮我改下
2013-12-20 17:33
so_love
Rank: 13Rank: 13Rank: 13Rank: 13
等 级:蒙面侠
威 望:7
帖 子:812
专家分:4151
注 册:2013-11-25
收藏
得分:0 
改完了。。只要你写的函数没错误就行。而且我改的你都没注意看  我给你标注一下吧
/*main()*/
#include<stdio.h>
#include<stdio.h>
#include<conio.h>
#include<dos.h>
#include<stdlib.h>
#include<string.h>   // 头文件不要重复。
typedef struct Student
{
   char name[255];
   float score[4];
   float avers;
}Student;    // 结构体放最上面。


void sort(char *name[],int n)
    {    char *pt;
        int i,j,k;
        for(i=0;i<n-1;i++)
        {k=1;
            for(j=i+1;j<n;j++)
                if(strcmp(name[k],name[j])>0)k=j;
                if(k!=i)
                {    pt=name[i];
                    name[i]=name[k];
                    name[k]=pt;    }}}
    void print(char*name[],int n)
    {    int i;
        for(i=0;i<n;i++)
            printf("%s\n",name[i]);    }
void h1()
{    static char *name[]={"CHINA","AMERICA","AUSTRALIA","RUSSIA","GERMAN"};
    int n=5;
    sort(name,n);
    print(name,n);}

void h2()
{    int a[10],max,n,i;
    printf("enter 10 interger numbers:");
    for(i=0;i<10;i++)
        scanf("%d",&a[i]);
    printf("\n");
    for(i=1,max=a[0],n=0;i<10;i++)
    {if(max<a[i])
     {max=a[i];    n=i;}}   
    printf("max=%d\n n=%d\n",max,n);}

int fac(int n)
{int f;
if(n<0)
  printf("n<0,data error!");
else if(n==0||n==1)
        f=1;
     else f=fac(n-1)*n;
return(f);}
void h7()   //是这个地方  把你的main 改成h7   
{
    int i,j;
    float sum;
    Student s[10],tmp;
    for(i=0;i<10;i++)
    {
        printf("输入第%d个学生的名字:",i+1);
        scanf("%s",s[i].name);
        sum=0;
        for(j=0;j<3;j++)
        {
            printf("输入第%d个学生的第%d门课的成绩:",i+1,j+1);
            scanf("%f",&s[i].score[j]);
            sum+= s[i].score[j];
        }
        s[i].avers=sum*1.0/3;
    }
    for(i=0;i<10;i++)
       for(j=0;j<3-i;j++)
         if(s[j].avers< s[j+1].avers)
         {
             tmp=s[j];
             s[j]=s[j+1];
             s[j+1]=tmp;
         }
    printf("%-10s%-10s%-10s%-10s%-10s\n","姓名","课程1","课程2","课程3","平均分");
    for(i=0;i<10;i++)
    {
       printf("%-10s",s[i].name);
       for(j=0;j<3;j++)
           printf("%-9.1f ",s[i].score[j]);
       printf("%-9.1f\n",s[i].avers);
     }
    getch();
}
void h10()
{char S1[200],S2[100];
    char *p,*q;   
    printf("请输出字符串s1:\n");
    printf("请输出字符串s2:\n");
    scanf("%s%s",S1,S2);
    p=S1;q=S2;
    while(*p++);
    p--;
    while(*q)
    {*p=*q;p++;q++;}
    *p='\0';
    printf("连接以后\ns1=%s\n",S1);
}







main()
{ int a;
do{
printf("  1.调用函数1\n");
printf("  2.调用函数2\n");
printf("  3.调用函数3\n");
printf("  4.调用函数4\n");
printf("  5.调用函数5\n");
printf("  6.调用函数6\n");
printf("  7.调用函数7\n");
printf("  8.调用函数8\n");
printf("  9.调用函数9\n");
printf("  10.调用函数10\n");
printf("  11.请退出\n");
printf("  请选择:\n");
scanf("%d",&a);
switch(a)
{case 1 : h1();break;
  case 2:  h2();break;
  case 7:  h7();break;
  case 10: h10();break;
}
}while(a!=11);
exit(0);
}


一花一世界、一叶一追寻、片片花叶落、情系何人身。
2013-12-20 17:37
yxf2328063
Rank: 1
等 级:新手上路
帖 子:15
专家分:0
注 册:2013-12-20
收藏
得分:0 
回复 16楼 so_love
谢谢了
2013-12-20 17:38
yxf2328063
Rank: 1
等 级:新手上路
帖 子:15
专家分:0
注 册:2013-12-20
收藏
得分:0 
回复 19楼 yxf2328063
总算好,谢谢啊,大神啊
2013-12-20 17:39
快速回复:帮我把子程序加到总程序中,我按讲的加了,就是调试错误
数据加载中...
 
   



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

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