我必须写一个程序。
我获得无限数量的用户输入和3变量f_value , s_value, t_value
逻辑是:
如果输入与f_value
不符,则必须与f_value
相同的s_value and t_value
存储。
变量应具有不同的输入值如果值相同则必须跳过。 e.g。
Input Value:
100
100
102
102
102
102
102
105
105
然后输出
f_value 105
s_value 102
t_value 100
这应该没有数组
我试试这段代码:
#include <stdio.h>
int main()
{
int number=0 f_value=0, s_value = 0, t_value = 0;
while (1) {
printf("-> ");
scanf("%d", &number)
if(t_value != s_value){
t_value = s_value;
}
if(s_value != f_value){
s_value = f_value;
}
if (number != f_value){
f_value = number;
}
printf("f_value %d\n",f_value);
printf("s_value %d\n",s_value);
printf("t_value %d\n",t_value);
}
return 0;
}
但没有获得欲望输出。
谢谢你
答案 0 :(得分:1)
根据您的描述F,S和T将始终具有相同的值。
最初他们都是零。第一个输入是100,它不匹配F,所以我们使F = 100。 &#34; S和T&#34;相同;所以结果是一样的; S = T = 100。
下一个输入是100,匹配,所以没有变化。
下一个输入是102,它与F不匹配,所以我们设置F = 102。再次&#34;同样适用于S和T&#34;所以S = T = 102。因此,我们可以从运行前三个输入中看出,无论输入什么,根据您的描述F = S = T始终。
那么你究竟如何得到F,S和T具有不同值的建议输出?
答案 1 :(得分:0)
第三个 if 语句应该是第一个。