C语言问题 怎么回事

来源:百度知道 编辑:UC知道 时间:2024/05/16 09:00:26
#include <stdio.h>

char sear(char name,char d[2][10])
{
int j;
for(j=0;d[0][j]!=name;j++);
printf("%c\n",d[1][j]);
}

char array(char f[2][10])
{
int i,j;
char t,s;
for(i=1;i<=9;i++)
{
for(j=0;j<10;j++)
{
if(f[0][j]>f[0][j+1])
{
f[0][j]=t;f[0][j]=f[0][j+1];f[0][j+1]=t;
f[1][j]=s;f[1][j]=f[1][j+1];f[1][j+1]=s;
}
}
}
for(i=0;i<2;i++)
{
for(j=0;j<10;j++)
printf("%c",f[i][j]);
printf("\n");
}
}

main()
{
char name,c[2][10];
int i,j;
for(j=0;j<10;j++)
{
for(i=0;i<2;i++)
{
if(i==0)
{
printf("NO.:\n");
scanf("%c",c[i][j]);
}
else
{
printf("NAME:\n");
scanf("%c",c[i][j]);
}

VC6.0编译能通过?
你的VC没问题吧?我编译没通过!

问题在scanf("%c",c[i][j]);应该是scanf("%c",&c[i][j]);下面有好多这样的错误!!

scanf("%c",&c[i][j]);

感觉程序还有很多问题:

1.输入字符串用gets(str);或者scanf("%s",&str);
2.输入整数用scanf("%d",&n);
3.char array(char f[2][10])
{
int i,j;
char t,s;
for(i=1;i<=9;i++)
{
for(j=0;j<10;j++)
{
if(f[0][j]>f[0][j+1])
{
f[0][j]=t;f[0][j]=f[0][j+1];f[0][j+1]=t; //t没有初始化
/*
交换要这样写:
t=f[0][j];f[0][j]=f[0][j+1];f[0][j+1]=t;
*/
f[1][j]=s;f[1][j]=f[1][j+1];f[1][j+1]=s; //s没有初始化
/*
交换要这样写:
s=f[1][j];f[1][j]=f[1][j+1];f[1][j+1]=s;
*/
}
}
}
for(i=0;i<2;i++)
{
for(j=0;j<10;j++)
printf("%c",f[i][j]);
printf("\n");
}
}

程序中的scanf函数调用的格式不正确,例如:
scanf("%c",c[i][j]);
应改为
scanf("%c"