注册 登录
编程论坛 C++教室

新手求助,这个程序哪里错了,怎么改?

m1020coca 发布于 2010-05-11 22:15, 318 次点击
图书馆书名排序:
#include<stdio.h>
#include<string.h>
void main()
{
    char c[100];
    int i,j,m;
    for (i=0;i<15;i++)
    {
        printf("请输入第 %d 本书:\n",i+1);
        scanf("%s",c[i]);
    }
    for (i=0;i<15;i++)
    {
        for (j=0;j<14-i;j++)
        {
        m=strcmp(c[j],c[j+1]);
    if (m>0)
        c[i]=c[i+1];
        }
        printf("\n");
        printf("%s",c[i]);
    }
}
3 回复
#2
yc25757572010-05-11 22:19
#include<stdio.h>
#include<string.h>
void main()
{
    char c[100];
    int i,j;
    for (i=0;i<15;i++)
    {
        printf("请输入第 %d 本书:\n",i+1);
        scanf("%s",c[i]);
    }
    for (i=0;i<15;i++)
    {
        for (j=0;j<14-i;j++)
        {
        if (c[j] > c[j+1])//可以直接比较~~
        {
        c[i]=c[i+1];
        }
    }
        printf("\n");
        printf("%s",c[i]);
    }
}
#3
m1020coca2010-05-11 22:42
谢了,还有我想知道运行我原来的程序是出现错误
error C2664: 'strcmp' : cannot convert parameter 1 from 'char' to 'const char *'
        Conversion from integral type to pointer type requires reinterpret_cast, C-style cast or function-style cast
是什么意思
#4
yc25757572010-05-12 09:08
上面说的很清楚了,cannot convert parameter 1 from 'char' to 'const char *',不能把char转化成const char *~~
1