注册 登录
编程论坛 数据结构与算法

经常遇到的编译错误类型

菜鸟成长记11 发布于 2013-04-09 23:24, 646 次点击
编译错误提示
e:\c++\microsoft visual studio\myprojects\杨辉三角\杨辉三角.cpp(230) : fatal error C1010: unexpected end of file while looking for precompiled header directive




用队列解决杨辉三角打印
源程序如下:   


#include <stdio.h>
#include <stdlib.h>

#define Maxsize 10

typedef struct NODE  
{  
    int data[Maxsize];  
    int rear;  
    int front;  
}CqQueue, *Cqlist;

/*
函数功能:队列的初始化
*/
Cqlist InitCQ(Cqlist Queue)  
{
    Queue = (Cqlist)malloc(sizeof(CqQueue));
    if (!Queue)
    {
        printf("Memory allocation is failure!\n");
    }
    Queue->front = 0;
    Queue->rear = 0;

    return Queue;
}
/*
函数功能:从队头删除元素
*/
Cqlist DeleteQueue(Cqlist Queue, int *temp)
{
    if (Queue->rear == Queue->front)
        return Queue;
    Queue->front = (Queue->front + 1) % Maxsize;//(Queue->front + 1)%Maxsize, (Queue->rear + 1) % Maxsize; 形成循环队列  
    *temp = Queue->data[Queue->front];
    Queue->data[Queue->front] = 0;

    return Queue;  
}  
/*
函数功能:查找队头元素
*/
Cqlist GetHeadQueue(Cqlist Queue, int *x)
{
    if (Queue->rear == Queue->front)
        return Queue;
    *x = Queue->data[(Queue->front + 1) % Maxsize];

    return Queue;
}
/*
函数功能:从队尾插入元素
*/
Cqlist EnterQueue(Cqlist Queue, int e)
{
    Queue->rear = (Queue->rear + 1) % Maxsize;
    if (Queue->rear == Queue->front)
        printf ("The queue is full !");
    else
        Queue->data[Queue->rear] = e;

    return Queue;
}
/*
函数功能:打印杨辉三角
*/
void PascalTriangle(Cqlist Queue, int len)
{
    int temp, x, L, n;

    Queue = InitCQ(Queue);
    Queue = EnterQueue(Queue, 1);
    for (n=2; n<=len; n++)
    {
        Queue = EnterQueue(Queue, 1);
        for (L=1; L<=n-2; L++)
        {
            Queue = DeleteQueue(Queue, &temp);
            printf("%d\t", temp);
            Queue = GetHeadQueue(Queue, &x);
            temp = temp + x;
            Queue = EnterQueue(Queue, temp);
        }
        Queue = DeleteQueue(Queue, &temp);
        printf("%d\t", temp);
        printf("\n");
        Queue = EnterQueue(Queue, 1);
    }
    while (Queue->rear != Queue->front)
    {
        Queue = DeleteQueue(Queue, &temp);
        printf("%d\t", temp);
    }
    printf("\n");
}


int main(void)
{
    Cqlist Queue;
    int len;

    printf("please input the size of the pascal triangle:\n");
    scanf ("%d" , &len);
    PascalTriangle(Queue, len);

    return 0;
}
6 回复
#2
菜鸟成长记112013-04-09 23:26
请大神指教      这是创建工程出现的问题吗???
#3
fanpengpeng2013-04-09 23:30
很正常啊 没有什么问题
#4
azzbcc2013-04-10 07:49
http://blog.
#5
菜鸟成长记112013-04-10 10:10
回复 3楼 fanpengpeng
但是编译不过去啊!!!这个该怎么办啊?
#6
菜鸟成长记112013-04-10 10:16
回复 4楼 azzbcc
在编译VC++6.0是,出现fatal error C1010: unexpected end of file while looking for precompiled header directive
的错误.

解决方法:

1、如果发生错误的文件是由其他的C代码文件添加进入当前工程而引起的,则Alt+F7进入当前工程的 Settings,选择C/C++选项卡,从Category组合框中选中Precompiled Headers,选择Not Using Precompiled headers。确定。

2、在文件开头添加:
#include "stdafx.h"

你说的是这两种方式吗?
我试试哈
#7
菜鸟成长记112013-04-10 10:20
回复 6楼 菜鸟成长记11
谢了。。。立杆见影
1