C++中,下面的程序是哪错了该如何修改谢谢各位指导!

C++中,下面的程序是哪错了该如何修改谢谢各位指导!,第1张

#include<iostream>

#include<iomanip>

using namespace std;

class pet

{public:

pet(char ming,int ling);

void attribute();

void operate();

private:

void sing();

void dancing();

void joy();

void color();

void weight();

void clothes();

void voice();

void hobby();

char name;

int age;

};

pet::pet(char ming,int ling)

{name=ming;age=ling;}

void pet::attribute()

{cout<<"欢迎光临草堂宠物店"

<<"1唱歌"

<<"2跳舞"

<<"3说笑话"<<endl;

int a;

do

{

cout<<"请输入一个数:";cin>>a;

switch(a)

{

case 1:sing();break; //a为整型,所以不要单引号,后面要加break;结束switch

case 2:dancing();break;//a为整型,所以不要单引号,后面要加break;结束switch

case 3:joy();break;//a为整型,所以不要单引号,后面要加break;结束switch

}

}

while(1<=a&&a<=3); //这里改了

}

void pet::operate()

{char zf;

do

{cout<<"请输入一个字符:";cin>>zf;

switch(zf)

{

case'A':color();break;//,后面要加break;结束switch

case'B':weight();break;//,后面要加break;结束switch

case'C':clothes();break;//,后面要加break;结束switch

case'D':voice();break;//,后面要加break;结束switch

case'E':hobby();break;//,后面要加break;结束switch

}

}

while('A'<=zf&&zf<='E');//这里改了

}

void pet::sing()

{cout<<"我们都是小青蛙"<<endl;}

void pet::dancing()

{cout<<"火影忍者"<<endl;}

void pet::joy()

{cout<<"笑话精选"<<endl;}

void pet::color()

{cout<<"这个宠物是黑色的"<<endl;}

void pet::weight()

{cout<<"这个宠物重5kg"<<endl;}

void pet::clothes()

{cout<<"这个宠物穿着白色T恤"<<endl;}

void pet::voice()

{cout<<"这个宠物的声音甜美悦耳"<<endl;}

void pet::hobby()

{cout<<"这个宠物喜欢睡觉打球,爱看大片"<<endl;}

int main()

{

char mingzi;int nianling;

//pet dianlv (char mingzi,int nianling); 这个放在这里不对,因为变量未初始化

cout<<"请输入宠物的名字和年龄:"<<endl; //这里的大括号去掉

cin>>mingzi>>nianling; //这里的大括号去掉

pet dianlv(mingzi,nianling); //变量不能再声明了

dianlvattribute();

dianlvoperate();

return 0;

}

#include<stdioh>

#include<stdlibh>

struct Lnode

{

char name;

char n;

char sex;

int age;

char classnumber;

char health;

int num;

struct Lnode next;

}L;//先定义一个struct Lnode指针变量

typedef struct Lnode Linklist;

void Creatlist(Linklist L,int n);

void Operate(Linklist L,int m);

int main()

{

int n,m;

scanf("%d%d",&n,&m);

/struct Lnode L;如果在这里定义,编译器会出错。如果把这个文件后缀名改成cpp,就没有这个毛病了。c++的编译环境比c要宽松,没那么严格。

/

L=(Linklist)malloc(sizeof(Linklist));//要先给L分配空间,不然只能是一个空指针,怎么连接

Creatlist(L,n);

Operate(L,m);

return 0;

}

void Creatlist( Linklist L,int n)//注意指针形参也遵循值传递。

