作业帮 > 综合 > 作业

C语言 输入五个英文单词,请找出它们之中按字典排序法排在最前的一个词.

来源:学生作业帮 编辑:百度作业网作业帮 分类:综合作业 时间:2024/04/30 10:28:16
C语言 输入五个英文单词,请找出它们之中按字典排序法排在最前的一个词.
#include
#include
void main()
{ char a[5][30],b[30];
int i,j,k;
for(i=0;i
C语言 输入五个英文单词,请找出它们之中按字典排序法排在最前的一个词.
是,数组b[30]的首地址
a[i]在这里就相当于一维数组,因为他是一行的首地址,而不是个元素,不是a[i][0]省略后边的0,这点注意.
其实,你这两个问题是一个问题.
再问: 是因为a[1]就有4个元素 但是b[1]只有一个元素啊 这怎么把a复制到b啊,装不下啊
再答: a[1]有 30个元素 b也有30个元素 b[1]只有一个元素,b[1]是b的第二个元素 例如: a[2][3] b[3] 若使空为0则 a[0][0]=1; a[0][1]=2; a[1][0]=4; 以此类推…… [0] [1] [2] a[0] 1 2 3 a[1] 4 5 6 b[0] b[1] b[2] 0 0 0 这里的 strcpy(b,a[i]); 是把 a[i] 行,给b b 是指一行元素(b实际是一行元素的首地址),而 b[i] 是一个元素 a[i] 这里的 i 是上边例子的 2 所在的 [ ] 前边的方括号表示的是行,后边的方括号表示的是列 但是,单独写 a[i] 这样,表示的是一行,而不是某个元素。 例如,例子中的 a[0] 表示 123 a[0] 和 b 一样都是行的首地址,都能表示一行,所以能够将一行的元素复制到,b的令另一行里 不是你所说的,a[1] 给 b[1],而是a[1] 行,给 b 行,由于b是一维数组,所以只有一行。 strcpy();函数是复制字符串的,参数是地址,而不是单个元素 strcpy(b,a[i]);中 b是地址,a[i] 也是地址 你要是学指针了,就应该好理解了! 还有不懂的可以再问啊! 我尽量通俗的讲解,希望对你有帮助呀!