| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 348 人关注过本帖
标题:【求助】关于文件操作,这段代码改了好多遍了,为什么还是报错?(新手,分 ...
只看楼主 加入收藏
BruceDave
Rank: 1
等 级:新手上路
帖 子:2
专家分:0
注 册:2011-4-6
收藏
 问题点数:0 回复次数:3 
【求助】关于文件操作,这段代码改了好多遍了,为什么还是报错?(新手,分少请见谅))
程序功能:文件aa.txt中按从小到大顺序存放了20个整数,要求从键盘输入一个整数,把该数插入到文件中,并保持文件特性不变,下面是代码:
# include<stdio.h>
# include<stdlib.h>
# define N 20
int findposition(int *p,int b);
int insert(int *p,int b,int position);
void main()
{
    FILE * fp;
    int i,a[21],b,* p,n;
    if((fp=fopen("aa.txt","r"))==NULL)
    {
        printf("Cannot open file!");
        getchar();
        exit(1);
    }
    printf("文件中的数为");
    for(i=0;i<N;i++)
        fscanf(fp,"%d",&a[i]);
    for(i=0;i<N;i++)
        printf("%d\n",a[i]);
    fclose(fp);
    printf("请输入要插入的数");
    scanf("%d",&b);
    p=a;
    n=insert(p,b,findposition(a,b));
    if((fp=fopen("aa.txt","w+"))==NULL)
    {
        printf("Cannot open file!");
        getchar();
        exit(1);
    }
    for(i=0;i<=N;i++)
        fprintf(fp,"%d",*(p+i));*/
    for(p=a;p<=p+n;p++)
        printf("%d\n",*p);
    fclose(fp);
}
int findpositiom(int *p,int b)
{
    for(int i=0;i<N;i++,p++)
        if(*p>b)
            break;
            return i;
}
int insert(int * p,int b,int position)
{
    int i;
    for(i=N;i>=position;i--)
        *(p+i+1)=*(p+i);
    *(p+position)=b;
    return N+1;
}
我是用VC6.0编译的,报错:
2.obj : error LNK2001: unresolved external symbol "int __cdecl findposition(int *,int)" (?findposition@@YAHPAHH@Z)
Debug/2.exe : fatal error LNK1120: 1 unresolved externals

[ 本帖最后由 BruceDave 于 2011-4-6 19:47 编辑 ]
搜索更多相关主题的帖子: void 键盘 position include insert 
2011-04-06 19:45
痴痴颠颠
Rank: 1
等 级:新手上路
帖 子:7
专家分:5
注 册:2011-4-6
收藏
得分:0 
我也是新手,就帮楼主顶下吧,希望楼主快快解决哦~

耐得住寂寞,经得起挫折,做得出选择,拼的出结果!
2011-04-06 20:29
njkido
Rank: 9Rank: 9Rank: 9
等 级:蜘蛛侠
帖 子:224
专家分:1184
注 册:2011-3-8
收藏
得分:0 
findpositiom拼错了
2011-04-06 20:31
jackboos
Rank: 2
等 级:论坛游民
帖 子:21
专家分:37
注 册:2011-4-6
收藏
得分:0 
int findpositiom(int *p,int b)
{
    for(int i=0;i<N;i++,p++)
        if(*p>b)
            break;
            return i;
}
1.拼错
2.for()中不能声明变量i

   fprintf(fp,"%d",*(p+i));*/
;后*/错误
2011-04-07 00:56
快速回复:【求助】关于文件操作,这段代码改了好多遍了,为什么还是报错?(新手 ...
数据加载中...
 
   



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

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