-
比如2楼,应该用sum=sum+sign*(1 i),这很明显,你可以自己调试一下找到。
但是有一个隐藏的错误不容易被发现,你肯定会在运行几次后找到它。
既然 i 被定义为 int,那么 1 i 的结果只能是整数,而当 i > 1 时,1 i 的结果是 0
则总和输出为 2
如果要实现小数点,应该使用 sum=sum+sign*(,或者将 i 定义为 float,这是编译器的一种机制,当一个计算的两边都是 int 时,那么计算的结果也是 int,只需将运算符的左值或右值改为 float,那么运算的结果就可以变成 float 了
-
i=sign*i 错了。
你使用 i=i+1,它很乱。
您只需使用 sum=sum+sign*(1 i)。
-
#include
#include
int max;
int larger(int a, int b, int c) 比较 3 个数字并得到它们的最大值。
int main(void)
-
兄弟,你确定这里是这样用的吗?
-
呃,,错误很多,main里没有空隙,而且在scanf里你看一个%d呵呵。还有一个函数体类型的 int。 我会试试,看看是不是该送你了。 楼下是正确的解决方案。
-
#include
void main()
int max 3 (int a, int b, int c ) 的比较可以使用三元运算符 n= a > b ? a : b;
int max 2(a,b) 函数定义应添加的变量类型,int max 2(int x,int y)。
-
数组定义了两次?
中间的if(max>a[i][j])不应该改为“如果这是帝国登记册的最大值”吗?
main 函数 return max 将不租用任何东西并输出肢体。
-
1.重复定义一个数组,2当弹簧蒙皮 max>a[i][j] 是返回最大值时,则不执行 printf;
如果你想在数组中获得最大的笑差,你应该把 return 放在 printf 之后。
-
数组必须在定义数组的同时进行初始化。
我还想问,你想通过这个程序实现什么? 看起来有点小问题。
-
"12465fseszdfdxcorek"这是一个常量,表示语句中字符串的第一个地址,char* a ="12465fseszdfdxcorek"这句话是给指针a赋值常量字符串的第一个地址,因为它是一个常量,所以它的值不能改变,所以跑到句子*(a+i) = *(a+j)时会出错。 通常,在将常量字符串分配给指针时,应在指针上添加 st,以指示指针 a 不能修改指向字符串的值。
正确的做法是将字符串存储在数组中,或者像这样:
char* a=new char[strlen("12465fseszdfdxcorek")+1];
strcpy(a,"12465fseszdfdxcorek");
请求一个空间来存储字符串 new 通过,用 a 指向它,然后将字符串复制到其中!
楼下你错了,你不知道strlen的原理,strlen就是从第一个地址开始计算元素的数量,直到遇到空字符'\0'end,所以你可以使用strlen(a)!
-
似乎缺少一个包含
我写道:只需将 char*a="12465fseszdfdxcorek";
改为:char a[20]="12465fseszdfdxcorek";
这样做的原因是你声明的字符 *a 只是一个指向下一个字符串的第一个地址的指针,而不是整个字符串,所以 strlen() 无法返回它应该有的长度。
好像和楼上差不多,已经编好了!
建议送给楼上的那家,很不错!
-
这是因为 char*a="12465fseszdfdxcorek";定义的字符串是常量的方式,并且由于它是一个常量,因此只能访问它,而不能更改其值。 一楼不对,a是它的第一个地址,这意味着你也可以这样访问它:char s=a[2]; 此时,s='4'。
就这样去做吧。
char a[20] = "12465fseszdfdxcorek";
-
我想你。
for(int i=0;我应该改为阅读。
for(int i=0;i
-
一楼回答得很全面,变更程序应该从第一个变更,可能会有很多错误,都是第一个错误造成的,第一次变更背后的错误可能会消失。
-
没办法覆盖,midlet类里还有个方法就是抽象的,而且这里你没有实现,看错误提示应该是,我还没做过j2me,不清楚。
-
程序没有错误,也许是模拟器有问题,可以换个wtk版本试试。
-
你的编译会通过吗? Alt+1 实现未实现的方法。
-
最后一个分号应该是半角; ,而不是中文全宽。
-
return 0;这个分号是中文符号,改成英文就行了。
同一个外部变量在两次函数调用期间保留其先前的值,这意味着放置在堆中的变量(全局变量以及用静态修饰的局部变量都放置在堆中)不会在函数调用结束时被销毁(函数中定义的局部变量放置在堆栈中, 并且堆栈在函数调用完成后被销毁,除非用 static 修改它),并且它的值将保持不变,直到它被函数重新分配。 >>>More
从**本身和运行情况来看,可执行程序的内容与粘贴的**不匹配(可能是修改后没有重新编译,而修改前的**运行,否则不会**现在出现可以编译传递的错误,例如第二行末尾有更多的“op”, 和“现有1人捐款无产出”),修改建议如图所示:
在你决定现在学习任何其他语言之前,你是否必须看看该语言的任何成功项目? 没有必要只问C语言,因为世界上所有最重要的系统都必须有C语言。 例如,操作系统内核、基础高级语言等。 >>>More