班级选人去比赛,由1至5的顺序报数,报到5的人退出,直到最后一个,小明要站在第几个才能去比赛

import java.util.Scanner;

public class T7 {
public static void main(String[] args) {
	Scanner ac=new Scanner(System.in);
	int n=ac.nextInt();
	boolean[] arr=new boolean[n];
//	将班级的人数全赋值为true
	for (int i = 0; i < arr.length; i++) {
		arr[i]=true;
	}
//	创建总人数
	int zrs=n;
//	创建计数
	int js=0;
//	创建下标变量
	int xb=0;
//	当总人数大于一进入循环
	while (zrs>1) {
//		判断当前数组元素是否等于true
		if (arr[xb]==true) {
//			等于的话计数加一
			js++;
//			当计数等于五的时候,计数清零,数组元素变为false,总人数减一
			if (js==5) {
				js=0;
				arr[xb]=false;
				zrs--;
			}
		}
		xb++;//每报一次书xb加一
		if (xb==n) {//当下标大于n说明已经报完一次数了,xb清零
			xb=0;
		}
	}
	for (int i = 0; i < arr.length; i++) {
		if (arr[i]==true) {
			System.out.println(i);
		}
	}
}
}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
可以使用C语言中的结构体来实现候选人信息的存储和统计。下面是一个简单的示例代码: ```c #include <stdio.h> #include <string.h> #define MAX_NAME_LENGTH 20 #define MAX_CANDIDATES 3 // 候选人信息结构体 struct candidate { char name[MAX_NAME_LENGTH]; int votes; }; // 初始化候选人信息数组 struct candidate candidates[MAX_CANDIDATES] = { {"Candidate 1", 0}, {"Candidate 2", 0}, {"Candidate 3", 0} }; int main() { char name[MAX_NAME_LENGTH]; int i; // 循环输入候选人名字,直到输入为空字符串 while (1) { printf("Enter candidate name (or enter blank to end): "); fgets(name, MAX_NAME_LENGTH, stdin); name[strcspn(name, "\n")] = '\0'; // 去除输入字符串的换行符 if (strlen(name) == 0) { break; } // 找到输入的候选人信息,并将其得票数加一 for (i = 0; i < MAX_CANDIDATES; i++) { if (strcmp(name, candidates[i].name) == 0) { candidates[i].votes++; break; } } // 如果输入的名字不是候选人之一,则提示输入错误 if (i == MAX_CANDIDATES) { printf("Invalid candidate name!\n"); } } // 输出每个候选人的得票数 for (i = 0; i < MAX_CANDIDATES; i++) { printf("%s: %d votes\n", candidates[i].name, candidates[i].votes); } return 0; } ``` 运行结果如下: ``` Enter candidate name (or enter blank to end): Candidate 1 Enter candidate name (or enter blank to end): Candidate 2 Enter candidate name (or enter blank to end): Candidate 1 Enter candidate name (or enter blank to end): Candidate 3 Enter candidate name (or enter blank to end): Candidate 2 Enter candidate name (or enter blank to end): Candidate 1: 2 votes Candidate 2: 2 votes Candidate 3: 1 votes ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值