C新手,求解惑!很急!在线等!谢谢了! 10

困惑如下:printf("请输入两个浮点数:\n");scanf("%f%f",&a,&b);//写上这句之后,程序只能停留在输入数值的这里。没法往下运行。写上这句之后,... 困惑如下:
printf("请输入两个浮点数:\n");
scanf("%f %f", &a, &b); // 写上这句之后,程序只能停留在输入数值的这里。没法往下运行。写上这句之后,while中的值是不是就是sacnf()语句的值,也就是1! 如果删除这句,那么while的条件判断就是每次输入语句的值,也就是2. //
while(2 == scanf("%f %f", &a, &b))
{
展开
 我来答
百度网友8933f0a
2017-07-14 · TA获得超过184个赞
知道答主
回答量:247
采纳率:0%
帮助的人:51.3万
展开全部
如果你是数学专业的话,你会拿公式就那个人算出来,因为知道N,知道报的数(3),那结果肯定是确定的,所以算吧。。。。
如果计算机专业的学生,它会把问题转化成计算机模型。N个人围一圈就是一个循环链表,报数就是循环遍历链表,退出圈子就是删除节点。。。 循环结束就是链表只剩下一个元素了。了解循环链表的就应该知道,只有一个元素的判断是自己的下一个就是自己啦。

计算机描述:

struct node * get_last(int n,int x)
{
struct list l;
struct node * current,deleit; /*当前和,删除的那个*/
init_list(&l); /*初始化*/

current = l.first; /指向第一个*/

/*结束条件*/
while(list_length(l) != 1) {
/*从当前的开始数数到X就删除*/
for (i = 0;i < x;i++) {
/*一个一个数*/
current = current->next;
}
/*要从队列中删除当前的,并指定当前为下一个*/
deleit = current;
current = deleit->next;
list_delete(&l,delete);
}
return current;
}
大致的流程就是这样的
追问
我数学尼玛啊。真是处处都有煞笔!
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式