當前位置:編程學習大全網 - 編程軟體 - C語言程序設計題,下面是壹道C語言的二級程序題,本人是C語言初學者,這道題我實在是看不明白程序是怎麽走

C語言程序設計題,下面是壹道C語言的二級程序題,本人是C語言初學者,這道題我實在是看不明白程序是怎麽走

#include "stdio.h"

void fun(char * s)

{

int i,n,k;

char c;

n=0;

for(i=0;s[i]!='\0';i++) /*如果字符串沒有結束,也就是給的字符串沒有到結尾就執行循環,壹個字符串的末尾會有壹個 '\0'的結束標誌的*/

n++; /*這個for循環結束後n裏面是這個字符串***有多少個字符*/

if(n%2==0) /*如果n對二取余等於0,即字符個數是偶數*/

k=n-1;

else

k=n-2;/*if之後,如果***十個字符,那麽k是9,如果9個字符k是7,即最後壹個下標是奇數的下標,這是為了把最後壹個放到第壹位*/

c=s[k]; //臨時變量,用於存放最後壹個下標為奇數的字符

for(i=k-2;i>=1;i=i-2) //字數下標字符後移2個,不包括最後壹位

s[i+2]=s[i];

s[1]=c; //最後壹個奇數移到s[1]

}

void main()

{

char s[80]="abcdefgh";

printf("\nThe original string is:%s\n",s);

fun(s);

printf("\nThe result is:%s\n",s);

}

  • 上一篇:2010級數據結構實驗題 1、 已知兩個按元素值有序的線性表A和B以順序存儲結構表示,編程實現:將A和B有序歸
  • 下一篇:LED編程怎麽寫?
  • copyright 2024編程學習大全網