c語言字元串反轉逆序輸出

程序的關鍵點是:
1.定義一個char類型數組char
a[100];
2.輸入字元串scanf("%s",
a);
3.獲取字元串長度int
ilength
=
strlen(a);
4.倒序循環輸出
for(int
i
=
ilength
-1;
i
>=
0;
i--)
{
prinft("%c",
a[i]);
}
5.用上面的步驟應該可以寫出來了。自己做相信更有成就感。

⑵ C語言:輸入一個字元串,然後逆序輸出

可以將整數當做字元串(字元串長度不超過10)接收,然後反向輸出字元數組元素即可。

字元串實際長度可以用strlen函數來計算。

方法程序如下:

#include<stdio.h>

#include<string.h>

main()

{char a[10];int i,j;

scanf("%s",a);

j=strlen(a);

for(i=j-1;i>=0;i--)

printf("%c",a[i]);

printf(" ");}

(2)c語言字元串的逆序輸出擴展閱讀:

C語言高效編程技巧:

一:以空間換時間

計算機程序中最大的矛盾是空間和時間的矛盾,那麼,從這個角度出發逆向思維來考慮程序的效率問題

二:數學方法解決問題

數學是計算機之母,沒有數學的依據和基礎,就沒有計算機發展,所以在編寫程序的時候,採用一些數學方法會對程序的執行效率有數量級的提高。

三:使用位操作

實現高效的C語言編寫的第三招----使用位操作,減少除法和取模的運算。

在計算機程序中,數據的位是可以操作的最小數據單位,理論上可以用「位運算」來完成所有的運算和操作。一般的位操作是用來控制硬體的,或者做數據變換使用,但是,靈活的位操作可以有效提高程序運行的效率。

⑶ 用C語言寫 字元串逆序輸出

逆序輸出有很多種,具體的實現方法取決於你題目的要求

1.如果只是要求逆序輸出,那麼可以採用類似的方法:
voidreverse(char*s)
{
if(*s=='')
return;
reverse(s+1);
printf("%c",*s);
}
這種方法在s很長的情況下會一直遞歸到底,不是很好。

2.如果需要將字元串整個逆序在函數外面輸出,那麼可能希望採用返回字元串指針的方式;實現如下:
char*reverse(char*s)
{
staticchar*p=s+strlen(s)-1;//p是一個靜態變數,指向當前遞歸層處理的字元串尾,而s指向字元串頭
if(s<p)
{
charc=*p;//交換頭尾字元
*p=*s;
*s=c;
p--;//尾向前挪一個
reverse(s+1);//相當於頭向後挪一個
}
returns;
}

3.1當然,有的時候,並不需要reverse函數本身遞歸,而是可以藉助一些輔助的遞歸函數,比如說:
voidreversehelp(char*head,char*end)
{
if(head<end)
{
charc=*head;
*head=*end;
*end=c;
reversehelp(++head,--end);
}
}
然後在調用時像這樣調用:
char*reverse(char*s)
{
char*end=s+strlen(s)-1;

reversehelp(s,end);
returns;
}

3.2類似的輔助函數還可以採用一個字元串指針和一個長度參數的方式,如下例:
voidreversehelp(char*s,intn)
{
if(n>1)
{
charc=s[n-1];
s[n-1]=s[0];
s[0]=c;
reversehelp(s+1,n-2);
}
}
然後在調用時如下:
char*reverse(char*s)
{
reversehelp(s,strlen(s));
returns;
}

⑷ 逆序輸出字元串C語言

程序的關鍵點是:
1.定義一個char類型數組char a[100];
2.輸入字元串scanf("%s", a);
3.獲取字元串長度int iLength = strlen(a);
4.倒序循環輸出
for(int i = iLength -1; i >= 0; i--)
{
prinft("%c", a[i]);
}
5.用上面的步驟應該可以寫出來了。自己做相信更有成就感。

⑸ C語言 (棧的應用)任意輸入一個字元串 逆序輸出

