黑马程序员技术交流社区

标题: 不知道怎么回事,程序运行就出现错误,麻烦大神们帮忙... [打印本页]

作者: 朱儿008    时间: 2016-10-5 19:02
标题: 不知道怎么回事,程序运行就出现错误,麻烦大神们帮忙...
本帖最后由 朱儿008 于 2016-10-5 19:05 编辑

输入6个字符串(仅含字母和数字),字符串排序并输出。

不知道怎么回事,程序运行就出现错误,麻烦大神们帮忙看看,谢谢~~


#include <stdio.h>
#include <string.h>
int main()
{
    //先定义1个二维字符串数组,利用for循环将用户输入的6个字符串存储到数组中
    char str [6][4] = {"0"};
    for (int i = 0; i < 6; i++) {
        printf ("请输入第%d个字符串:\n",i+1);
        rewind (stdin);
        scanf("%s",str);
    }
    //通过冒泡排序对6个字符串进行比较
    for (int i = 0; i < 6; i++)
    {
        for (int j = 0; j < 5 - i; j++)
        {
            if (strcmp(str[j],str[j+1]) > 0)
                {
                    char strTemp[4] = "0";
                    strcpy(strTemp,str[j]);
                    strcpy(str[j],str[j+1]);
                    strcpy(str[j+1],strTemp);
                }
        }
    }
    printf ("排序后为\n");
    for (int i = 0; i < 6; i++) {
        printf ("%s\n",str);
    }
    return 0;
}

Snip20161005_2.png (123.32 KB, 下载次数: 41)

Snip20161005_2.png

作者: Malizhi    时间: 2016-10-6 20:06
等晚上回去有时间看看
作者: 邱中林    时间: 2016-10-6 22:47
额,看瞢了
作者: hbpiaoyi    时间: 2016-10-7 07:09
scanf("%s",str); 改为 scanf("%s", str[i]);
printf ("%s\n",str); 改为 printf("%s\n", str[i]);
作者: barny    时间: 2016-10-7 10:48
建议自己先努力排错.然后在记住自己犯的错误




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2