在程序框图中,算法中间要处理数据或计算,可分别写在不同的(  )A.处理框内B.判断框内C

在程序框图中,算法中间要处理数据或计算,可分别写在不同的(  )A.处理框内B.判断框内C,第1张

根据框图功能

处理框的功能是:处理数据或计算;

判断框的功能是:根据条件选择程序执行方向;

终端框的功能是:表示程序的开始和结束;

输入输出框的功能是:数据的输入输出,

故选A

目测这个程序是输入abc三个数,按照从大到小的顺序打印出来。

这个流程图有两个错误:

(一)中间的“a>c”真的错了,正确的应该是c>a。

原因:前面已经把ab按照从大到小排起来了,也就是a一定是大数,b一定是小数,即a>b。这时,如果判断大数a与c的大小,如果(c比a大)为真,那么肯定c是最大的数了,所以按照cab的顺序打印就可以了。所以这个判断一定是c>a了。

(二)中间的“输出cab"也是错误的,应该是”输出acb"。原因请楼主自己分析好吗?

#include<stdio.h>

int main()

{

    int a[10]

    int i,j

    int tem

    bool bchange = false

    printf("请输入10个整数,空格隔开:\n")

    for(i = 0i<10i++)

    {

        scanf("%d",&a[i])

    }

    //Bubble

    for(i=1i<10i++)

    {

        //bchange = false

        for(j=0j<10-ij++)

        {

            if(a[j]>a[j+1])

            {

                tem = a[j]

                a[j] = a[j+1]

                a[j+1] = tem

                bchange = true

            }

        }

        if(i == 3)

        {

         printf("第%d趟排序的结果为:\n",i)

    for(int k = 0k<10k++)

    {

        printf("%3d",a[k])        

    }

    printf("\n")

        }

        //if(!bchange)//not change

        //break

    }

    printf("排序后的结果为:\n")

    for(i = 0i<10i++)

    {

        printf("%3d",a[i])        

    }

        printf("\n")

        return 0

}

在排序过程中i代表第几次排序,通过变量i既可以控制 输出第几行排序结果。

希望能够帮到你。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/11368953.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-15
下一篇 2023-05-15

发表评论

登录后才能评论

评论列表(0条)

保存