java判斷輸入的字符串是否為回文 編寫(xiě)程序,判斷輸入的字符串是否是回文?
編寫(xiě)程序,判斷輸入的字符串是否是回文?#包含字符串(&L)。H>#包括<stdio。H>main(){Chara[40]//定義一個(gè)要判斷的字符數(shù)組,inti=0,leprintf(“pl
編寫(xiě)程序,判斷輸入的字符串是否是回文?
#包含字符串(&L)。H>#包括<stdio。H>main(){Chara[40]//定義一個(gè)要判斷的字符數(shù)組,inti=0,leprintf(“please input your first ring:(length<40):”)gets(a)//逐個(gè)讀取數(shù)組中的字符,len=strlen(a)//計(jì)算(I=0I<(len-1)/2I的字符串長(zhǎng)度{if(a[I]!=a[len-1-i])//將兩端的字符逐一比較,如第一個(gè)字符與最后一個(gè)字符比較,第二個(gè)字符與倒數(shù)第二個(gè)字符比較,如果不一樣,跳出循環(huán)中斷}如果(i==(len-1)/2)//如果我被加到了字符串的中間,則表示回文。如果沒(méi)有,就不是printf(“yes”)elseprintf(“no”)}這個(gè)我寫(xiě)的程序大致沒(méi)有運(yùn)行過(guò),可以試試看
源代碼如下:
#include
int main()
{
int n,reversedinteger=0,remainer,originalinteger
printf(“enter an integer:”)
scanf(%d”,&n)
originalinteger=n
//翻轉(zhuǎn)
while(n!=0)
]{
remainer=n
reversedinteger=reversedinteger*10 remainer
n/=10
}
//判斷
如果(originalinteger)==Reverseinteger)
printf(%d是回文數(shù)。“,originalinteger)
else
printf(%d不是回文數(shù)。“,originalinteger)
返回0
}
擴(kuò)展數(shù)據(jù)
1。函數(shù)的返回值是通過(guò)函數(shù)中的return語(yǔ)句獲得的。
2. 函數(shù)值的類型。
3. 如果函數(shù)值的類型與返回語(yǔ)句中表達(dá)式的值不同,則以函數(shù)類型為準(zhǔn)。
4. 如果調(diào)用函數(shù)中沒(méi)有return語(yǔ)句,則不會(huì)返回用戶需要的某個(gè)值。函數(shù)不返回值,只返回有用值和不確定值。
寫(xiě)一個(gè)程序判斷讀入的字符串是否是“回文”?
#Include
#Include
main()
{
char a[40]//定義要判斷的字符數(shù)組
int i=0,len
printf(”請(qǐng)輸入字符串:(length
get(a)//逐個(gè)讀取數(shù)組中的字符
len=strlen(a)//計(jì)算字符串的長(zhǎng)度
for(i=0I){
如果(a[i]!=a[len-1-i]//逐個(gè)比較兩端的字符,例如如果i==(len-1)/2,則比較第一個(gè)字符和最后一個(gè)字符//如果我被添加到字符串的中間,則表示回文;如果不是,則表示不是
printf(“yes”)
else
printf(“no”)
}
我編寫(xiě)的這個(gè)程序沒(méi)有運(yùn)行,運(yùn)行它
1=在end的情況下,比較并使start和end--連續(xù);只要有不等式,退出并返回false。
2. 具體代碼如下。通過(guò)使用while循環(huán),如果遇到不相等的對(duì)應(yīng)字符,將立即退出。回文字符串返回1,而不是0。輸入?yún)?shù)包括字符串STR及其長(zhǎng)度len。
3. 測(cè)試數(shù)據(jù)為“ABA”和“ABC”,結(jié)果為1和0,如圖所示