白草折北风 2023-04-10 11:16 采纳率: 60%
浏览 41
已结题

#有关c语言c++的问题#

这是第一个题目,没找出来错误

img

img


第二个题目完全没有思路

img


求帮忙!(凑字了多凑几个字够了吗不知道)

  • 写回答

4条回答 默认 最新

  • qzjhjxj 2023-04-10 14:07
    关注

    供参考:

    //第一题
    #include <stdio.h>
    int main()
    {
        int x = 1, i, j, k;    //修改
        while (x)              //修改
        {
            printf("    1--输出图形1\n");   //修改
            printf("    2--输出图形2\n");   //修改
            printf("    0--退出\n");        //修改
            scanf("%d", &x);
            switch (x) {
            case 1:
                for (i = 5; i > 0; i--)    //修改 
                {
                    for (k = 1; k <= 5 - i; k++)
                        printf(" ");
                    for (j = 1; j <= 2 * i - 1; j++)
                        printf("*");
                    printf("\n");
                }
                break;                     //修改
            case 2:
                for (i = 1; i < 5; i++)   //修改
                {
                    for (k = 1; k < 5 - i; k++)//修改
                        printf(" ");
                    for (j = 1; j <= 2 * i - 1; j++)
                        printf("%c", i + 'A' - 1);
                    printf("\n");
                }
                break;                   //修改
            case 0:printf("退出"); //修改
                break;
            default: break;
            }
        }
        return 0;
    }
    
    
    //第二题
    #include <stdio.h>
    int fun(int n)        //素数判断
    {
        int i;
        if (n < 4) 
            return n > 1;
        for (i = 2; i * i <= n; i++)
            if (n % i == 0) return 0;
        return 1;
    }
    int main()
    {
        int k, x, i, j = 0;
        printf("请输入x的值:");
        scanf("%d", &x);
        printf("请输入k的值:");
        scanf("%d", &k);
        for (i = x + 1, j = 0; j != k; i++)
        {
            if (fun(i)) {
                j++;
                printf("%5d", i);
                if (j % 5 == 0 && j != k)
                    printf("\n");
            }
        }
        return 0;
    }
    
    
    //第二题用 while()循环的写法
    #include <stdio.h>
    int fun(int n)        //素数判断
    {
        int i;
        if (n < 4) 
            return n > 1;
        for (i = 2; i * i <= n; i++)
            if (n % i == 0) return 0;
        return 1;
    }
    int main()
    {
        int k, x, j = 0;
        printf("请输入x的值:");
        scanf("%d", &x);
        printf("请输入k的值:");
        scanf("%d", &k);
        while(x++) 
        {
            if (fun(x)) {
                j++;
                printf("%5d", x);
                if (j % 5 == 0 && j != k)
                    printf("\n");
                if (j == k) break;
            }
        }
        return 0;
    }
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论 编辑记录
查看更多回答(3条)

报告相同问题?

问题事件

  • 系统已结题 5月1日
  • 已采纳回答 4月23日
  • 创建了问题 4月10日

悬赏问题

  • ¥15 Centos7 / PETGEM
  • ¥15 csmar数据进行spss描述性统计分析
  • ¥15 各位请问平行检验趋势图这样要怎么调整?说标准差差异太大了
  • ¥15 delphi webbrowser组件网页下拉菜单自动选择问题
  • ¥15 wpf界面一直接收PLC给过来的信号,导致UI界面操作起来会卡顿
  • ¥15 init i2c:2 freq:100000[MAIXPY]: find ov2640[MAIXPY]: find ov sensor是main文件哪里有问题吗
  • ¥15 运动想象脑电信号数据集.vhdr
  • ¥15 三因素重复测量数据R语句编写,不存在交互作用
  • ¥15 微信会员卡等级和折扣规则
  • ¥15 微信公众平台自制会员卡可以通过收款码收款码收款进行自动积分吗