关于C语言 找出十个字符串的最大值
发布网友
发布时间:2022-05-23 16:57
我来回答
共2个回答
热心网友
时间:2023-11-21 10:17
通过你的代码和要求,简单写一下,以后写代码一定要注意编译规范
/*方法一*/
#include <stdio.h>
#include <string.h>
int main()
{
char *s[10];
int i = 0;
printf("下面请根据提示输入10个字符串,最后将输入最大的一个. ");
for (i = 0; i < 10; ++i )
{
s[i] = (char *)malloc(sizeof(char) * 100);
printf("\n请输入第%d个字符串: ", i + 1);
scanf("%s",s[i]);
}
int max_index = 0;
for ( i = 1; i < 10; ++i )
{
if ( strcmp(s[i], s[max_index]) > 0 )
{
max_index = i;
}
}
printf("\n最大的字符串是第%d个: ", max_index + 1);
puts(s[max_index]);
for ( i = 0; i < 10; ++i )
{
free(s[i]);
}
system("pause");
return 0;
}
/*方法二*/
#include <stdio.h>
#include <string.h>
int main()
{
char *s[10];
int i = 0;
printf("下面请根据提示输入10个字符串,最后将输入最大的一个. ");
for (i = 0; i < 10; ++i )
{
s[i] = (char *)malloc(sizeof(char) * 100);
printf("\n请输入第%d个字符串: ", i + 1);
scanf("%s",s[i]);
}
char max_str[100];
int max_index = 0;
strncpy(max_str, s[0], 99);
for ( i = 1; i < 10; ++i )
{
if ( strcmp(s[i], max_str) > 0 )
{
strncpy(max_str, s[i], 99);
max_index = i;
}
}
printf("\n最大的字符串是第%d个: ", max_index + 1);
puts(max_str);
for ( i = 0; i < 10; ++i )
{
free(s[i]);
}
system("pause");
return 0;
}
热心网友
时间:2023-11-21 10:17
main()
{
char s[10],max;
int i,j;
for(i=0;i<10;i++)
scanf("%s",&s[i]);
for(i=0;i<9;i++)
for(j=i+1;j<10;j++)
if(s[i]<s[j])
{
max=s[j];
printf(("%s"\n,max);
}
}