當前位置:首頁 » 編程語言 » c語言abcd字母逆序
擴展閱讀
webinf下怎麼引入js 2023-08-31 21:54:13
堡壘機怎麼打開web 2023-08-31 21:54:11

c語言abcd字母逆序

發布時間: 2023-04-17 18:45:47

c語言用while把26英文字母倒序輸出

#include <stdio.h>
int main()
{
char i = 'z';
while(i >= 'a')
{
printf("%c ", i);
i--;
}
putchar('\n');
return 0;
}
如果要大寫,就把i的初值改為'Z'

⑵ c語言倒序列印26個英文字母

while(x!='a'-1)
{
printf("%3c",x);
x--;
游前}

1.a-z的ascii碼是遞增的,所以倒序列印是遞減,即x--。

2.如果條仿磨森件是x!='a',那麼不會列印a,所以判斷條件改為x!='備畝a'-1

⑶ 編寫c語言程序,要求用戶輸入一個字元串,程序將字元串字母反序輸出.即如果輸入為abcd,則輸出為dcba.

#include<stdio.h>
#include<string.h>
int main()
{
char str[20],c;
int i,n;
printf("str=");
gets(str);
n=strlen(str);
for(i=0;i<n/2;i++)
{
c=str[i];
str[i]=str[n-i-1];
str[n-i-1]=c;
}
puts(str);
return 0;
}

⑷ C語言編程:用遞歸法做,輸出26個字母表的正序與反序。

#include
<stdio.h>
void
fa(int
i);
void
fb(int
i);
int
main(int
argc,
char
**
argv)
{
fa('a');
printf("\n");
fb('z');
printf("\n");
return
0;
}
void
fa(int
i)
{
if(i
<=
'z')
{
printf("%c
",
i);
fa(i+1);
}
}
void
fb(int
i)
{
if(i
>=
'a')
{
printf("%c
",
i);
fb(i-1);
}
}
題目的大致程序是這樣的。用遞歸來寫程序,首先要注意,什麼是遞歸,如何寫遞歸。
遞歸就是函數自己直接或間接的調用自身,寫遞歸一定要注意程序的出口。恩,剛學遞歸是會感覺遞歸有點難的,如果沒明白在聯系我吧

⑸ c語言 字元串數組倒序輸出

#include<stdio.h>
#include<string.h>
void main()
{
char string1[200]; //用於存放輸入的字元串
char string2[200]; //用於存放倒序後的字元串
int invertion(char *ch1, char *ch2); //聲明函數
printf("Please input a sentences:\n");
gets(string1); //這里不要用scanf,因為scanf遇到空白符就會結束
printf("Your inputed sentences is:%s\n", string1);

invertion(string1, string2);
printf("The invertion sentences is:%s\n", string2);
getchar();
}

int invertion(char *ch1, char *ch2)/*char1 接收實參傳過來的原字元串指針 char2 接收倒序後的新字元串返回主函數*/
{
int count = 1,num=0;
char *ch=ch1;
for(;*ch1!='\0';ch1++)// 統計單詞個數
{
if(*ch1==' ')
count++; //單詞數等於空格數加1,前面把count初始化為1就是這個原因
if(*ch1==' '&&*(ch1+1)==' ') //防止單詞之間有2個空格符而多計數了一個單詞數
count--;
}
printf("count = %d\n", count);
ch1=ch1-1;//前面的ch1經過循環之後已經指向字元串的結束標志'\0',這里減1是為了讓它指向字元串的最後一個字元
while(ch1>=ch)//讓ch1從指向string1的最後一個字元開始往前遞減,當減到字元串的首個字元時結束
{ int j=num; //保存num,後面要用到這個數
if(*ch1!=' ')//記錄每個單詞的長度 ,以空格符作為標志
num++;
else // 知道了每個單詞的長度之後,就可以用循環將字元以單詞為單位寫入數組string中,這樣的話單詞內就不會倒序了
{
for(int i=1;i<=j;i++,num--)
*(ch2-num)=*(ch1+i);
*ch2=*ch1;
}
ch1--;
ch2++;
}
for(int i=1;i<=num;i++,ch2++)//因為string1的第一個單詞前沒有空格符,肯定輸不出來,所以單獨用一個循環將其輸出
*(ch2-num)=*(ch1+i);
*ch2='\0'; //string2的結束標志
}

