java程序设计大赛acm_参加ACM程序设计大赛,对C的掌握程度要多深??

首先最基本的语法肯定得会的:变量的声明,赋值,初始化,循环结构(for/while/do-while),分支结构(if/switch-case),各种运算符的优先级,数组,多维数组,函数的声明,函数的递归,结构体(struct)的声明,以及访问里面的成员。

然后是一些库函数(stdio.h stdlib.h string.h主要是这三个吧),不要求知道内部怎么实现(当然知道更好),但是要知道传入什么参数,得到的返回值是什么含义,以及这个函数的复杂度。

如果只是对C语言的要求,到这就够了。理论上下到C语言上机,上到World Finals,这些语法上的东西都是足够用的。难的都是算法上。

但是由于C语言的库太简单了,一般选手们都会用C++。

在上面C语言的基础上,你要知道这些C++的算法库(algorithm)的一些常用算法模板函数(min/max/sort/binary_search),字符串库(string)以及各种容器库(vector, set, map, queue, stack, bitset)的各种操作...

其实如果你打算以后走java工程师这一条路,你完全可以不考虑C、C++,直接当java选手。算法竞赛界的java牛人也是不少的。而对于java所需要的程度,基本上和C差不多。在算法竞赛里面就多了一个大数类(BigInteger和BigDecimal)

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值