当前位置:首页 » 编程语言 » 先后输出cat三个字符C语言
扩展阅读
webinf下怎么引入js 2023-08-31 21:54:13
堡垒机怎么打开web 2023-08-31 21:54:11

先后输出cat三个字符C语言

发布时间: 2022-09-18 10:02:47

⑴ (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("Pleaseinputnum:\n");

scanf("%c%c%c",&c0,&c1,&c2);

c3=max(c0,c1);

c4=max(c3,c2);

c5=min(c0,c1);

c6=min(c5,c2);

c7=c0+c1+c2-c4-c6;

printf("%c%c%c\n",c4,c7,c6);

return0;

(1)先后输出cat三个字符C语言扩展阅读:

printf()用法:

printf()函数是格式化输出函数,一般用于向标准输出设备按规定格式输出信息。在编写程序时经常会用到此函数。函数的原型为:

int printf(const char*format,...);函数返回值为整型。若成功则返回输出的字符数,输出出错则返回负值。

printf()函数的调用格式为:

printf("<格式化字符串>",<参量表>);其中格式化字符串包括两部分内容:

一部分是正常字符,这些字符将按原样输出;

另一部分是格式化规定字符,以"%"开始,后跟一个或几个规定字符,用来确定输出内容格式。

参量表是需要输出的一系列参数,其个数必须与格式化字符串所说明的输出;参数个数一样多,各参数之间用","分开,且顺序一一对应,否则将会出现意想不到的错误。

规定符

%d十进制有符号整数

%u十进制无符号整数

%f浮点数

%s字符串

%c单个字符

%p指针的值

%e指数形式的浮点数

%x,%X无符号以十六进制表示的整数

%o无符号以八进制表示的整数

%g把输出的值按照%e或者%f类型中输出长度较小的方式输出

%p输出地址符

%lu 32位无符号整数

%llu 64位无符号整数

⑵ C语言:输入三个字符串,按由小到大的顺序输出

#include

#include

void swap(char **q1,char **q2)
{
char *temp; // 用 temp[100] 是不能赋值成功的
temp = *q1; // 赋值用 = 而不是 ==
*q1 = *q2;
*q2 = temp;
}
void exchange(char **p1,char **p2,char **p3)
{
if(strcmp(*p1,*p2)>0) swap(p1,p2);
if(strcmp(*p1,*p3)>0) swap(p1,p3);
if(strcmp(*p2,*p3)>0) swap(p2,p3);
}
int main()
{
char a[100],b[100],c[100],* p1,* p2,* p3;
gets(a);
gets(b);
gets(c);
p1=a;
p2=b;
p3=c;
// 用指针的指针才能改变原始指针内容,不然只是复制了指针内容到exchange中,
// 带不出修改后的结果到主函数中。
exchange(&p1,&p2,&p3);
printf("%s\n%s\n%s\n",p1,p2,p3);
return 0;
}

⑶ C语言输入3个字符串(长度都小于80),按由小到大顺序输出。

1 定义二维数组存储字符串。

2 通过strcmp比较大小,strcpy进行赋值,实现排序。

3 输出结果。

代码:

intmain()
{
chars[3][100],t[100];
inti,j;
for(i=0;i<3;i++)
scanf("%s",s[i]);
for(i=0;i<2;i++)
for(j=i+1;j<3;j++)
if(strcmp(s[i],s[j])>0)
{
strcpy(t,s[i]);
strcpy(s[i],s[j]);
strcpy(s[j],t);
}

for(i=0;i<3;i++)
puts(s[i]);
}

⑷ c语言 输入三个字符串,按重小到大顺序输出(求简单的算法)

#include <stdio.h>

#include <string.h>

void chognzu(char *a,char *b,char *c)

{

char *p;

if (strcmp(a,b)>0)/*比较字符串a与b的大小,如a>b就交换,下同*/

{p=a;a=b;b=p;}

if (strcmp(a,c)>0)

{p=a;a=c;c=p;}

if (strcmp(b,c)>0)

{p=b;b=c;c=p;}

printf("After sort: %s %s %s ",a,b,c);

}

void main()

{

char a[100];

char b[100];

char c[100];

gets(a);

gets(b);

gets(c);

chognzu(a,b,c);

}

⑸ C语言 用指针方法 输入3个字符串 按由小到大顺序输出

#include&lt;stdio.h&gt;

#include&lt;string.h&gt;

int main()

{

char str1[10],str2[20],str0[10];

printf("please input 3 strings");

gets(str1);

gets(str2);

gets(str0);

if(strcmp(str1,str2)&gt;0)swap(str1,str2);/*字符串比较函数*/

if(strcmp(str2,str0)&gt;0)swap(str2,str0);

if(strcmp(str1,str0)&gt;0)swap(str1,str0);

printf("Now the otrder is:")

printf("%s %s %s" str1,str2,str0);

return 0;

}

void swap(char*p1,*p2)

{

char str[10];

strcpy(str,p1);

strcpy(p1,p2);

strcpy(p2,str);

}

(5)先后输出cat三个字符C语言扩展阅读:

strcpy用法:

1、strcpy(a+1,b+2)相当于将a[1]及它后面的内容复制为b[2]及它后面的内容。b[2]及后面为“2”,因此复制后a为“a2”;

2、strcat(a,c+1)相当于在a的末尾加上c[1]及其后面的部分,也就是“yz”。故运行后a为“a2yz”

strcpy把从src地址开始且含有''结束符的字符串复制到以dest开始的地址空间,返回值的类型为char*。

strcat把src所指向的字符串(包括“”)复制到dest所指向的字符串后面(删除*dest原来末尾的“”)。

⑹ C语言编程:输入三个字符后,按各字符的ASCII码从小到大的顺序输出这三个字符。

ASCII码从小到大的顺序输出这三个字符的源代码如下:

#include&lt;

stdio.h&gt;

void main()
{

char a,s,c;

char max,min;

printf("Please input three numbers:");

scanf("%c,%c,%c",&amp;a,&amp;b,&amp;c);

max=a;

if(max&lt;b) max=b;

if(max&lt;c) max=c;

printf("max=%c ",max);

min=a;

if(min&gt;b) min=b;

if(min&gt;c) min=c;

printf("min=%d ",min);

}

(6)先后输出cat三个字符C语言扩展阅读

找出并打印ASCII码最大的字符的源代码如下

#include <stdio.h>

void main()

{

char a,b,c,max;

scanf("%c%c%c",&a,&b,&c);//读入三个字符如abc

max=a;//初始化最大为第一个

if(b>max) max=b;//和第二个比较如果第二个大于max,b赋值给max

if(c>max) max=c;//同上

printf("%c",max);

}

⑺ 用C语言,输入三个字母,按字母表顺序输出这三个字母。

#incle<stdio.h>
intmain()
{
chara,b,c,t;
scanf("%c%c%c",&a,&b,&c);//注意输入没有空格的,直接就这3个字母
if(a>b){t=a;a=b;b=t;}
if(a>c){t=a;a=c;c=t;}
if(b>c){t=c;c=b;b=t;}
printf("%c%c%c ",a,b,c);
return0;
}

⑻ c语言 输入3个字符串按由小到大的顺序输出

/*
字符串排序,
从而实现字符串的有序应用。
*/

#include <stdio.h>
#include <string.h> //strcmp(str1, str2);
//strcpy(str1, str2);
void main()
{
const int N = 30;
char name[N][10]; //存储名字
char temp[10]; //中间量
int i, j, k, n;
printf("请输入字符串数:");
scanf("%d", &n);
for(i = 0; i < n; i++)
{
scanf("%s", name[i]);
}
for(i = 0; i < n; i++) //排序
{
for(j = n - 1; j > i; j--)
{
k = j - 1;
if(strcmp(name[j], name[k]) < 0) //比较和交换
{
strcpy(temp, name[j]);
strcpy(name[j], name[k]);
strcpy(name[k], temp);
}
}
}
printf("=============\n");
for(i = 0; i < n; i++)
printf("%s\n", name[i]);
}

⑼ 求C语言编程 输入三个英文字符 按从大到小顺序排列输出

问题:输入三个数x,y,z,把其中的最大值赋值给x,中间赋值给y,最小值赋值给z。
参考代码:
#include
"stdio.h"
int
main()
{
int
x,y,z,max,min;
scanf("%d%d%d",&x,&y,&z);
if(x>y){
max=x;
min=y;
}
if(z>max)
max=z;
if(min>z)
min=z;
y=x+y+z-max-min;
x=max;
z=min;
printf("从大到小排序:%d
%d
%d\n",x,y,z);
}
/*
运行结果:
3
1
2
从大到小排序:3
2
1
*/

⑽ C语言 输入一个英文字母,输出其前后相连的三个英文字母 求解

#include <stdio.h>

int main(){

char a;

printf("请输入一个英文字母:");
scanf("%c", &a);

printf("前后相连的3个字母是: %c %c %c", a-1,a,a+1);

getchar();
getchar();
}