C语言初阶测评

选择一

int i = 10; 
int j = 20;
int k = 3;
k *= i + j;

上面k运行的结果是

因为k*=是一个赋值操作符

它的优先级比较低 所以要先算i+j

所以说k的值是90

选择二 

假定 x 和 y 为 double 型,则执行 x=2; y=x+3/2; 后y的值为()
A 3.500000
B 3
C 2.000000
D 3.000000

这里要注意的是3/2因为是两个整数相除

所以说得到的值是1

所以说最终的值会是3.000000

选择三

若有定义语句:int year=1009,*p=&year;以下不能使变量 year 中的值增至 1010 的语句是()
A *p+=1;
B (*p)++;
C ++(*p)
D *p++
首先A 显然可以
B显然可以
C显然可以

D中 两个单目操作符进行运算 按照先右后左的顺序使用

首先是解引用p的值 然后将指针p的位置加加

总结: 主要是操作符的先后顺序这一块的知识比较薄弱

编程题一

这里提供一个求最小公倍数的另一种解法

思路分析

对于两个整数m n
它们的最小公倍数k肯定有
k / m ==i
k / n == j
那么我们就假设这个i的值为1
则有k=im
如果此时的k模上n刚好等于0 那么这个k就是最小公倍数
那么此时的最大公因数即为 (m*n)/k

这道题的主要是一个技巧问题

记住这个求最大公倍数数的技巧就可以

编程题二

倒置字符串 将一句话的单词进行倒置,标点不倒置。比如 I like Beijing. ---- Beijing. like I

题目分析

对于这道题目我们可以首先逆序整个字符串 然后再通过空格和‘\0’对于其中的每个单词进行逆序

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值