帮我看一看问题在哪吧

#include<stdio.h>
#include<string.h>
void main()
{
char a[80],min,k;
int i;
puts("请输入n个字符串:\n");
for(i=0;i<10;i++)
scanf("%s",a[i]);
min=a[0];
for(i=1;i<10;i++)
{
k=strcmp(a[i],min);
if(k<0)
min=a[i];
puts("n个字符串最小的是:\n");
putchar(min);
}
}

修改如下,供参考:

#include<stdio.h>
#include<string.h>
void main()
{
    char a[10][80], * min, k; //修改
    int i, n;                //修改 
    printf("请输入字符串个数:"); //修改
    scanf("%d", &n);             //修改
    printf("请输入%d个字符串:\n", n);//修改
    for (i = 0; i < n; i++)
        scanf("%s", a[i]);
    min = a[0];
    for (i = 1; i < n; i++)
    {
        k = strcmp(a[i], min);
        if (k < 0)
            min = a[i];
        //puts("n个字符串最小的是:\n");
        //putchar(min);
    }
    printf("%d个字符串最小的是:", n);  //修改
    puts(min);                         //修改
}

a[80]只是一个字符串
scanf("%s",a[i]); 改成 scanf("%s",a);


如果输入是字符的话,改成 scanf("%c",a[i]); 或者 a[i] = getchar();

可以参考这篇博客:http://c.biancheng.net/view/1796.html