Vanhogh 2022-07-25 10:59 采纳率: 100%
浏览 67
已结题

关于#c++#的问题:打印出数组x内随机内容

想做一个随机的抽奖程序,没有学过随机数相关,c++是自学的比较生,请问这种情况怎么解决?求帮忙!软件:Dev-c++ 5.11 编译器:TDM-GCC 4.9.2 64-bit Release
//
//
//
#include <iostream>
#include <cstdlib> // Header file needed to use srand and rand
#include <ctime> // Header file needed to use time
using namespace std;
int a=0,b=0,c=0;
a = rand() % 6;
b = rand() % 6;

c = rand() % 6;

int main()
{
    if(b==a){
        while(b!=a) b = rand() % 6;
    }
    if(c==a||c==b){
        while(c!=a&&c!=b) c = rand() % 6;
    }
    char x[5]={'纥','风Vanhogh','阿七','ME','鸽子'}
    
    for(int i=1;i++;i<6){
        if(x[i]==x[a]) printf("无偿摇人结果%c\n",x[a]);
        if(x[i]==x[b]) printf("点图摇人结果%c\n",x[b]);
        if(x[i]==x[c]) printf("出设摇人结果%c\n",x[c]);
    } 
    return 0;
}

[Warning] multi-character character constant [-Wmultichar]

[Warning] character constant too long for its type
[Error] 'a' does not name a type
[Error] 'b' does not name a type
[Error] 'c' does not name a type

在网上找了好多随机数生成、随机数赋值的帖子,中和调整了很多次但程序还是报错
程序可以正常运行,打印出数组x内对应内容,并且每次运行程序结果不同
  • 写回答

4条回答 默认 最新

  • 快乐鹦鹉 2022-07-25 11:01
    关注

    char x[5]={'纥','风Vanhogh','阿七','ME','鸽子'}只有5个元素
    但你下面的循环不对
    求余6得到的数值范围是0-5,而x数组的下标范围是0-4啊。如果x只有5个元素,那求余6都要改为求余5才行
    另外最后的for循环写错了
    for(int i=1;i++;i<6)
    改为
    for(int i=0;i<5;i++)
    另外字符串要用双引号
    char a[5]要改为char *a[5]

    #include <iostream>
    #include <math.h>
    #include <time.h>
    using namespace std;
    #define N  5
     
    int main()
    {
        srand(time(0));
        int a=0,b=0,c=0;
        a = rand() % N;
        b = rand() % N;
        c = rand() % N;
        if(b==a){
            while(b!=a) b = rand() % N;
        }
        if(c==a||c==b){
            while(c!=a&&c!=b) c = rand() % N;
        }
        char* x[N]={"纥","风Vanhogh","阿七","ME","鸽子"};
        
        for(int i=0;i<5;i++){
            if(x[i]==x[a]) printf("无偿摇人结果%s\n",x[a]);
            if(x[i]==x[b]) printf("点图摇人结果%s\n",x[b]);
            if(x[i]==x[c]) printf("出设摇人结果%s\n",x[c]);
        } 
        return 0;
    }
    
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论 编辑记录
查看更多回答(3条)

报告相同问题?

问题事件

  • 系统已结题 8月2日
  • 已采纳回答 7月25日
  • 创建了问题 7月25日

悬赏问题

  • ¥15 如何构建全国统一的物流管理平台?
  • ¥100 ijkplayer使用AndroidStudio/CMake编译,如何支持 rtsp 直播流?
  • ¥20 和学习数据的传参方式,选择正确的传参方式有关
  • ¥15 这是网络安全里面的poem code
  • ¥15 用js遍历数据并对非空元素添加css样式
  • ¥15 使用autodl云训练,希望有直接运行的代码(关键词-数据集)
  • ¥50 python写segy数据出错
  • ¥20 关于线性结构的问题:希望能从头到尾完整地帮我改一下,困扰我很久了
  • ¥30 3D多模态医疗数据集-视觉问答
  • ¥20 设计一个二极管稳压值检测电路