C语言,求解,谁能给我一个完整的源代码

如题所述

#include<stdio.h>

int main(){
int n;
scanf("%d", &n);
for(int i = 0; i<n;i++){
int space_num = n - 1 - i;
while(space_num!=0){
putchar(' ');
space_num--;
}
bool flag = true;
for(int j = 0; j < (i+1)*2-1;j++){
if(flag){
putchar('0');
flag = false;
}
else{
putchar('1');
flag = true;
}
}
putchar('\n');
}
return 0;
}

追问

追答

编译器不同造成的,我在这边测试过木有问题的,稍等


这样就行了:

#include<stdio.h>

int main(){
    int n,i,j;
    scanf("%d", &n);
    for(i = 0; i<n;i++){
        int space_num = n - 1 - i;
        while(space_num!=0){
            putchar(' ');
            space_num--;
        }
        int flag = 1;
        for(j = 0; j < (i+1)*2-1;j++){
            if(flag==1){
                putchar('0');
                flag = 0;
            }
            else{
                putchar('1');
                flag = 1;
            }
        }
        putchar('\n');
    }
    return 0;
}

追问

追答

能把这个题目的oj网址发下么?

应该是输入不满足oj的条件:

#include<stdio.h>

int main(){
    int n,i,j;
    while(scanf("%d", &n)!=EOF){
    for(i = 0; i<n;i++){
        int space_num = n - 1 - i;
        while(space_num!=0){
            putchar(' ');
            space_num--;
        }
        int flag = 1;
        for(j = 0; j < (i+1)*2-1;j++){
            if(flag==1){
                putchar('0');
                flag = 0;
            }
            else{
                putchar('1');
                flag = 1;
            }
        }
        putchar('\n');
    }
    }
    return 0;
}

温馨提示:答案为网友推荐,仅供参考
相似回答