求一款C语言学习用的Linux平台

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了求一款C语言学习用的Linux平台相关的知识,希望对你有一定的参考价值。

如题,学习Linux平台的C语言,但是不想找大容积安装的linux发行版本,想找一款小巧,功能不差,可以在虚拟机中运行的LINUX平台。谁知道?

其实很简单,你随便拿一个发行版,然后安装的时候定制安装。。。
学习c语言只需要安装其中的gcc automake等开发套件,再加上内核等必装的即可。。。连图形界面都不用安装。。。
这样的话几百M即可答到你的要求。。。
参考技术A 如果不需要ide环境的话,可以用debian,不装桌面,虚拟机64M内存跑得飞快 参考技术B ide,emacs,vi,vim。vim是vi的加强版。


有一次某杂志采访一些出名的 Linux 内核程序员,包括 Linus 在内,没有一个人用IDE,有的人用 VIM,有的用 Emacs,只有 Linus 说"GNU Emacs is evil",但是其实他用的是一种跟 Emacs 有同样键绑定功能的 MicroEmacs。大家都是用编辑器编辑了程序文件,然后用 make 这样的自动工具调用 gcc 编译器完成编译工作的。甚至高级的 Windows 程序员也不用 IDE,他们可以从命令行调用 cl,nmake 来编译自己的程序。虽然这样的 Windows 程序员很少,但是他们却是最了解 Windows,最高明的Windows 程序员。

为什么 UNIX 程序员不用 IDE?明白了这个道理你就能体会到 UNIX 的设计思想了。首先,一个 IDE 集成了编辑器,编译器,汇编器,调试器,跟踪器…… 这个编辑器功能肯定比不上 VIM 或 Emacs,编译器比不上 GCC,汇编器比不上 as,调试器比不上 gdb,ddd, 跟踪器比不上 strace, ltrace, truss。你得到的是一套整合的低能的程序。如果你对调试器的功能不满意,你只好换用另外一套 IDE,但是这套 IDE 的热键,菜单,编辑器功能,按钮…… 跟原来那个有很大不同。你不得不花很多时间来熟悉新的环境,而不能保持原来的某些东西。

而在 UNIX 下就不一样了。你可以用你最喜欢的 VIM 编辑程序,你在 VIM 里可以调用GNU make,make 可以调用 gcc, ld, ... make 的出错信息可以被 VIM 捕获,VIM 能帮你在源程序里定位。你如果喜欢 icc, 你可以让 make 用 icc 而不是 gcc。你如果觉得 gdb 跟踪变量时比较麻烦,你可以用 ddd 来显示各种数据结构之间的关系。你还可以在 Emacs 里调用 gdb,那样就可以同步显示源代码了。而且 VIM 和 Emacs 还可以编辑很多其它东西,比如信件,LaTeX 文档,html,配置文件…… 你不用另外找一个什么编辑器来干这些杂活了。很多程序比如 Mutt, tin 都可以在内部使用 VIM,这样就更方便了。实际上 make 在其它方面还能帮你很多忙,我的每一个比较大型的 LaTeX文档都是用 make 维护的。 ”

参考资料:王垠的《完全用linux工作》

参考技术C 不装桌面和服务器及相关的软件就行。只装系统内核和开发套件。完全命令行操作。
如果想用图像界面的话就装一个轻量级的桌面如xfce。
参考技术D 不需要用虚拟机, 直接下cygwin或者coLinux在windows上运行就好了。 第5个回答  2009-08-07 推荐用新氧ubuntu
这是国人优化的,没有广告,好处是常用软件都安装完了。包括输入法也优化好了
xylinux.com

c语言如何求一个数的阶乘

n的阶乘就是从1到的累积,所以可以通过一个for循环,从1到n依次求积即可。

参考代码:

#include "stdio.h"

int main()

int n,i,s=1;

scanf("%d",&n);

for(i=1;i<=n;i++)//for循环求累积

s=s*i;

printf("%d\\n",s);

return 0;

/*

运行结果:(例如求5的阶乘)

5

120

*/

扩展资料: 

return用法:

return返回一个数值的意思就是把return<表达式>后面表达式的值返回给调用他的函数。举个例子:

int sum(int i,int j)


return i+j;

printf("这个语句不会被执行,因为该子函数执行到上面的return语句就无条件结束了");


main()


int a=10,b=11,c;

c=sum(a,b);

printf("%d",c);

参考技术A 求位数的话把这个数取10的对数就行了。至于求阶乘的话,如果n不是很大可以直接来算,当n比较大的时候可以用斯特林公式来求 参考技术B 求阶乘的代码你在网上应该可以搜索得到,至于求一个数的阶乘的位数,可以用如下代码实现
#include"stdio.h"
#include"math.h"
void main()

int i,n,sum;
scanf("%d",&sum); //sum为一个数的阶乘
for(i=1;;i++)

n=pow(10,i);
if(sum<n)

printf("%d的位数是%d\n",sum,i);
break;


参考技术C #include <stdio.h>

int main()

    long number = 10;  //number是几就计算几的阶乘;
    long sumber = 1;
    for(long i = 1; i <= number; ++i)
        sumber *= i;
    printf("%ld\\n",sumber); 
    return 0;

追问

最好要自定义函数

追答/*你也太懒了*/
#include <stdio.h>

long factorial(long n);
 
int main()

    long number = 10;  //number是几就计算几的阶乘;
    long sum = factorial(number);  //调用函数;
    printf("%ld\\n",sum); 
    return 0;


long factorial(long n)  //你要的自定义函数;

    long sum = 1;
    for(long i = 1; i <= n; ++i)
        sum *= i;
    return sum;

参考技术D 望采纳
#include<stdio.h>
int fun(int num)

    int s;
    if(num==1)
    
        return 1;
    
    s=num*fun(num-1);
    return s;

int main()

    int s;
    int num;
    while(1)
    
        printf("input a number:");
        scanf("%d",&num);
        getchar();
        s=fun(num);
        printf("%d\\n",s);
     

以上是关于求一款C语言学习用的Linux平台的主要内容,如果未能解决你的问题,请参考以下文章

适合win10系统的c语言编译器

c语言如何求一个数的阶乘

c语言求一百以内的奇数和?

C语言经典实例 php版(仅练习用)

急!!![80分]求一C语言程序

求一C语言源程序