目录
一、题目内容
网络世界中时常会遇到这类滑稽的算命小程序,实现原理很简单,随便设计几个问题,根据玩家对每个问题的回答选择一条判断树中的路径(如下图所示),结论就是路径终点对应的那个结点。
二、输入描述
输入第一行给出两个正整数:N(≤30)为玩家做一次测试要回答的问题数量;M(≤100)为玩家人数。
随后 M 行,每行顺次给出玩家的 N 个回答。这里用
y代表“是”,用n代表“否”。
三、输出描述
对每个玩家,在一行中输出其对应的结论的编号。
四、输入输出示例
输入样例:
3 4 yny nyy nyn yyn输出样例:
3 5 6 2
五、完整C语言代码
AC代码~
#include<stdio.h>
#include<math.h>
#include<string.h>
int main(){
int M,N;
scanf("%d%d",&N,&M);
char ch = getchar();
long long int ans = pow(2,N);
char s[40];
for(int i=0;i < M;i++){
gets(s);
long long int total = 1;
long long int tmp_ans = ans;
int len = strlen(s);
for(int j=0;j<len;j++){
tmp_ans /= 2;
if(s[j] == 'n')
total += tmp_ans;
}
printf("%lld\n",total);
}
return 0;
}
本文详细介绍了如何使用C语言实现一个简单的网络算命小程序,通过输入玩家的问题回答,根据判断树得出结论。程序接收用户输入的N个问题和M个人的回答,计算并输出对应结论编号。

673

被折叠的 条评论
为什么被折叠?



