A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 郭来印 中级黑马   /  2015-8-7 01:47  /  685 人查看  /  2 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

int main(int argc, const char * argv[]) {
    // 定义变量,数组
    char ch[100];
    int a=0,b=0,c=0,d=0;
    printf("请输入大写的字符串:\n");//提醒用户输入字符
    gets(ch);//接收用户输入的字符
    for (int i=0; ch[i]!='\0'; i++) {//判断输入的A,B,C,D个数
    switch (ch[i]) {
        case 'A': a++;break;
        case 'B': b++;break;
        case 'C': c++;break;
        case 'D': d++;break;}
    }
    printf("%d,%d,%d,%d\n",a,b,c,d);//输出A B C D的个数
    int a1=a,b1=b,c1=c,d1=d;
    int cishu[4]={a,b,c,d};//定义次数整形数组
    maopao(cishu,4);//调用冒泡排序函数为cishu[]数组排序
    for (int x=0; x<4; x++) {//输出排序后的次数
                printf("%d\t",cishu[x]);}
            printf("\n");
    for (int i=0; i<4; i++) {//判断A B C D排序后的位置
        switch (cishu[i]) {
            case a1:printf("A\t");break;
            case b1:printf("B\t");break;
            case c1:printf("C\t");break;   ==》此处为何报错?说是a1 b1 c1 d1不是整型常量
            case d1:printf("D\t");break;
        }}return 0;}

2 个回复

倒序浏览
case后要跟整型或者字符型常量 不能是变量,你的这四个都是整型变量而不是常量
回复 使用道具 举报
谢谢了  明白了
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马