说明文件加qq发给你。留下qq号码。课堂小作业。不难。
要钱的自觉走远。自重。 悬赏100分,做好以后再追加100分。
c语言制作7选6简单彩票程序
答案:4 悬赏:40 手机版
解决时间 2021-03-01 09:35
- 提问者网友:杀手的诗
- 2021-02-28 12:43
最佳答案
- 五星知识达人网友:三千妖杀
- 2021-02-28 14:06
就是用一个数组,随即顺序产生7个数,然后存进数组,存的时候要判断是否和前面有的数重复。我为了验证逻辑是否正确就让他每产生一个数不管重复与否都会输出一次,并且标明是第几次产生这个位置上的数。但是我不知道应该在哪给计次数的n赋初值,现在程序输出是没有问题,但是偶尔n的次数会错,请老手指教。
#include <time.h>
#include <stdlib.h>
void main() {
int a[7];
int i, j, sum, n = 1; //n用来表示每个数产生了几次.
srand((unsigned)time(NULL));
a[0] = ((rand() % 33) + 1);
printf("第1个数第1次是%d\n",a[0]);
for(i = 0; i < 6; i++) {
a[i+1] = ((rand() % 33) + 1);
printf("第%d个数第%d次是%d\n",(i + 2),n,a[i+1]);
for(j = 0; j <= i; j++) {
if(a[i + 1] == a[j]) {
i--;
n++; //和前面的数重复,重新产生本数,n+1.
continue; //跳出本层循环
}
if (i == j) { //如果比到a[0]都不重复,n等于1. 等待下次计数。
n = 1;
}
}
}
//排序前的数。
printf("\n");
for(j = 0; j < 6;j++) {
for(i = 0; i < (6 - j);i++) {
if(a[i] > a[i+1]) {
sum = a[i+1];
a[i+1] = a[i];
a[i] = sum;
}
}
}
printf("\n本次彩票的中奖号码是:\n");
for(i = 0; i < 7;i++) {
printf("%d ",a[i]);
}
}
#include <time.h>
#include <stdlib.h>
void main() {
int a[7];
int i, j, sum, n = 1; //n用来表示每个数产生了几次.
srand((unsigned)time(NULL));
a[0] = ((rand() % 33) + 1);
printf("第1个数第1次是%d\n",a[0]);
for(i = 0; i < 6; i++) {
a[i+1] = ((rand() % 33) + 1);
printf("第%d个数第%d次是%d\n",(i + 2),n,a[i+1]);
for(j = 0; j <= i; j++) {
if(a[i + 1] == a[j]) {
i--;
n++; //和前面的数重复,重新产生本数,n+1.
continue; //跳出本层循环
}
if (i == j) { //如果比到a[0]都不重复,n等于1. 等待下次计数。
n = 1;
}
}
}
//排序前的数。
printf("\n");
for(j = 0; j < 6;j++) {
for(i = 0; i < (6 - j);i++) {
if(a[i] > a[i+1]) {
sum = a[i+1];
a[i+1] = a[i];
a[i] = sum;
}
}
}
printf("\n本次彩票的中奖号码是:\n");
for(i = 0; i < 7;i++) {
printf("%d ",a[i]);
}
}
全部回答
- 1楼网友:罪歌
- 2021-02-28 16:12
379924384 我可以先试试,但是不一定能做好。
- 2楼网友:走死在岁月里
- 2021-02-28 15:24
#include#include#definen10//定义最多选手个数typedefstructxuanshou{charbianhao[20];//选手编号charname[20];//选手姓名floata[10];//评委打分floatgrade;//平均分,嫌麻烦可以直接放到数组里去}xu;xuxuanshou[n];//选手数组xutemp;//用来调换voidinit()//输入函数{inti,j;floatsum,max,min;charc;for(i=0;ixuanshou[i].a[j])min=xuanshou[i].a[j];if(j==9)xuanshou[i].grade=(sum-max-min)/8;}}temp.grade=xuanshou[0].grade;}voidpaixu()//对数组进行从大到小的排序{inti,j,k;for(i=0;i
- 3楼网友:不如潦草
- 2021-02-28 15:13
你在找免费苦力呢? 这个程序写出来几百行,不说写,照着程序抄,都得几个小时。
自己做吧
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