{

int i=1;

Linklist p,q;

// L=(Linklist)malloc(sizeof(Linklist));//如果在这里分配,可以返回这个指针付给main函数里的L

p=L;

p->name=(char)malloc(10sizeof(char));

p->n=(char)malloc(10sizeof(char));//空间注意要分配足够。

p->sex=(char)malloc(4sizeof(char));

p->classnumber=(char)malloc(10sizeof(char));

p->health=(char)malloc(6sizeof(char));

scanf("%s%s%s%d%s%s",p->name,p->n,p->sex,&p->age,p->classnumber,p->health);

p->num=i;

p->next=NULL;

for(i=1;i<n;i++)

{

q=(Linklist)malloc(sizeof(Linklist));

q->name=(char)malloc(10sizeof(char));

q->n=(char)malloc(10sizeof(char));

q->sex=(char)malloc(4sizeof(char));

q->classnumber=(char)malloc(10sizeof(char));

q->health=(char)malloc(6sizeof(char));

scanf("%s%s%s%d%s%s",q->name,q->n,q->sex,&q->age,q->classnumber,q->health);

q->num=i+1;

p->next=q;

p=q;

}

p->next=L;

}

void Operate(Linklist L,int m)

{

int i=1;

Linklist pre,cur;

cur=pre=L;

while(cur->next!=cur)

{

for(;i<m;i++)

{

pre=cur;

cur=cur->next;

}

pre->next=cur->next;

i=1;

printf("%s %s %s %d %s %s\n",cur->name,cur->n,cur->sex,cur->age,cur->classnumber,cur->health);

free(cur);

cur=pre->next;

}

printf("%s %s %s %d %s %s\n",cur->name,cur->n,cur->sex,cur->age,cur->classnumber,cur->health);

free(cur);

}

这个写程序的时候最好还是用c++后缀名,那个编译环境宽松,不会出现这样莫名其妙的错误,呵呵。希望能帮到你。

import javautilScanner;

class Round{

public double perimeter(double radius){

return radius2;

}

public double area(double radius){

return radiusradius314;

}

public void print(double radius){

Systemoutprintln("圆的周长为-->"+thisperimeter(radius)+"\n"+

"圆的面积为-->"+thisarea(radius));

}

}

public class OperateDemo{

public static void main(String args[]){

Round round=new Round();

Systemoutprint("请输入圆的半径-->");

Scanner scan=new Scanner(Systemin);

double radius=scannextDouble();

roundprint(radius);

}

}

楼主别忘了给分呀~~~

#include <iostream>

using namespace std;

int isEQ(int A,int n) //判断是否 数目相同

{

for(int i=0;i<n-1;){

if(A[i]!=A[++i]){

return 0;

}

}

return 1;

}

void display(int A ,int n) //显示;如果图形界面 需要重写此函数

{

int SUM=0;

for(int i=0;i<n;i++){

SUM=SUM+A[i];

cout<<"A["<<i<<"]="<<A[i]<<"\t";

}

cout<<endl<<"Total number is "<<SUM<<endl;

}

void operate(int A,int n) // *** 作

{

for(int i=0;i<n;i++){

if(A[i]%2){A[i]++;} //奇数小孩要1补成偶数

}

int T=A[n-1]/2; //最后一位拿出一半 放暂存

for(int i=n-1;i>0;i--){//从最后一位开始 数目变为自己的一半加前一位的一半 直道第二个小孩

A[i]=A[i]/2+A[i-1]/2;

}

A[0]=A[0]/2+T;//第一个小孩数目变为自己的原来的一半+最后一位的原来的一半

}

int main() //主模块;如果图形界面写成函数,由按钮等控件的响应函数调用

{

int A[10]={10,2,8,22,16,4,10,6,14,20};

int N=10;

int ntm=0;

while(!isEQ(A,10)){

ntm++;

operate(A,N);

display (A,N);

if(getchar()=='q')break;

}

cout<<"Operate times is "<<ntm<<endl;

}

图形界面是看你采用什么开发平台

以上就是关于C++中,下面的程序是哪错了该如何修改谢谢各位指导!全部的内容,包括:C++中,下面的程序是哪错了该如何修改谢谢各位指导!、c语言程序设计、java编写一个应用程序,创建一个圆类,在类中定义半径成员变量,如何求其面积和周长等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

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

原文地址: http://outofmemory.cn/zz/10080129.html

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

发表评论

登录后才能评论

评论列表(0条)

保存