数据结构(C语言版)算法的写法

用C语言编写 还是用类C语言呀? 需要编译通过吗? 比如这道题 怎么做 试写一算法,自大到小依次输出顺序输入的三个整数X Y Z

数据结构的算法是种解题的思路,用什么编译器来检查你的思路是否正确不是很重要,看自己擅长什么语言就选什么语言的编译器,原理也基本上是一样的,你可以用c vc++ c# java等等,他们的思路其实一样,不一样的是每种编译器的语法规则不一样,学数据结构的话最好是用编译器来写程序编译后验证自己的思路和算法是否正确。下面我用的是排序的方法写的,用的c编译器。#include"stdio.h"
void main()
{int temp,a[3],i,j;<br>for(i=0;i<3;i++)<br>{printf("NO:%d\t",i+1);<br> scanf("%d",&a[i]);<br>}
for(i=0;i<3;i++)
for(j=i+1;j<3;j++)
{if(a[i]<a[j]){temp=a[i];a[i]=a[j];a[j]=temp;}
}
for(i=0;i<3;i++)
printf("%d ",a[i]);
getch();}
温馨提示:答案为网友推荐,仅供参考
第1个回答  2013-12-29
算法是一种思想,用中文写也一样

但要计算机能处理,就要用计算机能理解的语言,比如 c java 等来写

void
decsort(int x, int y, int z)
{
if (x > y) {
if (x > z) {
t1 = x;
if (y > z) {
t2 = y;
t3 = z;
} else {
t2 = z;
t3 = y;
}
else { / * x <= z */
t1 = z;
t2 = x;
t3 = y;
}
else { /* x <= y */
... 下面类似

如果用排序来做会简洁点
第2个回答  2013-12-29
数据结构(C语言版)的算法全是用伪代码写的。。什么是伪代码,就是实际上是不能运行的,要么不符合语法,要么不全。只是表述了一下思想,让人看得懂。在实际做题中还是得用正真的代码写。
不过我喜欢挑战极限 写一个吧。。其实这个挺简单:
if(x<y) {temp=x;x=y;y=temp;}
if(y<z) {temp=y;y=z;z=temp;}
if(x<y) {temp=x;x=y;yc=temp;}
printf("%d %d %d",x,y,z);
这个代码不全,但是表示了算法思想,,可以成为伪代码。。
甚至伪代码可以这样写:
if(x<y) {}//exchange x and y

if(y<z) {}//exchange y and z
if(x<y) {}//exchange x and y
printf("%d %d %d",x,y,z);
我的英语不好。。真不好意思。。但是总之,伪代码就是用来描述算法思想的,你觉得怎么写爽,就咋写。。
嘿嘿。。
第3个回答  2013-12-29
只是一种思路而已,具体当然要在程序里边实现.
相似回答