【C语言经典100题】(12月25日-day12)

cr:经典

利用条件运算符的嵌套来完成此题:

学习成绩>=90分的同学用A表示,60-89分之间的用B表示,60分以下的用C表示。

程序分析:(a>b)?a:b这是条件运算符的基本例子。

思路: 

这道题和之前做过的小林的一道题很类似。但是方法却不太相同——使用条件运算符,也就是问号语句。

使用嵌套的话,第一层判断A等级,不符合则再用一个判断;第二层判断B等级,不符合则是C等级。

代码:

#include<stdio.h>
main()
{
	int score;
	char grade;
	printf("输入分数:");
	scanf_s("%d", &score);
	grade = score >= 90 ? 'A' : score >= 60 && score <= 89 ? 'B' :'C';
	printf("\n成绩等级为:%c\n", grade);
}

对方:

反思: 

对条件运算符还是不敏感,看到题目要求的时候没有立即反应过来。

收获: 

条件运算符的第二三项是一个类似于赋值的部分,但是在中间写不了变量赋值。只能在前面放一个变量来接收结果,或者直接放在输出语句后面变量的位置上。


cr:小林

例12

在全系1000个学生中,征集慈善捐款。当总数达到10万元时就结束,统计此时的捐款人数,以及平均每人捐款的数目。 

思路: 

看完题目:疑点重重;看完对方:直呼有钱!对方每个人捐赠都是万元起步,按这个题目要求,就算全校学生都捐款,每个人也需要捐100元才能结束捐款,简直不可思议。

代码: 

#include<stdio.h>
main()
{
	int sum = 100000, money, num = 0, i, total = 0;
	for (i = 1, money = 0; i < 1001; i++) {
		printf("第%d位学生捐款数额:", i);
		scanf_s("%d", &money);
		num++;
		total += money;
		printf("目前已募集金额:%d元\n\n", total);
		if (total >= sum) break;
	}
	printf("\n金额已够,感谢大家支持!\n");
}

对方:

反思&收获: 

复习了一下break跳出,以及复合运算符。 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

夜東

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值