You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

C语言实现乘法对应行数星号输出问题求助

问题修正:按乘法结果输出对应数量星号

你的代码问题出在调用displayAst函数时的传参——你一直传入的是原始输入的数字a,而不是当前乘法式子的结果a*i。要实现每行输出对应乘法结果数量的星号,只需要修改displayMulti函数里的传参即可。

修正后的完整代码

void displayAst (int b) {
    
    for (int i = 1; i <= b ; i++) {
        printf ("*");
    }
}

void displayMulti (int a) {
    

    for (int i = 1; i <= 10 ; i++) {
        
        printf ("\n%d x %d = ", a, i);
        // 把传参从a改成a*i,用乘法结果作为星号数量
        displayAst (a * i); 
        
    }
}

int main () {

    int nNum;

    printf ("Enter Number: "); 
    scanf ("%d", &nNum);

    displayMulti (nNum);
    
    
    return 0;
}

关键修改说明

  • 在displayMulti的循环中,调用displayAst时,将参数从a替换为a * i,这样每次循环都会计算当前乘法式子的结果(比如输入3时,i=1传3,i=2传6,直到i=10传30),从而输出对应数量的星号。

内容的提问来源于stack exchange,提问作者KenKeneshel

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.13 15:31:01