重温 谭浩强c语言编程 第六章输出杨辉三角

    xiaoxiao2021-03-25  299

    #include <stdlib.h> #include <stdio.h> #include <ctype.h> void print(int a); void main(){ printf("%s\n","please input ? row yanghui:"); bool tag = true; int num; scanf("%d",&num);  //这里可能输入不合法  你们自己改吧 用fflush(stdin)刷新缓冲区 print(num); } //打印函数 void print(int num){ int **yanghui = (int **)malloc(num*sizeof(int *)); for(int i=0;i<num;i++){ *(yanghui+i) = (int *)calloc(i+1,sizeof(int));  } for(int j=0;j<num;j++){ for(int k=0;k<j+1;k++){ if(j-1 >= 0 && k-1 >=0 && k < j){  //这里对边界进行判定 yanghui[j][k] = yanghui[j-1][k-1]+yanghui[j-1][k]; }else{ yanghui[j][k] = 1; } } } for(int x=0;x<num;x++){ for(int y=0;y<x+1;y++){ printf("%d ",yanghui[x][y]); } printf("\n"); } free(yanghui); }
    转载请注明原文地址: https://ju.6miu.com/read-160.html

    最新回复(0)