不知道哪里出错了,帮忙看看啊,我快疯了!!
#include <stdio.h>int main()
{
int a,b;
const int number;
int count = 0;
int f1,f2,f;
int i,j;
do{
scanf("%d %d",&a,&b);
f1 = b;
}while(a != 0);
do{
scanf("%d %d",&a,&b);
f2 = b;
}while(a != b);
int length1 = sizeof(f1)/sizeof(f1);
int length2 = sizeof(f2)/sizeof(f2);
for( i=length1-1 ; i>=0 ; i-- ){
for( j=length2-1 ; j>=0 ; j-- ){
if(i == j){
f = f1 + f2;
printf("%dx%d+",f,i);
}
else if(i < j){
printf("%dx%d+%dx%d+",f2,j,f1,i);
}
else{
printf("%dx%d+%dx%d+",f1,i,f2,j);
}
}
}
printf("\b ");
return 0;
} {:10_245:}{:10_245:}{:10_245:}{:10_245:}基础需要巩固啊
const int number;
你的number都没有赋值就使用了 lumber2388779 发表于 2017-4-22 19:39
基础需要巩固啊
const int number;
你的number都没有赋值就使 ...
因为下标还不确定啊 那该怎么解决这个问题??? 星若有泪 发表于 2017-4-22 19:56
因为下标还不确定啊 那该怎么解决这个问题???
.最直接方法给number赋值,没有常量不能定义数组的,你自己定义number的时候都是给了他一个常量关键字,然后没有任何值,这种写法也是有问题的 lumber2388779 发表于 2017-4-22 19:59
.最直接方法给number赋值,没有常量不能定义数组的,你自己定义number的时候都是给了他一个常量关键字, ...
已经改了 但还是不符合要求 题目是多项式的运算#include <stdio.h>
int main()
{
int a,b;
const int number = 100;
int f1,f2,f;
int i,j;
for( i=0 ; i<number ; i++ ){
f1 = 0;
f2 = 0;
f = 0;
}
if(a>=0 && a<=100){
do{
scanf("%d %d",&a,&b);
f1 = b;
}while(a != 0);
do{
scanf("%d %d",&a,&b);
f2 = b;
}while(a != 0);
}
int length1 = sizeof(f1)/sizeof(f1);
int length2 = sizeof(f2)/sizeof(f2);
for( i=0 ; i<length1 ; i++ ){
for( j=0 ; j<length2 ; j++ ){
f = f1 + f2;
}
}
int length = sizeof(f)/sizeof(f);
for( i=length-1 ; i>=0 ;i-- ){
if(i == 0){
printf("%d",f);
}else if(f == 0){
printf("");
}else{
printf("%dx%d+",f,i);
}
}
printf("\b ");
return 0;
} 星若有泪 发表于 2017-4-22 21:22
已经改了 但还是不符合要求 题目是多项式的运算
int length1 = sizeof(f1)/sizeof(f1);
int length2 = sizeof(f2)/sizeof(f2);
这两句计算方法不对 f1和f2都是具体的数值,都是int类型与f1 f2都是一致的,算出来都是1,而且sizeof计算f1和f2算出来的都是总长度就是100*4 4为int类型的字节数
在上边你可以给一个统计输入数字个数的下边用于控制就可以
if(a>=0 && a<=100){
do{
scanf("%d %d",&a,&b);
f1 = b;
}while(a != 0);
do{
scanf("%d %d",&a,&b);
f2 = b;
}while(a != 0);
}
感觉这段有点太复杂,用for循环控制输入两个数分别给f1和f2,判断输入的值不是0就可以继续输入
页:
[1]