为什么我用C-free5.0运行下面这个程序怎么老出错,哪错了

为什么我用C-free5.0运行下面这个程序怎么老出错,哪错了,第1张

你好!

修改后的代码,代码功能没有验证:

#include<stdioh>

#include<mathh>

int main()

{

const double pi = 40  atan(10);

double r, h, s1, s2, s;

scanf("%lf%lf", &r, &h);

s1 = pirr;

s2 = 2pirh;

s = s120 + s2;

printf("Area = %31f\n", s);

return 0;

}

你的报错信息来看

1编译程序找不到源文件,很有可能是因为你的路径及程序含中文导致的

2后续的头文件默认目录/编译工具链等目录找不到,很有可能是因为这些路径带了(X86)这种未必能被识别的符号。

根据其他软件的经验,试试把你的IDE(C-FREE)装到直接一点的路径下,你这个路径带了(X86),工程及文件名最好不要带中文。

直接点,你的IDC试下重新直接装在比如D:/下面,然后工程目录及文件名也放在比如D:/project下,再试一下

这是我编的代码

#include <fstreamh>//头文件

#include <cstdlib>

#include <cstring>

#include <iostreamh>

struct SHANGPIN // 定义结构体类型

{

char name[8]; //////产品名称

char id[10]; ////编号

float price; ///// 价钱

};

/const/ int m_nRecMax = 20;

SHANGPIN theArray = new SHANGPIN[m_nRecMax]; // 预先分配20个商品数据的内存空间

int m_nCurRecNum = 0; // 当前结构数组中的记录数

void read() //将studenttxt读到theArray[]中

{

struct SHANGPIN sp;

fstream file("SHANGPINtxt",ios::out|ios::in);

if(!file)

{

return;

}

fileread((char )&sp,sizeof(sp));

while (!fileeof())

{

theArray[m_nCurRecNum++]=sp;

fileread((char )&sp,sizeof(sp));

if (fileeof())

m_nCurRecNum--;

}

fileclose();

}

// 另添加一个函数Copy用于SHANGPIN的复制

void Copy( SHANGPIN d, SHANGPIN s )

{

strcpy( d->name, sname );

strcpy( d->id, sid );

d->price = sprice;

}

void Output( SHANGPIN one ) // 判定,输出学生等级信息

{

printf("%s\t%s",oneid,onename);

printf("\t%f",oneprice);

}

void Add(void) // 添加记录

{

// 输入数据

SHANGPIN sp;

printf("商品名:");

scanf("%s",spname);

printf("编号:");

scanf("%s",spid);

printf("价钱:");

scanf("%f",&spprice);

Copy( &theArray[m_nCurRecNum], sp ); // 将输入的数据暂时存储到结构数组中

m_nCurRecNum++; // 记录当前数组中有多少数据

if ( m_nCurRecNum >= m_nRecMax ) // 判断空间是或够用,不够则显示无法在添加记录

{

printf("内存空间不够,无法在添加记录!");

exit(1);

}

}

//将theArray[]中数据保存到studenttxt文件中

void save()

{

fstream file("SHANGPINtxt",ios::out);

if(!file)

{

printf("文件不能打开\n");

return;

}

for (int i=0;i<=m_nCurRecNum;i++)

filewrite((char )&theArray[i],sizeof(theArray[i]));

fileclose();

}

void List(void) // 遍历结构数组并输出学生信息

{

printf("学号\t姓名\t英语\n");

for (int i=0; i<m_nCurRecNum; i++)

Output( theArray[i] );

}

float Find(char id) // 查找记录,结果可能有多条

{

bool isFind = false;

printf("学号\t姓名\t英语\n");

for (int i=0; i<m_nCurRecNum; i++)

{

if ( strcmp(theArray[i]id, id) == 0 ) // 相等

{

isFind = true; Output( theArray[i] );

return(theArray[i]price);

}

}

if (!isFind)

printf("没有找到!");

}

void del(char id) // 按学号删除学生信息

{

bool isFind=false;

for (int i=0; i<m_nCurRecNum; i++)

{

if(strcmp(theArray[i]id ,id)==0)

{

isFind=true; m_nCurRecNum--;

for(int j=i+1;j<m_nCurRecNum;j++)

{

theArray[j]=theArray[j+1];

printf("删除成功\n");

}

}

}

if(!isFind)

printf("没有找到该信息!");

}

void RemoveAll( void ) //退出程序

{

if (theArray)

{

delete []theArray; theArray = NULL;

}

}

int main()

{

char id[10];

char name[10];

int nSelect;

float sum=0;

read();

while (1)

{

system("cls");

printf(" 欢迎进入商品清单系统");

printf("\n");

printf(" \n");

printf("\n");

printf("\n");

printf(" 1 ---- 添加商品详单\t\t2 ---- 商品显示\n");

printf("\n");

printf(" 3 ---- 按编号查找\t\t4 ---- 按编号删除商品信息\n");

printf("\n");

printf(" 5-------推出系统\t\t");

printf("\n");

printf("请选择:");

scanf("%d",&nSelect);

switch(nSelect)

{

case 0: RemoveAll();

exit( 0 ); break;

case 1: {

Add();

save();

break;

}

case 2:{

List();

break;

}

case 3:

printf("请输入要查找的商品编码:");

while(!id)

{

scanf("%d",id);

sum+=Find(id);

}

printf("商品总价钱是:%f",sum);

break;

case 4:

{

printf("请输入要删除的商品编码:");

scanf("%d",id);

del(id);

save();

break;

}

case 5:

{

RemoveAll();

}

default: printf("选择有误。");

}

printf("按任何键继续");

cinget(); cinget();

}

return 0;

}

mingw这个工具是在windows下模拟linux编译环境的一个工具。

linux下编译过程中生成的所有链接文件都是以c/cpp文件的名称命名的o文件,文件格式是elf,

而windows编译过程中生成的链接文件都是obj文件,文件格式是PE。

这是两种不同 *** 作系统的一个编译上的特点。

以上就是关于为什么我用C-free5.0运行下面这个程序怎么老出错,哪错了全部的内容,包括:为什么我用C-free5.0运行下面这个程序怎么老出错,哪错了、c-free在win10系统不能编译怎么解决、C free 运行时的警告!谁能帮我解决一下啊等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/zz/10105706.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-05
下一篇2023-05-05

发表评论

登录后才能评论

评论列表(0条)

    保存