| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 612 人关注过本帖
标题:急求众大虾帮助
只看楼主 加入收藏
memory0203
Rank: 1
等 级:新手上路
帖 子:6
专家分:0
注 册:2005-5-4
收藏
 问题点数:0 回复次数:5 
急求众大虾帮助
小弟最近编程用到getvect这个函数,我从网上找了一些用法的例子.可是在编译的时候,总出现说明语法错误!望众大虾能帮帮小弟!谢谢拉
搜索更多相关主题的帖子: 编程 网上 
2005-05-04 16:31
musicml
Rank: 1
等 级:新手上路
帖 子:273
专家分:0
注 册:2005-4-2
收藏
得分:0 
把你的代码贴上来!
要不然,语法错误那么多,怎知道你是属于哪一种!
哎~~~~~~

Every thing is possible.
2005-05-04 17:37
memory0203
Rank: 1
等 级:新手上路
帖 子:6
专家分:0
注 册:2005-5-4
收藏
得分:0 

#include <stdio.h> #include <dos.h> int xx; int p=49; struct pro { char id; int pri; int p; int s; int status; }A={'a',2,1,1,0},B={'b',1,1,1,0},C={'c',0,1,1,0}

void interrupt (*into)();

int select() { if (A.pri>B.pri) and (A.pri>C.pri); return(0); if (B.pri>A.pri) and (B.pri>C.pri); return(1); if (C.pri>A.pri) and (C.pri>B.pri); return(2); } int prime(int n) { int m; for(m=2;m<=n/2;m++) {if (n%m==0) return(0); } return(n); } void interrupt time() { if(A.status==1)A.pri=A.pri-A.s; else A.pri=A.pri+A.p; if(B.status==1)B.pri=B.pri-B.s; else B.pri=B.pri+B.p; if(C.status==1)C.pri=C.pri-C.s; else C.pri=C.pri+C.p;

xx++; }

main() { int a[3]={100,100,100}; int I,j,k,u,v,w=0; char c; into=gervect(p); setvect(p,time); while(xx<300) {u=select(); switch(u) {case0:a[0]++;if(a[0]>10000)a[0]=100;v=prime(a[0]); if(v){gotoxy(2,4);printf("A %6d %6d",v,w++);}break; case1:a[0]++;if(a[0]>10000)a[0]=100;v=prime(a[0]); if(v){gotoxy(3,4);printf("B %6d %6d",v,w++);}break; case2:a[0]++;if(a[0]>10000)a[0]=100;v=prime(a[0]); if(v){gotoxy(4,4);printf("C %6d %6d",v,w++);}break; } } setvect(p,into); }

2005-05-04 19:21
memory0203
Rank: 1
等 级:新手上路
帖 子:6
专家分:0
注 册:2005-5-4
收藏
得分:0 
这就是我所做的程序,其中还有几个别的错误,但是与那个函数无关,是我思路上的问题!希望大虾能指出我那个函数的错误!谢谢拉
2005-05-04 19:23
神vLinux飘飘
Rank: 13Rank: 13Rank: 13Rank: 13
来 自:浙江杭州
等 级:贵宾
威 望:91
帖 子:6140
专家分:217
注 册:2004-7-17
收藏
得分:0 
其实如果撇开你的思路错误的话

最关键的地方就是你的语法错误了,编译器所说的“说明语法错误”其实是你在
struct pro
{
  char id;
  int pri;
  int p;
  int s;
  int status;
}A={'a',2,1,1,0},B={'b',1,1,1,0},C={'c',0,1,1,0}

的结尾处少了个分号,从而让编译器误认为下面的语句是和上面的连接在一起的,所以就出现了所谓的“说明语法错误”
A={'a',2,1,1,0},B={'b',1,1,1,0},C={'c',0,1,1,0};
这样就对了

当然,好心点,顺便告诉你另外的一些语法错误
在main()中的
into=gervect(p);应该改为into=getvect(p);
相信这是你不小心打错的

还有,注意一下
int select()
{
   if (A.pri&gt;B.pri) and (A.pri&gt;C.pri);
     return(0);
    if (B.pri&gt;A.pri) and (B.pri&gt;C.pri);
     return(1);
     if (C.pri&gt;A.pri) and (C.pri&gt;B.pri);
     return(2);
}

注意一下你的if语句是否正确,好象全错了呢

淘宝杜琨
2005-05-04 21:01
memory0203
Rank: 1
等 级:新手上路
帖 子:6
专家分:0
注 册:2005-5-4
收藏
得分:0 
这位大虾真是太感谢你拉!哎,我又犯这种错误拉!谢谢你!
2005-05-04 22:05
快速回复:急求众大虾帮助
数据加载中...
 
   



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

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