谁帮我解决两道C语言的题。一定要正确的。并且把字搞清楚一点。_百度知 ...
发布网友
发布时间:2024-04-27 01:33
我来回答
共4个回答
热心网友
时间:2024-04-27 22:37
第一题比较容易,就是穷举个个数,取出各个位计算,比较一下就行了
第二题
#include <stdio.h>
int test(int a,int b,int c) //test三个参数,分别为张三,李四,王五
{
if((!b==a)&&(!c==b))//张三说李四在说谎,李四说王五在说谎,是互斥的关系
{
if(c==1)//符合第一个条件后,假设王五说真话
{
if(a==0 && b==0) // 则张三和李四都在说谎
{
return 1;//符合条件
}else{
return 0; //不符合条件
}
}else{ //符合第一个条件后,假设王五说假话
if((a||b)==1){ // 则张三和李四至少有一个说真话(都在说谎的非运算)
return 1;//符合条件
}else{
return 0; //不符合条件
}
}
}else{
return 0; //不符合条件
}
}
int main(int argc, char *argv[])
{
int result[8];
int i;
/* 三个人是否说谎话的8种组合 */
result[0] = test(1,1,1);//test三个参数,分别为张三,李四,王五,1表示真话,0表示假话
result[1] = test(1,1,0);
result[2] = test(1,0,1);
result[3] = test(1,0,0);
result[4] = test(0,1,1);
result[5] = test(0,1,0);
result[6] = test(0,0,1);
result[7] = test(0,0,0);
for( i=0;i<8;i++){
printf("result[%d]=%d\n",i,result[i]);
}
system("PAUSE");
return 0;
}
根据运算结果result[5]为1,所以,张三和王五说假话,李四说真话。
热心网友
时间:2024-04-27 22:36
不懂
热心网友
时间:2024-04-27 22:32
以前写过,不过忘了。。。。。。。
热心网友
时间:2024-04-27 22:35
第一题:407=4的立方+0的立方+7的立方=4*100 + 0 * 10 + 7*1
第二题:暂时不清楚