请大神帮我把这个C++代码改成C语言的,万分感谢。

#include "iostream"
using namespace std;

int m[8];

void print()
{
cout<<"["<<m[0]<<"]-["<<m[1]<<"]-["<<m[2]<<"]"<<endl;
cout<<"["<<m[7]<<"]-[ ]-["<<m[3]<<"]"<<endl;
cout<<"["<<m[6]<<"]-["<<m[5]<<"]-["<<m[4]<<"]"<<endl;
}

void f()
{
int i,j;
for(i=0;i<7;i++)
{
for(j=7;j>=1;j--) //倒序遍历输入的8个元素
{
if(m[j]<m[j-1]) //相邻两个元素不满足条件时,交换
{
int temp=m[j];
m[j]=m[j-1];
m[j-1]=temp;

cout<<"-------------中间步骤-------------"<<endl;
print();
cout<<"----------------------------------"<<endl<<endl;
}
}
}
}
int main(void)
{
for(int i=0;i<8;i++)
{
cin>>m[i];
}
print();
cout<<endl;
f();
print();
cout<<endl;
system("pause");
return 0;
}

修改后的:

#include <stdio.h>
#include <stdlib.h>

int m[8];

void print()
{
    printf("[%d]-[%d]-[%d]\n", m[0], m[1], m[2]);
    printf("[%d]-[ ]-[%d]\n", m[7], m[3]);
    printf("[%d]-[%d]-[%d]\n", m[6], m[5], m[4]);
}

void f()
{
    int i, j, temp;
    for(i=0; i<7; i++)
    {
        for(j=7; j>=1; j--)        //倒序遍历输入的8个元素
        {
            if(m[j] < m[j-1])        //相邻两个元素不满足条件时,交换
            {
                temp = m[j];
                m[j] = m[j-1];
                m[j-1] = temp;
                printf("-------------中间步骤-------------\n");
                print();
                printf("----------------------------------\n\n");
            }
        }
    }
}
int main(void)
{
    int i;
    for(i=0; i<8; i++)
    {
        scanf("%d", &m[i]);
    }
    print();
    printf("\n");
    f();
    print();
    printf("\n");
    system("pause");
    return 0;
}

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

相关了解……

你可能感兴趣的内容

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网