从键盘读入一个字符串,判断其是否为回文.(C语言)

作者&投稿:项侨 (若有异议请与网页底部的电邮联系)
c语言编程题 输入一字符串,判断该字符串是否为回文。~

#include
#include
int main()
{
char a[100];
int i=0,j=0;
printf("请输入字符串:
");
gets(a);
while(a[i]!='\0')
i++;
i--;
for(;j<=i;i--,j++)
{
if(a[i]!=a[j])
{
break;
}
}
if(j<=i)
{
printf("不是回文串
",a);
}
else
{
printf("是回文串
",a);
}
system("pause");
return 0;
}
运行效果:

扩展资料:return 0代表程序正常退出。return是C++预定义的语句,它提供了终止函数执行的一种方式。当return语句提供了一个值时,这个值就成为函数的返回值。
return语句用来结束循环,或返回一个函数的值。
1、return 0,说明程序正常退出,返回到主程序继续往下执行。
2、return 1,说明程序异常退出,返回主调函数来处理,继续往下执行。return 0或return 1对程序执行的顺序没有影响,只是大家习惯于使用return(0)退出子程序而已。

教你个最简单的吧
#include
#include
void main())
{
string s="abcd dcba";//输入方法自己随便,我这里不写了,太累
if(strcmp(strrev(s),stemp)) printf("回文数");//如果一个字符串和它的反序字符串相同,那么它是回文的
else printf("不是回文数");
return 0;
}

#include<string.h>
#include<stdio.h>
main()
{
char a[40]; //定义一个存放待判断的字符数组
int i=0,len;
printf("please input your string :(length<40):");
gets(a); //逐个读取a 数组中的字符
len=strlen(a); //计算字符串的长度
for(i=0;i<(len-1)/2;i++)
{
if(a[i]!=a[len-1-i])//逐个将两端的字符进行比较 如第一个与最后一个比较 第二个与倒数第二个比较 如不同 则跳出循环
break;
}
if(i==(len-1)/2)// 如i已经自加至字符串的中间位置 则表示是回文 如 没有 则不是
printf("Yes");
else
printf("No");
}

这程序 我粗略写的 没有运行 你运行试一下
有问题的话 你发邮件给我
neverland07@sina.com

#include<stdio.h>
#include<string.h>
int main(int argc,char** argv){
char ch[100],i=0,j=0,len;
printf("请输入一个字符串:
");
gets(ch);
len=strlen(ch);
/*比较ch[i]和ch[j],看是否相等*/
i=0;j=len-1;
while(i<j)//两头往中间方向比较,总会相遇,所以保证i<j 
{
if(ch[i]==ch[j])
{
i++;
j--;
}
else
break;
}

if(i>=j)
{
printf("YES!");
}
else
{
printf("NO!"); 
}


return 0;
}
 
/*
输出结果:
请输入一个字符串:
121
YES!

请输入一个字符串:
1221
YES!

请输入一个字符串:
1231
NO!
*/



某程序的输入流是从键盘读入一个字符串,输出流是
(1)数字1进栈、出栈,数字2进栈、出栈,数字3进栈、出栈.(2)数字1进栈、出栈,数字2进栈,数字3进栈,3出栈.2出栈.(3)数字1、2进栈,2出栈,1出栈,数字3进栈、出栈.(4)数字1、2进栈,2出栈,数字3进栈,数字3出栈,数字1出栈.(5)数字1、2、3依次全部进栈,再依次全部出栈.本...

如何从键盘输入一个字符串列表?
要从键盘输入列表,可以使用input()函数结合列表推导式。您可以按照以下示例代码的格式进行输入:上述代码将从键盘读取一个字符串,该字符串包含用空格分隔的元素。然后,split()函数将字符串拆分为一个列表,并使用int()函数将每个元素转换为整数类型。最终,将得到一个整数列表,存储在名为my_list的变量...

从键盘读入一个字符串,判断其是否为回文.(C语言)
gets(a); \/\/逐个读取a 数组中的字符 len=strlen(a); \/\/计算字符串的长度 for(i=0;i<(len-1)\/2;i++) { if(a[i]!=a[len-1-i])\/\/逐个将两端的字符进行比较 如第一个与最后一个比较 第二个与倒数第二个比较 如不同 则跳出循环 break; } if(i==(len-1)\/2)\/\/ 如i已经自加至字符串的...

如何读入含有空格的字符串?
要从键盘读入含有空格字符的字符串,应该用gets()函数。getc()与getchar()语句都是读取单个字符的,不能用于字符串的读入。而gets()与scanf()语句都可以读取字符串,但是区别在于:scanf()语句不能读空格,一遇到空格则自动结束,用“空格”区别不同的字符串;要读含有空格的字符串则只有gets()函数。

用scanf函数输入一个字符串,再输出。
代码:

从键盘上输入一个字符串,放在数组中,要求将字符串中的大写字母转换成小...
std::string input;\/\/ 提示用户输入字符串 std::cout << "请输入一个字符串: ";std::getline(std::cin, input);\/\/ 遍历字符串并进行大小写字母转换 for (char &c : input) { if (std::isupper(c)) { c = std::tolower(c); \/\/ 如果是大写字母,转换为小写字母 } else if (...

在C语言中如何实现用键盘输入一个字符串,并打印出来?
1.首先需要先定义一个存放字符串的数组空间,如给字符串100个数组空间。2.接着使用gets()函数来获取键盘输入的字符串。一般格式为gets(定义的字符数组名)。3.然后再使用puts()函数来输出之前输入的字符串内容。一般格式puts(定义的字符数组名)。4.最终运行程序,即可成功实现输入字符串,然后原样在...

从键盘输入字符串,要求不多于40个字符,分别统计其中大写字母、小写字母...
printf("大写字母个数:%d\\n", upper_count);printf("小写字母个数:%d\\n", lower_count);printf("数字个数:%d\\n", digit_count);return 0;} 在上面的代码中,我们定义了一个长度为 41 的字符数组 string 来存储输入的字符串。然后使用 scanf() 函数从键盘读入字符串,最多读入 40 个字...

编写代码,要求如下(c语言)+1.创建一个文件STRING.txt。+2.由键盘输入...
从键盘输入一个字符串,并使用 fgets() 函数将其写入文件。关闭文件。重新打开文件读取字符串,并通过遍历每个字符来统计字母、数字和其他字符的个数。我们使用 isalpha() 函数判断字符是否为字母,isdigit() 函数判断字符是否为数字。关闭文件。输出各类字符的个数。请注意,在输入字符串时使用了 fgets()...

Java中如何从键盘接收一个字符
Java中没有提供方法直接从键盘接收一个字符,但是可以用从键盘接收一个字符串实现接收一个字符的功能。\\x0d\\x0a\\x0d\\x0a说一下思路:就是用Scanner对象从控制台接收一个字符串,然后调用String类中的charAt方法获取目标字符。\\x0d\\x0a举例如下:\\x0d\\x0apublicstaticvoidmain(String[]args){\\x0d\\x0aScan...

青浦区19616717930: 从键盘读入一个字符串,判断其是否为回文.(C语言)
尘力鳖甲: #include&lt;string.h&gt; #include&lt;stdio.h&gt; main() { char a[40]; //定义一个存放待判断的字符数组 int i=0,len; printf("please input your string :(length&lt;40):"); gets(a); //逐个读取a 数组中的字符 len=strlen(a); //计算字符串的长度 for(i=0;i&lt;...

青浦区19616717930: 从键盘读入一个字符串,判断其是否为回文.(C语言) -
尘力鳖甲: #include<string.h>#include<stdio.h> main() { char a[40]; //定义一个存放待判断的字符数组 int i=0,len; printf("please input your string :(length<40):"); gets(a); //逐个读取a 数组中的字符 len=strlen(a); //计算字符串的长度 for(i=0;i<(len-1)/2;i++) {...

青浦区19616717930: C语言编程从键盘输入一个字符,判断该字符是否为控制字符、空格、数字字符、大写字母、小写字母或者其他字 -
尘力鳖甲: #include<stdio.h> voidmain() { charch; inta; ch=getchar(); if(ch>='a'&&ch<='z') ch='1'; if(ch>='A'&&ch<='Z') ch='2'; if(ch=='') ch='3'; switch(ch) {case'1':printf("xiao\n");break;case'2':printf("da\n");break;case'3':printf("空格\n");break;default:...

青浦区19616717930: 从键盘上输入一个字符,判断其是否为a或者r或者f,并输出相应的信息 -
尘力鳖甲: C语言中两种方法都可以,但有区别scanf("%s",s)是读取不到空格的.而gets(s)可以读取.两种方法都是一个一个字符读取的.不同的是scanf是遇到空格或者回车键就会结束,但gets是只有输入回车键才会终止读取字符串!下面是例子:#includeintmain(){ charx[10]; scanf("%s",x); printf("%s",x); return0;}下面是gets;#includeintmain(){ charx[10]; gets(x); printf("%s",x); return0;}

青浦区19616717930: 编写程序,从键盘上接收一个字符串,判断其是否为回文 -
尘力鳖甲: /*请输入字符串:1202112021:是.请输入字符串:11:是.请输入字符串:1212:不是.请输入字符串:12331233:不是.请输入字符串:1221122112211221:是.请输入字符串:^ZPressanykeytocontinue*/#include #include int main() {int s,i,flag;char a[100];while(printf("请输入字符串:"),scanf("%s",a) == 1) {s = strlen(a);flag = 1;for(i = 0; i

青浦区19616717930: 从键盘上读入任意一个字符,判断并输出其是数字字符、字母或其它字符 刚学C++啊, -
尘力鳖甲: #include <stdio.h>#include <conio.h> int main() { char c = getch(); putch(c); if( c >= '0' && c <= '9' ) printf( "是一个数字\n" ); else if( (c>='A' && c<='Z') || (c>='a' && c<='z') ) printf( "是一个字母\n" ); else printf( "是其它字符\n" ); }

青浦区19616717930: 从键盘输入一个字符串存放在数组a中,编写程序,判断该字符串是否为回文. -
尘力鳖甲: int len=strlen(a); int bHuiwen = true; for (int i=0; i<len/2; i++)if (a[i]==a[len-1-n]) continue;else{bHuiwen = false; break;}

青浦区19616717930: 用汇编语言编写 从键盘接受一个字符,并判断是否为'Y' -
尘力鳖甲: DATA SEGMENT MAXL DB 30 LENGTH DB ? STRING DB 30 DUP(?) DATA ENDS ; CODE SEGMENTASSUME CS:CODE,DS:DATA START: MOV AX,DATAMOV DS,AXMOV AH,1INT 21HCMP AL,'Y'JE YESCMP AL,'Y'JNE NO YES...

青浦区19616717930: 从键盘读入一个字符,判断其是否为数字,若为数字则将标志flags置1,其他则置0?急求汇编代码.
尘力鳖甲: data segmentflags db 1 data ends code segmentassume cs:code,ds:data start: mov ax,data mov ds,ax mov ah,1 int 21h cmp al,'0' jl setflages cmp al,'9' jg setflages jmp exit setflages: mov byte ptr flags,0 exit: mov ah,4ch int 21h code endsend start

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网