#include "stdafx.h"

kkole2022-10-04 11:39:541条回答

#include "stdafx.h"
#include
using namespace std;
class date
{
public:
date(int oa=1):a(oa){}
int a;
};
date &operator=(date &d1,date d2)
{
d1.a=d2.a;
return d1;
}
/*
这里,我不想把operator=写作class date的成员,但却出现了错误
*/
int _tmain(int argc,_TCHAR* argv[])
{
date d1,d2(7);
d1=d2;
cout

已提交,审核后显示!提交回复

共1条回复
流行枫 共回答了21个问题 | 采纳率81%
看第3条:
基本规则
1.一元操作符可以是不带参数的成员函数[1]或带一个参数的非成员函数[1].
2.二元操作符可以是带一个参数的成员函数[1]或带两个参数的非成员函数[1].
3.operator=、operator[]、operator()、operator->只能定义为成员函数[1].
4.operator->的返回值必须是一个指针或能使用->的对象.
5.重载 operator++ 和 operator-- 时带一个 int 参数表示后缀,不带参数表示前缀.
6.除 operator new 和 operator delete 外,重载的操作符参数中至少要有一个非内建数据类型.
7.x@y 搜索范围为:x 成员函数--> 全局函数/X所在名字空间中的函数/Y所在名字空间中的函数/X的友元函
数/Y的友元函数.
8.重载的的操作符应尽量模拟操作符对内建类型的行为.
1年前

相关推荐

求n个数的最小公倍数,#includeint low(int x,int y){int a,b;a=x;b=y;whil
求n个数的最小公倍数,
#include
int low(int x,int y)
{
int a,b;
a=x;b=y;
while(a!=b)
{
if(a>b)
a=a-b;
else
b=b-a;
}
return x*y/a;
}
main()
{
int m[100000],l,i;
int n;
while(scanf("%d",&n)!=EOF)
{
for(i=0;i
希望有空1年前1
卡狸 共回答了17个问题 | 采纳率88.2%
好纠结 原来 要用双精度
以下代码 可以ac
#include
int low(double x,double y)
{
int a,b,r,c;
if(x>y) {a=(int)x;b=(int)y;}
else {b=(int)x;a=(int)y;}
while(a%b)
{
r=a%b;
a=b;
b=r;
}
return x*y/(double)b;
}
int main()
{
double m[999],l;
int n,i;
while(scanf("%d",&n)!=EOF)
{
if(n>0)
{
for(i=0;i
请求对这个程序出现的错误解答,#include "stdio.h"main(){FILE *fp,*fp1;float
请求对这个程序出现的错误解答,
#include "stdio.h"
main()
{
FILE *fp,*fp1;
float d1,d;
float vol[1024];
unsigned int a[1024];
int i,NUM;
if((fp=fopen("E:lys.pci","rb"))=NULL)
{printf("cannot open this file!n");
exit(0);}
if((fp1=fopen("E:A.txt","w"))=NULL)
{printf("cannot open this file!n");
exit(0);}
fseek(fp,64L,0);
scanf("%d,&NUM");
for(i=0;i65536/2)
{
d1=d ;
vol[i]=(a[i]-65536/2)*20/65536;
}
else
{
d1=-d;
vol[i]=-a[i]*20/65536;
}
fprintf(fp1,"%ft",&vol[i]);
if(i%64==0)
fprintf(fp1,"n");
}
fclose(fp);
fclose(fp1);
}
错误为:错误 lys.c 9:需要逻辑0或非0在 main 函数中
错误 lys.c 12:需要逻辑0或非0在 main 函数中
错误 lys.c 20:语句缺少';'在 main 函数中
wdk2212191年前1
zjsxdai 共回答了14个问题 | 采纳率71.4%
if((fp=fopen("E:lys.pci","rb"))==NULL) ==不是=
if((fp1=fopen("E:A.txt","w"))==NULL) ==不是=
fscanf(fp,"%sn",a[i])后面加分号
c++关于map定义的问题.#include#include
c++关于map定义的问题.



#include
#include
#include
//#include
//#include
//#include
//#include
//#include
//#include
//#include
//#include
//#include
//#include


using namespace std;


//主函数
int main(int argc,char * argv[])
{
x05//创建map映射对象
x05map cMap;
x05//插入新元素
x05cMap[1]='B';
x05cMap[3]='C';
x05cMap[5]='D';
x05cMap[7]='G';
x05cMap[9]='F';
x05cout<<"map"<x05//定义迭代器变量
x05map::iterator it;
x05//循环输出
x05for(it=cMap.begin();it!=cMap.end();it++)
x05{
x05x05cout<<(*it).first<<"->";
x05x05cout<<(*it).second<x05}
x05//创建map映射对象
x05map iMap;
x05//插入新元素
x05iMap['a']=10;
x05iMap['b']=20;
x05iMap['x']=30;
x05iMap['y']=90;
x05//循环输出
x05for(it=iMap.begin();it!=iMap.end();it++)
x05{
x05x05cout<<(*it).first<<"->";
x05x05cout<<(*it).second<x05}
x05system("pause");
x05return 0;
}
yingerqiao791年前1
sososo17 共回答了14个问题 | 采纳率71.4%
你的it定义是map::iterator it;
你的出错的那一行map iMap;是这个,你怎么能够赋值呢,明显一个是int,char
另一个是char,int
一道素数题求出小于等于X的所有素数并将其放入数组Y中,素数个数由函数返回#include"stdio.h"int fun
一道素数题
求出小于等于X的所有素数并将其放入数组Y中,素数个数由函数返回
#include"stdio.h"
int fun(int x,int y[])
{
int i,j,k=0;
for(i=2;i
南极条约1年前1
wsxyhn951 共回答了18个问题 | 采纳率77.8%
for(i=2;i<=x;i++)
for(j=2;jx05if(i%j==0) break;
x05else y[k++]=i;
x05y[k]=' ';
return k;
改为
int i,j,k=0;
for(i=2;i<=x;i++)
{
for(j=2;jif(i%j==0)
break;
if(j==i)
y[k++]=i;
}
return k;
内层循环终止条件可以更小j

1年前

2
#include
#include
int main(void)
{
int a,b,i,j,k,l,z;
char text[3][80];
i = 0;
j = 0;
k = 0;
l = 0;
z = 0;
printf("请输入相应的字符:n");
for(a = 0; a < 3; a++)
{
printf("n请输入一句%d:n", a+1);
gets(text[a]);
for(b = 0; b < 80 && text[a][b] != ' '; b++)
{

if('A' <= text[a][b] && text[a][b] <= 'Z')
{
i = i+1;
}else if('a' <= text[a][b] && text[a][b] <= 'z')
{
j = j+1;
}else if('0' <= text[a][b] && text[a][b] <= '9')
{
k = k+1;
}else if(text[a][b] == ' ')
{
l = l+1;
}else
{
z = z+1;
}
}
printf("大写字母个数为:%dn", i);
printf("小写字母的个数为:%dn", j);
printf("数字的个数为:%dn", k);
printf("空格数为:%dn", l);
printf("其他字符的个数为:%dn", z);
return 0;
}不知道那错了求解
asda1mssdiw1年前3
舜兮舜兮 共回答了1个问题 | 采纳率100%
这好像是c语言吧!不是高中数学的范畴。
下面这道题哪里有错误?怎么改#include int max3(int a,int b,int c); /*函数声明*/
下面这道题哪里有错误?怎么改
#include
int max3(int a,int b,int c); /*函数声明*/
void main ()
{
int a,b,c;
int max;
printf("Please input three numbers:");
scanf("%d%d%d",&a,&b,&c);
max = max3(a,b,c); /*调用max3函数,其中a,b,c作为其参数,max用于保存max3函数的返回值*/
printf("the maximum number of %d,%d,%d is %dn",a,b,c,max);
}
/*可在此编写max3函数,实现求三个数中的最大值的功能*/
int Max3(int a,int b,int c)
{
int m;
if (a
kevin22hao1年前1
路边一牛 共回答了19个问题 | 采纳率100%
#include
int max3(int a,int b,int c); /*函数声明*/
void main ()
{
int a,b,c;
int max;
printf("Please input three numbers:");
scanf("%d%d%d",&a,&b,&c);
max = max3(a,b,c); /*调用max3函数,其中a,b,c作为其参数,max用于保存max3函数的返回值*/
printf("the maximum number of %d,%d,%d is %dn",a,b,c,max);
}
/*可在此编写max3函数,实现求三个数中的最大值的功能*/
int max3(int a,int b,int c) //函数定义的函数名必须和函数声明、调用的一致,所以是max不是Max
{
int m;
if (a
1.以下程序的运行结果是 #include "stdio.h" main( ) { int a[ ]={1,2,3,4,
1.以下程序的运行结果是
#include "stdio.h"
main( )
{
int a[ ]={1,2,3,4,5,6,7,8,9,10,11,12,};
int *p=a+5,*q=NULL;
*q=*(p+5);
printf("%d %d n",*p,*q);
}(3分)
A、 B、 C、 D、 F、
A、运行后报错
B、6 6
C、 6 12
D、5 5
F、
2.若有说明:int *p1,*p2,m=5,n;以下均是正确赋值语句的选项是
(3分)
A、 B、 C、 D、
A、p1=&m;p2=&p1
B、p1=&m;p2=&n;*p1=*p2;
C、p1=&m;p2=p1;
D、p1=&m;*p2=*p1;
3.已有变量定义和函数调用语句:int a=25;print_value(&a);下面函数的正确输出结果是
void print_value(int *x)
{printf("%dn",++*x);}
(3分)
A、 B、 C、 D、
A、23
B、24
C、25
D、26
4.若有语句int *point,a=4;和 point=&a;下面均代表地址的一组选项是
(3分)
A、 B、 C、 D、
A、a,point,*&a
B、&*a,&a,*point
C、*&point,*point,&a
D、&a,&*point,point
5.下面程序段的运行结果是
char *format="%s,a=%d,b=%dn";
int a=11,b=10;
a+=b;
printf(format,"a+=b",a,b);
(3分)
A、 B、 C、 D、
A、for,"a+=b",ab
B、format,"a+=b"
C、a+=b,a=21,b=10
D、以上结果都不对
6.若已定义:int a[9],*p=a;并在以后的语句中未改变p的值,不能表示a[1] 地址的表达式是
(3分)
A、 B、 C、 D、 F、
A、 p+1
B、a+1
C、a++
D、 ++p
F、
easyfriend1年前1
wuy30 共回答了25个问题 | 采纳率88%
1.*p=6 *q=11,好像没有答案
2.c
3.x=26,选D
4.D
5.a=21,b=10,选c
6.a是常量不能变化,选c
哈哈,共同学习!
这个C语言题目咋做?6阅读下列程序并回答问题,在每小题提供的若干可选答案中,挑选一个正确答案.【程序】 #include
这个C语言题目咋做?
6阅读下列程序并回答问题,在每小题提供的若干可选答案中,挑选一个正确答案.
【程序】
#include
main()
{
int i, j;
char ch, *p1, *p2, *s[4]={"four","hello","peak","apple"};
for(i = 0; i < 4; i++){
p1 = p2 = s[i];
ch = *(p1 + i);
while(*p1 != ' '){
if(*p1 != ch){
*p2 = *p1;
p2++;
}
p1++;
}
*p2 = ' ';
}
for(i = 0; i < 4; i++)
printf("%sn", s[i]);
}
【问题】
(21) 程序运行时,第1行输出 (21) .
A、our B、four C、fur D、fou
(22) 程序运行时,第2行输出 (22) .
A、ello B、hllo C、heo D、hell
(23) 程序运行时,第3行输出 (23) .
A、peak B、eak C、pek D、pak
(24) 程序运行时,第4行输出 (24) .
A、pple B、apple C、ale D、appe
说的清楚点,别只给我个答案好不.我看懂解释了我就追加分数
suxuejia1年前1
mozhaoli 共回答了20个问题 | 采纳率95%
此函数为将字符串指针数组s[i] 中,将各个字符串指针指向的字符串中除了与它当中第i个字符不相等的所有字符顺序输出,如对于 *s[0] = "four",ch='f',故输出 our
*s[1] = "hello",ch='e',故输出 hllo
因此输出结果依次为 A B C D
#include "include/apue.h"
#include "include/apue.h"
int main(viod)
{
int fd ;
if(fd=open(/home/cheng/apue.2e/test.c,O_RDONLY))
printf("can't openn");
else
printf("okn");
exit(0);
想看下open函数的用法,但是gcc编译时报错
test.c:In function ‘main’:
test.c:5:error:expected expression before ‘/’ token
test.c:5:34:error:exponent has no digits
open函数,我用的不是c库,是linux下api
魏程宇111年前1
rsg_g5f6_hf0e9b 共回答了18个问题 | 采纳率83.3%
"/home/cheng/apue.2e/test.c"
你用 man open自己看下第一个参数的原型是什么.
求会的解释下想不通为什么选A阅读下列程序,则执行后的结果为#include "stdio.h"main(){ int c
求会的解释下想不通为什么选A
阅读下列程序,则执行后的结果为
#include "stdio.h"
main()
{ int c〔〕〔4〕={1,2,3,4,5,6,7,34,213,56,62,3,23,12,34,56};
printf("%x,%x\n",c〔2〕〔2〕,*(*(c+1)+1));
}
A)3e,6
B)62,5
C)56,5
D)3E,6
菠萝圈1年前1
HotFans 共回答了17个问题 | 采纳率88.2%
A) 3e,6,数组中以0开始计算行与列,相信都知道.首先看题:可知c为一个4行4列的二维数组,%x为以十六进制输出,c[2][2]为第二行第二列,即为62,十六进制表示为:3e.后面,二维数组名表示首元素的地址,即我们称之为数组的首地址,*(c+1)表示第一行,*(c+1)+1表示第一行第一列,*(*(c+1)+1))即为第一行第一列所代表的元素,即为6.回答得不是很详细,献丑了!
#include “stdio.h" main() {inta=2,b=2;c=2; printf("%d\n",a/b
#include “stdio.h" main() {inta=2,b=2;c=2; printf("%dn",a/b&c) } 输出结果是...
79年的绿茶1年前1
soho7749 共回答了18个问题 | 采纳率94.4%
【结果】0
【分析】
&的优先级比/高
所以2/2为1,1的二进制是01
而c是2,2的二进制是10,两者相与(&),结果则为00,即0.
#include "stdio.h"
#include "stdio.h"
main();
{int a,m;
scanf("%d",&a);
switch(a/10)
{case 0:case 1:case 2:case 3:
case 4:case 5:m=1;break;
case 6:m=2;break;
case 7:m=3;break;
case 8:m=4;break;
default:m=5;break;
}
printf("m=%dn",m);
getch();
}
编译后总是出现expected identifier or'('before'{'token什么意思,
我用的是 code blocks
faith19841年前1
冬日雨天深夜 共回答了27个问题 | 采纳率100%
#include "stdio.h"
#include "conio.h"
void main() //首先main后不应有分号,且返回什为空,应加void
{
x05int a,m;
x05scanf("%d",&a);
switch(a/10)
x05{
x05x05case 0:case 1:case 2:case 3:case 4:case 5:m=1;break;
x05x05case 6:m=2;break;
x05 case 7:m=3;break;
x05 case 8:m=4;break;
x05 default:m=5;break;
x05 }
x05 printf("m=%dn",m);
x05 getch(); //应加头文件#include "conio.h"
}
其中注释为修改之处.
一个关于共用体||联合体的问题代码如下:#include "stdio.h"int _tmain(int argc,_T
一个关于共用体||联合体的问题
代码如下:
#include "stdio.h"
int _tmain(int argc,_TCHAR* argv[])
{
union union_t{int i ; double d;}u1,u2;
u1.i = 88 ;
u2.d = 3.14;
printf("u1 = %dnu2.d = %fn",u1 ,u2.d); //这两个输出语句一个 u1
printf("u1.i = %dnu2.d = %fn",u1.i,u2.d); //一个 u1.2
getchar();
}
输出结果:
u1.i = 88 //都是输出u2.d的,结果不一样呀
u2.d = 4276982394258811300000000000000000.//注意下我的疑问是这个输出结果
u1.i = 88
u1.d = 3.140000
感觉输出应该一样呢,第一个输的结果.
之前想明白了,现在记不清了,
- -
听雨0071年前1
行云无据 共回答了22个问题 | 采纳率100%
printf("u1.i = %dnu2.d = %fn",u1.i,u2.d); //应该改为u1.i
printf("u1.i = %dnu2.d = %fn",u1.i,u2.d);
opengl怎么画球?#include "windows.h"#define GLUT_DISABLE_ATEXIT_H
opengl怎么画球?
#include "windows.h"
#define GLUT_DISABLE_ATEXIT_HACK
#include
#include
void display(){
glClear(GL_COLOR_BUFFER_BIT);
glMatrixMode(GL_MODELVIEW);
glLoadIdentity();
glColor3f( 1.0f,1.0f,1.0f );
glutSolidSphere( 50.f,15,15 );
glutSwapBuffers();
}
int main(int argc,char* argv[]){
glutInit(&argc,argv);
glutInitDisplayMode(GLUT_DOUBLE | GLUT_RGB);
glutCreateWindow("小球");
glClearColor(0.0f,1.0f,1.0f,1.0f);
glutDisplayFunc(display);
glutMainLoop();
return 0;
}
高手给看看什么地方不对了,怎么改,屏幕上是空白的
dandanyixiao1年前1
岳遲 共回答了25个问题 | 采纳率84%
你的glutSolidSphere中的第一个参数太大,要小于1才能看到
麻烦告知为什么出错,如何改正,计算序列 2/1+3/2+5/3+8/5+...的前n项之和#include int ma
麻烦告知为什么出错,如何改正,
计算序列 2/1+3/2+5/3+8/5+...的前n项之和
#include
int main()
{
x09int n[]={0};
x09int m[]={0};
x09int d ,i ;
x09double sum;
x09scanf("%d",&c);
x09n[1] = 2 ,m[1] = 1 ,sum = 0 ;
x09for ( i = 0;i
cllc1年前1
和平之 共回答了17个问题 | 采纳率100%
#include
int main()
{
int n;
int m;
int c, d , i ;
double sum;
scanf("%d",&c);
n = 2 , m = 1 , sum = 0 ;
for ( i =1;i
#include "stdio.h"
#include "stdio.h"
main()
{int x,y,z;
x=0;y=2;z=3;
switch(x)
{case 0:switch(y==2)
{case 1:printf("*");break;
case 2:printf("%");break;
}
case 1:switch(z)
{case 1:printf("$");break;
case 2:printf("*");break;
default:printf("#");
}
}
}
qqdjf1年前1
她是13不是B 共回答了16个问题 | 采纳率87.5%
应该是输出“*#”吧!
先执行switch(x) ,由于x=0,所以执行case 0:switch(y==2),这里由于y==2为真(返回布尔值1),所以这句话也可行写成case 0:switch(1),所以就执行case 1:printf("*");break;注意这里的break:他只是跳出switch(1)这个switch而已,由于switch里面的case(0)后面没跟break,所以还要执行下面的case1,所以就来到case 1:switch(z) ,这里的z=3所以就执行default:printf("#"); 这样一来就输出:*#
#include "stdio.h"
#include "stdio.h"
main( )
{ void change( );
char c,*p=&c,bb ;
while ( (*p=getchar( ))!='n' )
{ bb=2; change(p,&bb)
if(bb=1) printf( "%c",*p ) ;
}
}
void change(char *pc,char *aa)
{ if ( *pc>='a' && *pc
曦禾4771年前1
坚冰 共回答了22个问题 | 采纳率90.9%
读入一个字符,如果是小写字母,则在屏幕输出
#include "stdio.h"
main( )
/*声明函数*/
{ void change( );
/*p为指向c变量的指针*/
char c,*p=&c,bb ;
/*输入字符到p指向的内存,也就是c变量,当此字符为'n'时,循环结束*/
while ( (*p=getchar( ))!='n' )
{ bb=2; change(p,&bb)/*调用函数*/
/*这句有错误,应该是if(bb==1),也就是如果bb为1,则输出字符c*/
if(bb=1) printf( "%c",*p ) ;
}
}
/*函数change*/
void change(char *pc, char *aa)
/*如果pc指向的字符是小写字母,则设置aa为1*/
/*因为aa是指针类型,所以如果在此函数aa值改变,则调用此函数的函数中,实参值也改变*/
{ if ( *pc>='a' && *pc
C程序求三角形面积#include#includevoid
C程序求三角形面积
#include
#include
void main()
{
int a,b,c;
float p;
double s;
printf("输入三角形三边");
scanf("%d,%d,%d",&a,&b,&c);
if((a+b)>c&&(a+c)>b&&(b+c)>a)
{
p=(a+b+c)/2;
s=sqrt(p*(p-a)*(p-b)*(p-c));
printf("面积=%lfn",s);
}
else
printf("输入边长不符合要求!n");
}

为什么输入3,5,7;3,6,8;不对





















明年二八1年前1
ee直通 共回答了21个问题 | 采纳率95.2%
c语言程序填空题求高手指教(1) /*求两数中较大数程序*/(2) #include (3) int max(int x
c语言程序填空题求高手指教
(1) /*求两数中较大数程序*/
(2) #include
(3) int max(int x,int y)
(4)


78题答题处



①_____________



②________________



③________________



④________________


{
(5) int z;
(6) z=x>y?x:y;
(7) return z;
(8) }
(9) void main()
(10) {
(11) int a,b,c;
(12) scanf("%d,%d",&a,&b);
(13) c=max(a,b);
(14) printf("较大数是:%dn",c);
(15) }
上述程序中,(2)行处的“stdio.h”称为____①___文件,函数scanf()和printf()都是stdio.h中的____②____函数;(13)行中的“a”和“b”是函数max()的____③____参数;该程序运行后,若输入数“3,5”并回车,可得到的运行结果是:____④____。
xiaoen11071年前1
chentutu 共回答了15个问题 | 采纳率80%
头文件库函数实际参数5
c 语言改错#include "stdio.h"void main(){int a,b,year,day,month;s
c 语言改错
#include "stdio.h"
void main()
{int a,b,year,day,month;
scanf("%d%d%d",&year,&month,&day);
switch(month)
{case 1:month=0;break;
case 2:month=31;break;
case 3:month=59;break;
case 4:month=90;break;
case 5:month=120;break;
case 6:month=151;break;
case 7:month=181;break;
case 8:month=212;break;
case 9:month=243;break;
case 10:month=273;break;
case 11:month=304;break;
case 12:month=334;break;
}
day+=month;
if(year%100==0)
{if (year%400==0)
printf("这一天是一年中的第%d天.",day++);
}
else if(year%4==0&&month>59) {a=day+month+1&& printf("这一天是一年中的第%d天.",day++);}
printf("这一天是一年中的第%d天.",day);
}
我求的是输入一年的某月某日,求这天是这年中的第几天.
可是我输入2000年的3月1日,总是输出“这一天是一年中的第六十天”,请你们看看那里错了啊!
忘了,这句a=day+month+1&& 没有
我已经自己解决了,呵呵,看了看我的程序有点乱,现在才理清头绪,留个地址吧,呵呵,以后还望大家多多指教.
yinguy1年前1
122dfdf 共回答了24个问题 | 采纳率91.7%
那是因为楼主判断的逻辑弄乱了
我这就讲下思路吧,实践部分留给楼主
不行的话,我在改
case语句结束后
判断 if month>59(到三月了)
{ 再判断是否是 if 闰年,是day++ }
输出day
请问#include"stdio.h"
请问#include"stdio.h"
main()
{
int a,b,c;
scanf("%d,%d",&a,&b);
c=(a+b)/2;
printf("%dn",c);
sizeof(int);
printf("%dn",sizeof(int));
}
结果
sizeof(int);
printf("%dn",sizeof(int));
输出为4,为什么呢?
借30双慧眼1年前1
白脸惨笑 共回答了24个问题 | 采纳率91.7%
int所占字节数就是4
sizeof就是求出int所占的字节数!
#includeclass Fuel;class Engine{int a,b;public:Engine(int xa
#include
class Fuel;
class Engine
{
int a,b;
public:
Engine(int xa=1,int xb=2){a=xa;b=xb;};
friend class Fuel;
int &geta(){return a;}
int &getb(){return b;}
};
class Fuel
{
Engine e;
public:
void show();
};
void Fuel::show()
{cout
sese081年前1
耕烟山人 共回答了17个问题 | 采纳率76.5%
楼主,把Fuel f(); 改为 Fuel f;就OK了
Fuel f; 调用无参构造函数,当无参构造函数没写时,系统自动默认.
// Fuel(){} //无参构造函数
// Fuel(Engine en){e=en;} //有参构造函数
当你写有参构造函数时,必要写无参构造函数,防止出错!
具体看看代码把:
#include
class Fuel;
class Engine
{
int a,b;
public:
Engine(int xa=1,int xb=2){a=xa;b=xb;};
friend class Fuel;
int &geta(){return a;}
int &getb(){return b;}
};
class Fuel
{
Engine e;
public:
// Fuel(){} //无参构造函数
// Fuel(Engine en){e=en;} //有参构造函数
void show();
};
void Fuel::show()
{cout
不用#include 以及sqrt()函数,怎么计算2个无理数的四则运算?
tonney_tim1年前1
古典泡泡 共回答了22个问题 | 采纳率90.9%
实现一个手动开方函数就可以
#include
#include
int main()
{
x05int a=65,b;
x05char c1,c2,c3;
x05c1='A';
x05c2='B';
x05c3='x41';
x05printf("%c,%c,%c,%cn",c1,c2,c3,a);
x05a=c1;
x05b=c2;
x05printf("%d,%dn",a,b);
x05return 0;


其中c3='x41'; 为啥是这个结果

阳羡1年前1
Joy小怡 共回答了14个问题 | 采纳率85.7%
十六进制41,相等于十进制65
#include "stdio.h" main() { int m,n; float k; for (m=6;m>2;m
#include "stdio.h" main() { int m,n; float k; for (m=6;m>2;m--) { k=0; for (n=m;n>1;n--) k=k+m*n;}
printf ("%fn",k);
A 5.000000 B 15.000000 C 25.000000 D 35.000000
yongso1年前1
solarjojo 共回答了19个问题 | 采纳率89.5%
BBBBB 15.000000
#include <stdio.h> void main() { int a=1,b=3,c=5,d=4,x=3; if
#include <stdio.h> void main() { int a=1,b=3,c=5,d=4,x=3; if(a<b) if(c>d) x=1; else if
wen_191年前1
nonoo1158 共回答了16个问题 | 采纳率93.8%
这个就是先判断a<b成立执行判断c>d成立,就执行x=1,所以最后输出1
另外,虚机团上产品团购,超级便宜
求程序的运算结果#include ” stdio.h"
求程序的运算结果
#include ” stdio.h"
void main( )
{
int b=19,c=33;
float a=10.00,f;
f=(a+c)/a
printf ("%f" ,f);
}




2.include ” stdio.h"
void main( )
{int y=8
for(;y>0;y--)
if(y%2==0) {printf (%d,--y);continue;}
}




3.#include ” stdio.h"
void main( )
{
int i;
int p[10]={1,2}
for(i=2;i<10;i++)
p[i]=p[i-2]+p[i-1]
for (i=0; i<10; i++)
printf("%d,p[i]);
}

#include
void main( )
{ int *p1,*p2,*p,a,b;
scanf( "%d,%d" ,&a,&b) ; 输入:21,15
p1=&a; p2=&b;
if(a>b)
{ p=p1; p1=p1; p2=p }
printf ("a=%d,b=%dn",a,b);
printf ("%d,%dn" ,*p1,*p2);
}

4. #include ” stdio.h"
void main( )
{ int p(int n)
int i ,p[6]={0,0,0,0,0,0,}
for (i=1;i<=6;i++)
printf ("%d" ,p(i))};
int p(int n)
{ static int s=0;
s= s+n;
return(s)
}
梦思1年前1
安我所遇 共回答了18个问题 | 采纳率94.4%
1.4.300000
2.7 5 3 1
3.前一个是斐波那契数列:1 2 3 5 8 13 21 34 55 89
后一个是:
a=21,b=15
15,21
4.静态局部变量:1 3 6 10 15 21(这道题的数组p是干扰项)
#include
#include
#include
using namespace std;
class List
{
int a[10],n;
public:
List(int a[10],int n)
{
List::n=n;
for(int i=0;i List::a[i]=a[i];
}
void Copy(List L)
{

if(this ==&L)
cout<<"Same!no copy!n";
else
{
cout<<&L<<','< n=L.n;
for(int i=0;i a[i]=L.a[i];
cout<<"Different!copied!n";
}
}
void show()
{
for(int i=0;i { cout<
}
cout< }
};
int main()
{
int a1[10]={1,2,3},a2[10]={4,5,6,7,8};
List L1(a1,3),L2(a2,5);
L1.show();
L2.show();
L2.Copy(L1);
L1.show();
L2.show();
L1.Copy(L1);
L2.Copy(L2);
L1.show();
L2.show();
x05system("pause");
x05return 0;
}
4yekbua1年前1
激少 共回答了25个问题 | 采纳率92%
看了一下你的程序 你的疑问应该就是出在画红线的部分了吧
在你的想法中
L1.Copy(L1);
L2.Copy(L2);
这两个调用 在copy函数中
if(this ==&L)
这个判断应该是成立的 但事实上 打印了Different!copied!
原因是由于传参数的时候 除非是引用做参数 否则都会做一个临时变量 把原始的实参传给临时变量,然后在函数中操作的也是这个临时变量 所以地址会不同
修改方式 改为引用传参数即可
void Copy(List L)
修改为
void Copy(List &L)
这样的打印变成
1,2,3,
4,5,6,7,8,
0xbffbf694,0xbffbf668
Different!copied!
1,2,3,
1,2,3,
Same!no copy!
Same!no copy!
1,2,3,
1,2,3,
这个程序为何无法交换A,#include"stdio.h"int a,b;int ch(int a,int b){ in
这个程序为何无法交换A,
#include"stdio.h"
int a,b;
int ch(int a,int b)
{ int t;
t=a;
a=b;
b=t;
return(a,b);
}
int main()
{
scanf("%d,%d",&a,&b);
ch(a,b);
printf("%d,%d",a,b);
}
不使用指针,
利用全局变量不是可以达到交换的吗?为何这个程序达到不了交换的目的呢?
37度的茶1年前1
wuyuetian888 共回答了15个问题 | 采纳率100%
因为int ch(int a,int b)
{ int t;
t=a;
a=b;
b=t;
return(a,b);
}
中新开辟了一段内存空间也就是说int ch(int a,int b)与 ch(a,b);在不同的地址单元,细节见c++书91页,形参与实参的关系~
在线等len(big_mem)-1;i )#include"stdio.h"
在线等len(big_mem)-1;i )#include"stdio.h"
edir=1,prev_dir;nodeStack[j 1]=nodeStack[j];
dengwenchao1年前1
clever1979 共回答了17个问题 | 采纳率94.1%
edir=1,prev_dir;for(i=0;i
·(一道选择题)帮我分析下!#include"stdio.h"void main(){int a,b,s;scanf("
·(一道选择题)帮我分析下!
#include"stdio.h"
void main()
{
int a,b,s;
scanf("%d%d",&a,&b);
s=a;
if(s=b) s*=s;
printf("%dn",s);
}
输入6和8,结果为()
A.36
B.64
C.48
D.其他.
我觉得选A.看答案好像不对.
wushuibo1年前1
frankxiang1224 共回答了14个问题 | 采纳率92.9%
一楼的回答是正确的,但是要正确理解if(s=b) s*=s这条语句.
它的判断过程是把b赋给s然后判断s是不是为0了,相当于转换后为s=b;if(s) s*=s;想必此时用该更好的理解这道题目故意扰人的用意了吧.但切不可就认为if(s=b)里就是判断语句,因为还少一个“=”符号.
.谁把过程发给我.1、分析下列程序,并给出程序运行结果#include”stdio.h”main( ){int a=10
.谁把过程发给我.
1、分析下列程序,并给出程序运行结果
#include”stdio.h”
main( )
{int a=10,b=29,c=5,d,e;
d=(a+b)/c;
e=(a+b)%c;
printf(“D=%d,E=%dn”,d,e);}
2、从键盘上输入一个大写字母,把它转换为小写字母后显示出来.
jojo7311年前1
sir2 共回答了19个问题 | 采纳率94.7%
1、d=(a+b)/c=(10+29)/5=39/5=7(如果你只是C语言的话,那应该是只取整数部分的)
e=(a+b)%c=39%5=4(%就是取余呗~)
所以输出的结果是:D=7,E=4(回车)
2、大小写字母的转化可以使用ASCII码的转化进行,每个大写字母的ASCII码比小写字母小32.
#include
void main()
{
char c;
scanf("%c",&c);
c=c+32;
printf("%cn",c);
}
我错哪了?求大神解答 我是新手#include "stdafx.h"int max(int a, int b){in
我错哪了?求大神解答 我是新手
#include "stdafx.h"

int max(int a, int b)
{
int temp;
if (a > b)
temp=a;
else
temp=b;
returntemp;
}
int main(int argc, char* argv[])
{
int x, y;
scanf("%d %d", &x, &y);
int result=max(x, y);
printf("max=%dn",result);
return 1;
}
885511851年前1
不错的说 共回答了13个问题 | 采纳率84.6%
#include //加头文件
int max(int a,int b)
{
x05int temp;
x05if (a > b)
x05x05temp=a;
x05else
x05x05temp=b;
x05x05returnx05temp;
}
int main(int argc,char* argv[])
{
int x,y;
int result;//变量尽量先定义再使用
x05x05scanf("%d %d",&x,&y);
result=max(x,y);
x05printf("max=%dn",result);
}
#include class A { public:void print1() { cout
14460001年前1
junjun8310 共回答了16个问题 | 采纳率87.5%
#include
using namespace std;
class A
{
public:
void print1()
{
cout
1到20的阶乘的和怎么求?#include "stdio.h"void main(){int i,n;long fact
1到20的阶乘的和怎么求?
#include "stdio.h"
void main()
{
int i,n;
long fact=1,sum=0;
scanf("%d",&n);
for(i=1;i
夏日茉茉茶1年前1
leechgasse76 共回答了21个问题 | 采纳率100%
long fact=1,sum=0;应该改为long double fact=1L,sum=0L;或者fact 和sum改为double型;
long double 为常双精度型;你的结果有19位,long是不行的!long最多有十位!
#include "stdio.h" main() { int max(intx,inty,intz); int a,b
#include "stdio.h" main() { int max(intx,inty,intz); int a,b,c,m; scanf("%d%d%d",&
zhzhzhlj1年前1
ft4513388 共回答了18个问题 | 采纳率94.4%
#include
int max(int x,int y,int z);
int main()
{
int a,b,c,m;
scanf("%d%d%d",&a,&b,&c);
m=max(a,b,c);
printf("%d",m);
}
int max(int x,int y,int z)
{
return ((x>y x:y)>z)?(x>y x:y):z;
}
C 语言函数定义调用#include"stdio.h"main(){\x05int i=6,j=8,k;\x05int
C 语言函数定义调用
#include"stdio.h"
main()
{
x05int i=6,j=8,k;
x05int sub(int,int);
x05k=sub(i,j);
x05printf("k=%dn",k);
x05printf("i=%dtj=%dn",i,j);
}
int sub(int c ,int d)
{
x05 c=c*c;
x05 d=d*d;
x05printf("c=%dtd=%dn",c,d);
x05return c-d;
}
这个程序运行正确,而为什么我改成下面的就不对了呢?
#include"stdio.h"
main()
{
x05int i=6,j=8,k;
x05int sub(int,int);
x05k=sub(i,j);
x05printf("k=%dn",k);
x05printf("i=%dtj=%dn",i,j);
}
int sub(int ,int )
{
x05int c=c*c;
x05int d=d*d;
x05printf("c=%dtd=%dn",c,d);
x05return c-d;
}
ziyouren2111年前1
李三嫂 共回答了13个问题 | 采纳率84.6%
函数头错了,函数定义时形参名一定得有:
int sub(int ,int )
函数体中的语句
int c=c*c;
int d=d*d;
定义的c和d是局部变量,不能接收实参的值.