69,373
社区成员
发帖
与我相关
我的任务
分享
#include<stdio.h>
int main()
{
char c[11];
int a[10],len;
int i,j,max;
while(scanf("%s",c)!=EOF)
{
while(c[i]!='\0')
{
a[i]=c[i];
i++;
}
max=a[0];
len = strlen(c);
for(j=1;j<len;j++)
{
if(a[0]<a[j])
{
a[0]=a[j];
}
}
printf("%c",a[0]);
}
return 0;
}
#include <stdio.h>
#include "string.h"
int main()
{
char c[11]={0};
int a[10]={0},len=0;
int i=0,j=0,max=0;
while(fgets(c,11,stdin)!=EOF)
{
while(c[i]!='\0')
{
a[i]=c[i];
i++;
}
max=a[0];
len=strlen(c);
for(j=1;j<len;j++)
{
if(a[0]<a[j])
{
a[0]=a[j];
}
}
printf("%c",a[0]);
}
return 0;
}
[/quote]
上面准备用红字体的。。点错了
#include <stdio.h>
#include "string.h"
int main()
{
char c[11]={0};
int a[10]={0},len=0;
int i=0,j=0,max=0;
while(fgets(c,11,stdin)!=EOF)
{
while(c[i]!='\0')
{
a[i]=c[i];
i++;
}
max=a[0];
len=strlen(c);
for(j=1;j<len;j++)
{
if(a[0]<a[j])
{
a[0]=a[j];
}
}
printf("%c",a[0]);
}
return 0;
}
[/quote]
恩 题目是“多组输入,每组一行,每行一个字符串(由可打印字符组成,长度不超过10).” 用fgets输入的话 如果输入超过了10个字符 会自动进行下一次的判断大小 也就是会输出两个最大的ascII码字符 还是有问题啊 #include <stdio.h>
#include "string.h"
int main()
{
char c[11]={0};
int a[10]={0},len=0;
int i=0,j=0,max=0;
while(fgets(c,11,stdin)!=EOF)
{
while(c[i]!='\0')
{
a[i]=c[i];
i++;
}
max=a[0];
len=strlen(c);
for(j=1;j<len;j++)
{
if(a[0]<a[j])
{
a[0]=a[j];
}
}
printf("%c",a[0]);
}
return 0;
}
#include <stdio.h>
#include "string.h"
int main()
{
char c[11]={0};
int a[10]={0},len=0;
int i=0,j=0,max=0;
while(fgets(c,11,stdin)!=EOF)
{
while(c[i]!='\0')
{
a[i]=c[i];
i++;
}
max=a[0];
len=strlen(c);
for(j=1;j<len;j++)
{
if(a[0]<a[j])
{
a[0]=a[j];
}
}
printf("%c",a[0]);
}
return 0;
}
while(scanf("%s",c)!=EOF)
{ while(c[i]!='\0')
改成:
while(fgets(buf,11,stdin)))
{ while(c[i]!='\n')
//注意这里会判断你的输入是否超过c的长度,所以用_s这批函数安全。
while(gets_s(c, sizeof(c)))
{
len = (int)strlen(c);
max=c[0];
for(j=1;j<len;j++)
{
if(max < c[j])
{
max = c[j];
}
}
printf("%s, max = %c\n",c, max);
}
i没有初始化。