谁能给我解释几条表达式?

答:在C和C++语言里,同一个函数里出现同一个variable两次并且有数值改变,是undefine的,比如function(++i; --i), 是没有一个统一的规则说是取哪一个值。 同样的代码,每个compiler会弄成不同的机器代码,而像这种没有统一规则的东西,结果也会不同 我只能猜测一下你的compiler是怎样分的 K=(i++)+(i++)+(i++) 的运算结果是:9 我估计compiler是同时进行三个括号里的运算,先备份,再加1,在return备份,结果三个备份在三个加1之前,都备份了3。 K=(++i)+(++i)+(++i) 的运算结果是:18 这个也一样,这个compiler把三个括号里的运算都同时进行完了一起return, 结果最后计算完内存里是6,就都return 6了。 楼主搞错了,第二个的结果应该是16.测试程序 这个比较费解,我只能想象是你的compiler是挨个计算,然后是考虑到了cpu对运算进行的pipeline把jr后移了,最后一个后面没了所以没有后移,三个结果是4,6,6.

3回答
2019-06-03

一个有关C语言的问题

答:应该在第一个for语句下面加上a=1;如下: (顺便说一下,楼上直接改成for(i=1,a=1;i<=n;i++)的办法是行不通的,因为循环初始化工作是只进行1次的,而不是你所想的每次都进行) main() { int i,j,n,a=1; long int sum=0; scanf("%d",&n); for(i=1;i<=n;i++) { a=1; for(j=1;j<=i;j++) a=a*j; sum=sum+a; } printf("sum=%ld\n",sum); }

3回答
2019-06-03

想学习嵌入式,不知道从何学起?

答:学习嵌入式要从C学起,下面这个链接是Linux下c基础知识,供参考: 同时也有录制的视频学习的资料,如果需要,我整理好后发给大家。

3回答
2019-06-03

C语言问题此程序存在7个错误,找出其中5个并修改: main ...

答:楼上的写的很全了。。

3回答
2019-06-02

C++问题,急!~

答:*(p+2)= 5的意思是就是a[2] p[4]的值是a[4]的值4; int *p = a;就是p指针指向a,这时候可以看成p就是a了

3回答
2019-06-02

帮忙编个程序,很基础的程序,请用for搞定啊

答:无论是C还是C++,都没有a^3+b^3+c^3这种形式的,只能写成a*a*a+b*b*b+c*c*c这种形式。 我用C写个程序,代码如下: void main() {int a,b,c,num; for(num=100;num<1000;num++) {a=num/100; b=(num-a*100)/10; c=num-a*100-b*10; if(a*a*a+b*b*b+c*c*c==num) printf("the narcissus is:%d\n",num); } }

3回答
2019-06-02

用C解决这个问题?

答:上面xieyou学弟的基本思路,已经非常正确了,只是程序中稍微有点瑕疵,需要修改一下,修改后的程序如下: int max(int a[],int n) {int i,t; t=0; for(i=1;i<n;i++) if(a[t]<a[i]) t=i; return t; } main() {int a[]={8,5,3,2}; int i,j,m; for(i=1;i<=1999;i++) { m=max(a,4); for(j=0;j<4;j++) { if(j==m) a[j]=a[j]-3; else a[j]=a[j]+1; } } for(i=0;i<4;i++) printf("a[%d]=%d\t",i,a[i]); } 该程序已经在tc下运行通过,运行结果如下: a[0]=3 a[1]=4 a[2]=6 a[3]=5

3回答
2019-06-02

c++中的一个array应用

答:我用VC++编译的,可以输入任意长的数据,不过你看看你的编译器是否有string这个头文件,有的编译器没有这个头文件的(PS:我的程序跟上面的有所不同,他们输入的字符有限(只有10个),看清楚了。。。) #include<iostream> #include<string> using namespace std; void main() { string a,b; int i; cout<<"请输入字符串:"; cin>>a; cout<<"输出字符串:"; for(i=a.length()-1;i>=0;i--) cout<<a.substr(i,1); cout<<endl; }

3回答
2019-06-02

用for循环求出1!-3!+5!-7!=?

答:#include <iostream> #include <iomanip> using namespace std; int main() { int num,sum,b,result; result=1; b=0; for(num = 3;num<=7;num=num+2) { for(int i=0,sum=1;i<num;i++) {sum=sum*(i+1);} if(b==0) { result=1-sum; b=1; }else{ result=1+sum; b=0; } } cout<<"result="<<result; return 0; } 这样就是判断符号的了比上面的要简单了不少。

3回答
2019-06-02

在哪可以下载vc 6.0?

答:简体中文:

3回答
2019-06-01