从键盘输入10个字符串存放到一个二维数组中,求出其中最大者并输出

时间:2024-03-14 10:56:41

从键盘输入10个字符串存放到一个二维数组中,求出其中最大者并输出

算法设计如下:

1.定义一个二维数组a[10][80]用于存放输入的10个字符串

2.定义一个维字符数组max[80]用于存放目前的最大字符串

3.将二维数组a的第0行中的字符串复制到max中

4.若二维数组a的第i行的字符串大于字符数组max中的字符串,则将前者复制到max数组中

5.循环执行4,直到a中的所有字符串都比较完

#include<stdio.h>

#include<string.h>

main()

{

char a[10][80],max[80];

int i;

puts("请输入10个字符串:");

for(i=0;i<10;i++) //依次循环输入10个字符串

gets(a[i]);

strcpy(max,a[0]); //字符串中不能用max=a[0],strcpy函数相当于给max赋值,意义上相当于max=a[0]

for(i=1;i<10;i++)

{ //剩下的9个字符串循环和max比较

if(strcmp(a[i],max)>0) //strcpy函数用于比较两个字符串的大小(比较ASCII码)若前者大于后者,则>0,反之<0,相等则=0

strcpy(max,a[i]); //strcpy相当于把a[i]的值赋给max

}

puts("10个字符串中最大的是:");

puts(max);

}

从键盘输入10个字符串存放到一个二维数组中,求出其中最大者并输出