#include
<stdio.h>
#include
<string.h>
/*
函數名稱:字元串逆序輸出
函數功能:字元串逆序輸出
輸入參數:原字元串
返回版參數:逆權序字元串
*/
void
f
(char
s[1000])
{
int
i,
len;
len
=
strlen(s);
for
(i
=
len-1;
i
>=
0;
i--)
putchar(s[i]);
}
int
main()
{
char
s[1000];
while
(gets(s))
{
f(s);
printf("\n");
}
return
0;
}

⑹ c語言字元串如何實現逆序輸出

#include <string.h>
#include <stdio.h>
#define N 81
void fun(char *s)
{ int i,n;
char a[81];
n=strlen(a);
for(i=0;i<n;i++)
a[i]=s[n-1-i];
a[i]='\0';
for(i=0;i<n;i++)
s[i]=a[i];
s[i]='\0';
}

main()
{ char a[N];

printf("Enter a string: ");gets(a);
printf("The original string is: ");puts(a);
fun(a);
printf("\n");
printf("The string after modified: ");
puts(a);
}

⑺ c語言字元串逆序輸出。

#include<stdio.h>
#include<string.h>

intmain()
{
inti;
intstr_len;
charstr[81];
gets(str);
str_len=strlen(str);
//str_len-1就是最後一個元素的下標不理解的話可以想想"abc"長度3最後c的下標是2理解了吧
//然後一直自減到i=0也就是第一個字元那麼下面的for循環的意思就是
//從最後一個字元逐個倒著輸出這個字元串的元素
for(i=str_len-1;i>=0;i--)
{
printf("%c",str[i]);
}

return0;
}

⑻ C語言 將字元串逆序輸出

修改出來了。

#include <stdio.h>
#include <conio.h>

int main(void)
{
int i,count=0;
char s[80];

printf("請輸入大寫字母:");
for(i=0; s[count - 1]!專='\n'; i++) /// 修改屬
{
s[i] = getchar(); /// 修改
// scanf(" %c",&s[i]);
count++;
}
for(i=count-1;i>=0;i--)
printf("%c",s[i]);

return 0;
}

⑼ C語言將字元串逆序輸出問題(用函數)

沒有看明白你的代碼,如果只是想把字元逆轉後再輸出.這應是很簡單的,下面我寫了一個逆轉字元後並輸出的代碼:

#include<stdio.h>
#include<string.h>
#defineSTRING_MAX_LONG100
/*Functionprototypes*/
voidswaping(char*,char*),InverseString(char*,int);

voidmain()
{
charstr[STRING_MAX_LONG];
intstrLen=0;
printf("Pleaseinputstring:");
scanf("%s",str);

InverseString(str,strlen(str));
printf(" Inversestringafter:%s ",str);
}

voidswaping(char*a,char*b)
{
chartemp=*a;
*a=*b;
*b=temp;
}
voidInverseString(chars[],intlen)
{
inti,k=-1,j;
i=j=0;

for(i=k+1;i<len;i++){
j=len-i+k;
if(i>=j)break;
swaping(&s[i],&s[j]);
}
}

⑽ C語言,輸入一個字元串,逆序排列後輸出

可以參考下面的代碼:

#include "stdio.h"

main()

{

char strA[200];

char Temp;

int i=0,Length=0;

clrscr();

printf("請輸入一個字元串:");

gets(strA);

Temp=strA[0];

while(Temp!=''){

Length++;

Temp=strA[i++];

}

Length--;

for(i=0;i<Length/2;i++){

Temp=strA[i];

strA[i]=strA[Length-i-1];

strA[Length-i-1]=Temp;

}

puts(strA);

getch();

}

(10)c語言字元串的逆序輸出擴展閱讀:

C語言參考函數:

atof(將字元串轉換成浮點型數)

atoi(將字元串轉換成整型數)

atol(將字元串轉換成長整型數)

strtod(將字元串轉換成浮點數)

strtol(將字元串轉換成長整型數)

strtoul(將字元串轉換成無符號長整型數)

toascii(將整型數轉換成合法的ASCII 碼字元)

注意事項:

字元串在存儲上類似字元數組,所以它每一位的單個元素都是可以提取的,如s=「abcdefghij」,則s[1]=「a」,s[10]="j",而字元串的零位正是它的長度,如s[0]=10(※上述功能Ansistring沒有。),這可以給我們提供很多方便,如高精度運算時每一位都可以轉化為數字存入數組。