永发信息网

pascal 用for循环来做下列几道题

答案:1  悬赏:70  手机版
解决时间 2021-04-29 01:27
  • 提问者网友:轻浮
  • 2021-04-28 04:31

有几道用FOR循环做的题:

1.选票统计:有a,b,c,d四位候选人,n位投票人,统计时,a,b,c,d以外的字符为弃权,按得票的多少打印出候选人的代号及其票数。
2.a,b,c,d四名小偷嫌疑人,只有一个是真的,
a说 我不是
b说 c是
c说 d肯定是
d说 c冤枉人
他们说的话其中3人为真一人为假,求小偷是谁?

最佳答案
  • 五星知识达人网友:神也偏爱
  • 2021-04-28 04:42

2.答案是C。代码:


program tou;
var t:char;
begin
for t:='a' to 'd' do
if ord(t<>a)+ord(t=c)+ord(t=d)+ord(t<>d)=1 then writeln(t);
readln;
end.

解释:
ord(true)=1
ord(false)=0,这样一来, ord(t<>'a')+ord(t='c')+ord(t='d')+ord(t<>'d')通过循环得到的thief的结果如果相加等于3

我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