㈠ C和C++编译结果为什么不同
.c文件是纯C语言,里面的变量需要先定义,再使用。
改成这样就可:
#include<stdio.h>
void search2(float** p, int n)
{
int i;
for (i=0; i<3; i++)
{
printf("%g ", *(*(p+n-1)+i));
}
}
void main()
{
float *p[3];
int nCount = 3;
float score[3][3]={{65,67,79},{80,86,84},{50,90,763}};
int nPos;
for ( nPos =0; nPos < nCount; nPos ++ )
p[nPos] = *(score+nPos);
search2(p, 2);
}
㈡ 为什么我的VC++6.0里编译的C程序结果总是不对
你的程序是有一小点的错误。首先,你应该将int型改为float型,因为你的scanf用的是%f。其次,你的语句scanf("%f,%f,%f",&a,&b,&c); 用的是%f,%f,
%f,所以你在运行时的输入格式应该为:10,20,30 enter.特别注意:在输入的时候不能是10 20 30 这就是你错误的所在啊!
㈢ 为什么这条c语言程序,输入同一个内容,运行结果会不一样啊
c语言中定义的变量如果没有赋值,将使用内存中的随机值,也就是不确定的值;
本例中的变量n和变量LWH没有初始化,使用的是不确定的值
int n,LWH;//没有初始化,使用的是不确定的值
所以结果就不确定
解决办法:
int n=0,LWH=0;
㈣ 我刚学C语言,为什么这两个代码编译的结果不一样 不好意思,我新手,没分给。
电脑执行是按顺序来的,上下两个顺序不一样,上面的先输入数字赋给f,然后再进行下面的运算。下面的是先运算,这时你下面的输入赋值语句还没有执行,f中的数值是不定的随机的,运算结果输出的可能很奇怪,运算过后,电脑才给f赋值,这时候,运算结果在上面已经出来了,并且存入C中,你只改变了f的值,输出结果只与c有关与f无关。
㈤ 用C语言写了一个程序,如图。请问为什么用不同编译器执行同样代码,结果不同
把 这一句: int b = b + 1;
改为 b = b + 1;
结果就一样了
因为你在while中重新定义了变量b,但是没有给b赋值,b的值是随机的,有可能出现任何值
㈥ 一个C++小程序,在不同编译器里运行结果不一样,怎么回事
r和c都没有初始化,你就while(++r)了,当然结果不一样。
在这种情况下,一般r,和c是随机值,但一般是编译器给的一个负数。
int r=0;
int c=0;
㈦ C语言同一段代码运行结果不一样
图一本来就是正常的,不可能由代码引起崩溃。崩溃只可能是其他原因引起的。
㈧ C语言代码在不同编译器下运行结果不同,请问原因
可以把fflush(stdin); 删掉,有时候把这个删掉就行了。scanf("%c", &ch);换成ch=getchar();应该就行了。
至于两个编译器不一样的情况,这是肯定会有的,毕竟是两个不同的编译器。
㈨ C输入同样数据,编译和运行结果不一样 用的DEV- C++5.11
这种情况通常都是没有初始化数据导致的,因为运行时内存中的值是随机的,才会出现同种输入,不同输出