选班长的C语言实现

// 演示选班长,定义一个数组,存储所有人,
// 程序开始时,每个人都有可能是班长,所以每个人的值都为1,
// 一旦这个人被出局,则值变为0,

int select() {

 int i=0;    // 数组的下标
 int loop = 0;   // 出局的循环
 int loopSize = 2; // 出列的数字
 int len = 5;  // 数组的长度
 int men[5];   // 要选班长的数组
 int out = 0;  // 出局人数
 int start = 2;  // 从第几个人开始数

 for (i = 0; i<len; i++) {
  men[i] = i+1;
 }
 
 i = start - 1;
 while (out<len-1) {
  if (men[i] != 0) {
   loop ++;
  }

  if (loop == (loopSize)) {
   men[i] = 0;
   printf("现在出局的人是:men[%d]: %d/n", i, men[i]);
   out ++;
   printf("现在已经淘汰了%d个人/n", out);
   loop = 0;
  }
  i ++;  

  // 当i计数器超出数组的边界时,i重新开始计数
  if (i == len) {   
   i = 0;
  }
 }

 for (i=0; i<len; i++) {
  if (men[i] != 0) {
   printf("班长是:men[%d]: %d/n", i, men[i]);
   return men[i];
  }
 }
}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
优秀班委举系统 using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Windows.Forms; namespace 优秀班委举 { public partial class Form1 : Form { private ListBox listBox; public Form1() { InitializeComponent(); } public Form1(ListBox listBox) { InitializeComponent(); this.listBox = listBox; } private void button1_Click(object sender, EventArgs e) { if (listBox1.Items.Count > 0) { if (listBox1.SelectedItem == null) { MessageBox.Show("请先择一个对象!"); } else { //获取左边listBox1中中的内容 string cont = listBox1.SelectedItem.ToString(); //左边listBox1中删除中的内容 listBox1.Items.Remove(cont); //把获得的内容加入到右边的listBox2中 listBox2.Items.Add(cont); } } } private void button2_Click(object sender, EventArgs e) { if (listBox2.Items.Count > 0) { if (listBox2.SelectedItem == null) { MessageBox.Show("请先择一个对象!"); } else { //获取右边listBox2中中的内容 string cont = listBox2.SelectedItem.ToString(); //右边listBox2中删除中的内容 listBox2.Items.Remove(cont); //把获得的内容加入到左边的listBox1中 listBox1.Items.Add(cont); } } } //退出 private void button5_Click(object sender, EventArgs e) { Application.Exit(); } //显示结果 private void button4_Click(object sender, EventArgs e) { //传递listBox2到Form2窗口中 Form2 form2 = new Form2(listBox2); form2.Show(); } //修改名单 private void button3_Click(object sender, EventArgs e) { if (listBox2.SelectedItem == null) { MessageBox.Show("请先择一个对象!"); } else { string cont = listBox2.SelectedItem.ToString(); int index = listBox2.SelectedIndex; Form3 form3 = new Form3(cont, index, listBox2); form3.Show(); this.Hide(); } } //加载窗口 private void Form1_Load(object sender, EventArgs e) { if (listBox != null) { foreach (string str in listBox.Items) { listBox2.Items.Add(str); } } } } }

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值