c语言的这两个错在哪里啊?

来源:百度知道 编辑:UC知道 时间:2024/05/09 08:34:19
01:有abc队员,xyz队员打比赛,a不和x打,c不和x也不和z打,请输出所以比赛的情况种数

#include<stdio.h>
void main(){
int i,j,s=0;
for(i=1;i<=3;i++){
for(j=1;j<=3;j++){
if((!((i==1)&&(j==1)))&&
(!((i==3)&&(j==1))||((i==3)&&(j==3)))){
s++;
};
};

if((i==1)&&(j=2)){
printf("a--y\n");
};
if((i==1)&&(j=3)){
printf("a--z\n");
};
if((i==2)&&(j=1)){
printf("y--a\n");
};
if((i==2)&&(j=2)){
printf("y--b\n");
};
if((i==2)&&(j=3)){
printf("y--c\n");
};
if((i==3)&&(j=2)){
printf("c--y\n");
};
};
printf("%d",s);
}

2:求出1到n的阶乘和
#include<stdio.h>
void main(){
int i,k,n,s=0,s1;
scanf("%d",&

你得先说说a-y和y-a这种情况需不需要计2次?

2
你需要输出的是s的值不是s1的值
#include<stdio.h>
void main(){
int i,k,n,s=0,s1;
scanf("%d",&n);
for(i=1;i<=n;i++){
s1=1;
for(k=1;k<=i;k++){
s1=s1*k;
};
s=s+s1;
};
printf("%d",s);}

1
我看了一下你上面编的程序,我只能用无语来形容。既然你要这么编,那我只能将错就错,下面是我替你改 的程序,答案是对的,你自己调试一下看看。
#include<stdio.h>
void main(){
int i,j,s=0;
for(i=1;i<=3;i++){
for(j=1;j<=3;j++){
if((!((i==1)&&(j==1)))&&
(!((i==3)&&(j==1))||((i==3)&&(j==3)))){
s++;
};
};

if((i==1)&&(j=2)){
printf("a--y\n");
};
if((i==1)&&(j=3)){
printf("a--z\n");
};
if((i==2)&&(j=1)){
printf("b--x\n");
};
if((i==2)&&(j=2)){
printf("b--y\n");
};
if((i==2)&&(j=3)){
printf("b--z\n");
};
if