這是我做了修改之後的程序,看看符不符合要求!!
你的那個定義的變數太多,很混亂!循環語句太亂了,if判斷條件與循環條件不正確
已經做了修改,看符合要求不,不行的話,再說!!!
又做了修改了,看符合要求不??
不會吧,我調試通過還運行了!!不然怎麼會發上來啊!!至於演算法問題我給注釋吧,你看看!!

⑹ 請問有C語言題目,實現在函數void fun(char *s)中將字元串S 逆序存放,即abcd改為dcba。

代碼問題很多,首先fun函數沒脊賣纖有返回值,如何在main函數中輸出呢?

還有些小細節就你自己看代碼吧,以下是我寫好的,可以自己輸入字元串,轉置輸出:

#include<stdio.h>

char*fun(char*s)

{char*x;

inti,j;

x=(char*)malloc(sizeof(char)*strlen(s));

for(i=(strlen(s)-1),j=0;i>=0;i--,j++)

{

x[j]=s[i];

櫻仿}

returnx;

}

voidmain()

{

inti,j,m;

char*a,*b;

chark;

printf("請輸入要輸入字元的個數:");

scanf("%d",&i);

a=(char*)malloc(sizeof(char)*i);

b=(char配磨*)malloc(sizeof(char)*i);

printf("請輸入%d個字元:",i);

scanf("%s",a);

b=fun(a);

printf("轉置後的字元串為:");

for(m=0;m<i;m++)

printf("%c",b[m]);

printf(" ");

}

運行如:

⑺ C語言問題 就是把字元串中的內容逆置 比如 輸入abcd 輸出dcba

你好!!!
修改如下:#include<string.h>
#include<conio.h>
#include<stdio.h>

void main()
{
char str[100];
char ch;
int i,k;
printf("輸入啊:");
scanf("%s",str);//用數組
k=strlen(str);//求字元串的長度
for(i=0;i<k/褲襪昌2;i++)
{
ch=str[i];
str[i]=str[k-i-1];
str[k-i-1]=ch;
}

printf("胡扒%s\n"好慧,str);//不要用循環了,那樣效率不高
}

⑻ C語言程序:倒序列印26個英文字母(程序改錯)

把x++;改成x--;
把(x!='a') 改成(x>='a')

⑼ C語言怎麼用函數把一個字元串逆序存放,比如說原字元串是abcd,怎麼將他改為dcba

我以前寫了這個程序。略粗糙

源代碼:

#include <stdio.h>
#include <string.h>
#define ARR_SIZE 80 //字元串最大長度
int Inverse(char a[]);
void main(void)
{
char str[ARR_SIZE]={0};
printf("P199 6.12\n"); //題號
printf("---------------------Inversed sequence---------------------\n");
printf("\nPlease enter a charstring:\n\n");
gets(str); //輸入一個字元串
Inverse(str); //調用函數逆序存放
}
int Inverse(char a[])
{
char b[ARR_SIZE]={0};
int i;
int maxsize;
maxsize=strlen(a)-1; //得到最後一個字元位置
for (i=0;i<strlen(a);i++) //依次交換存放
{
b[maxsize]=a[i];
maxsize--;
}
printf("\nThe changed result is:\n\n");
puts(b); //輸出交換存放結果
printf("\n");
}

⑽ 急求用c語言編寫:一個字元串編寫程序將其倒置,如:」abcd」 改為:」dcba」,附上注釋。謝謝」

#include<stdio.h>
intmain()
{
inti,j;
charstr[100],c;
scanf("%s",str);//讀入字元串
for(i=0,j=strlen(str)-1;//i從最前面開始,j從最後猜叢罩鋒面開始,數組元素進行交換
i<穗悶櫻j;//當i和j碰頭時就結束交換
i++,j--)//每交換一個,i往後移一個,j往前移一個
{
c=str[i];//用臨時變數保存第i個字元
str[i]=str[j];//第j個字元存入第i個位置
str[j]=c;//臨時變數,即原第i個字元寫入第j個位置
}
printf("%s",str);//輸出倒置後的字元串
}