二维数组练习 ( 随机点名程序)详解版

发布时间:2026/10/11 2:50:50
二维数组练习 ( 随机点名程序)详解版
题目1. 班里有20名同学2. 现在需要一个程序对20名同学随机点名3. 每次随机生成2个学生的名字#includestdio.h#includestdlib.h#includetime.hintmain(){//进行输入包含20个姓名的二维数组//每个姓名的字符个数不能超过14// 因为2*1530 1个字符等于2个字节/0也算一个字符;一个姓名占一行chararr[20][30]{晓晓,可米,丽丽,彬彬,王美丽,李良,张三,王五,陈启,张启,刘琦,高敏,小麦,小张,小明,小茜,小马,小狄,小霞,小志};//输入两个姓名的下标0~19intindex10;intindex20;intguess0;printf(输入1就输出两个不同的姓名输入0就结束\n);scanf(%d,guess);//设置随机数种子srand((unsignedint)time(NULL));while(guess!0){if(guess1){do{index1rand()%20;//(19-01)0 %20 0~19index2rand()%20;}while(index1index2);//生成的随机值下标不能一样//进行输出随机的两个姓名printf(%s %s\n,arr[index1],arr[index2]);}else//输入其他大于0的数得重新输入{printf(请重新输入\n);}printf(请输入选择1继续 / 0结束\n);scanf(%d,guess);}printf(结束抽选\n);return0;}