C语言编程:从键盘上输入三个字符串,要求找出其中最大者 从键盘上输入3个字符串后原样输出,并要求找出其中最大者进行输...

作者&投稿:和诸 (若有异议请与网页底部的电邮联系)

字符串比较使用strcmp函数。三个字符串比较大小,先比较字符串a和字符串b的大小,把大的字符串和字符串c比较,最后输出最大的字符串即可。

strcmp函数原型:int strcmp( char *str1 , char *str2 )

功能:比较字符串str1和strl2的大小。

结果:

若str1==str2,则返回零;

若str1>str2,则返回正数;

若str1<str2,则返回负数。

参考代码:

#include "stdio.h" 
#include "string.h" 
int main() {
char a[100],b[100],c[100],max[100];
gets(a);
gets(b);
gets(c);
if(strcmp(a,b)>0) strcpy(max,a);
else strcpy(max,b);
if(strcmp(max,c)<0) strcpy(max,c);
printf("最大字符串为:"); 
puts(max);
return 0;
}
/*
运行结果:
qwer
dfhfg
zcxvcxb
最大字符串为:zcxvcxb
*/


#include "stdio.h"
#include "conio.h"

int main()
{
char string[20];
char str[3][20];
int i;
for(i=0;i<3;i++)
gets(str[i]);
if(strcmp(str[0],str[1])>0)
strcpy(string,str[0]);
else
strcpy (string,str[1]);
if(strcmp( str[2],string)>0)
strcpy(string,str[2]);
printf("\nthe largest string is:\n%s\n",string);
getch();
return 0;
}

用c语言编写一个程序,从键盘上输入3个字符串,输出其中的最大者~

1. int strcmp( const char *str1, const char *str2 );
功能:比较字符串str1 and str2, 返回值如下:

返回值
< 0 str1 < str2
= 0 str1 == str2
> 0 str1 > str2

#include #include int main(){ char a[100], b[100], c[100]; printf("input 3 string :
"); gets(a); gets(b); gets(c); char* p = strcmp(a, b) >= 0 ? a : b; printf("greater string :%s
", strcmp(p, c) >= 0 ? p : c); return 0;}

#include
#include
main()
{
char x[128][128]={0};
char ch[4096]={0};
int t[10];
int i=0;
int w=0,p=0;
int len=0,max=0,top=0;
gets(ch);
puts(ch);//有空格输入要这个函数
while(ch[i]!='\0' && i<4096)
{
if(ch[i]==' ')
{
w++;
p=0;
i++;
continue;
} //一个空格表示一个单词分隔
else
x[w][p]=ch[i];
p++;
i++;
}
//w 就是单词的个数了
for(int j=0;j<=w;j++)
{
len=strlen(x[j]);
if(max<len)
{
max=len;
top=j;
}
}
i=0;
for( j=0;j<=w;j++)
{
len=strlen(x[j]);
if(max==len)
{
t[i]=j;
i++;
}
}
for(w=0;w<i;w++)
{
printf("%s 最长
",x[t[w]]);
}

}
希望对你有帮助!网上有几个答案不太完美,因为如果我输入 hello world hi 的话,只输出hello而不输出world,其实稍加改动在下边再加一个循环就可以解决了

从键盘输入三个字符串,然后按从大到小的顺序输出这三个字符串
答:include "stdio.h"include "string.h"define N 3 main(){ char str[N][128], *s[N];char *p=NULL;int i,k,j;printf("请输入3字符串\n");for (i=0;i<N;i++){ scanf("%s",&str[i]);s[i]=str[i];} for (i=0;i<N-1;i++){ k=i;for(j=i+1;j<N;j++)if(...

C语言问题 输入三个字符串,按由小到大的顺序输出
答:1、修改代码 char temp[100];temp==q1;q1==q2;q2==temp;==换成=,=才是赋值运算符。2、换用其他方法 可以使用三个数组,或者是一个二维数组来存储字符串,同时定义一个指针数组,指向三个字符串的首地址,然后对指针数组进行排序。

c++编程,从键盘输入三个字符,在屏幕上分三行输出
答:include <stdio.h>void main(){ char a,b,c; scanf("%c %c %c", &a, &b, &c); printf("%c\n",a); printf("%c\n",b); printf("%c\n",b);}input A x y output A x y

编写一个程序实现如下功能:从键盘输入三个大写英文字母,把它们转换成...
答:include<stdio.h> main(){ char x,y,z;scanf("%c,%c,%c",&x,&y,&z);x+=32;y+=32;z+=32;printf("%c,%c,%c",x,y,z);}

输入三个字符,输出其中ascll最小的一个 c语言利用getchar
答:思路:定义三个字符变量a,b,c;键盘输入赋值,先比较a和b的大小把小值和c比较,最后输出最小值。参考代码:include<stdio.h>int main(){char a,b,c;a=getchar(); b=getchar(); c=getchar(); a=a<b?a:b;a=a<c?a:c;putchar(a); return 0;}/*运行结果:dgcc*/ ...

通过键盘输入3个字符,并输出这个字符和每个字符的ASCII码值?_百度知...
答:include <stdio.h> include <stdlib.h> int main(){ char a,b,c;scanf("%c %c %c",&a,&b,&c);printf("%c %d\n",a,a);printf("%c %d\n",b,b);printf("%c %d\n",c,c);return 0;}

(c语言)输入三个字符后,按各字符的ASCII码从小到大的顺序输出这三个字符...
答:#include"stdio.h"charmax(chara,charb){ if(a>b){ returna;} else { returnb;} } charmin(chara,charb){ if(a<b){ returna;} else { returnb;} } intmain(intargc,charconst*argv[]){ charc0,c1,c2,c3,c4,c5,c6,c7;printf("Pleaseinput...

C语言实验题,要代码。从键盘随机输入3个字母,要求按ACSII从小到大的顺 ...
答:include<stdio.h>int main(){ char a, b, c, tmp; scanf("%c %c %c", &a, &b, &c);//---if(!((a >= 'a' && a <= 'z') || (a >= 'A' && a <= 'Z'))) { printf("ERROR!\n"); return 1; }if(!((b >= 'a' && b <= 'z') || (...

c语言。输入三个字符,输出三个字符对应ascii码的大小,从大到小排
答:char a[3];int i,j;scanf("%c %c %c",&a[0],&a[1],&a[2]);for(i=0;i<3;i++){ for(j=i;j<3;j++){ if (a[i]<a[j]){ char temp=a[i];a[i]=a[j];a[j]=temp;} } } for(i=0;i<3;i++)printf("%d ",a[i]);} 用冒泡法来做。如果你只有三个输入...

C语言 用指针方法 输入3个字符串 按由小到大顺序输出
答:代码如下:include <stdio.h>#include <string.h>int main(){ char buf[3][100]; char *p[3] = {buf[0],buf[1], buf[2]}; int i,j; for(i = 0; i < 3; i ++) scanf("%s", p[i]);//输入三个字符串。 for(i = 0; i < 2; i ++)//排序。