1. 程式人生 > >計算機二級-C語言-程序修改題-190108記錄-字符串處理

計算機二級-C語言-程序修改題-190108記錄-字符串處理

計算機 pri spa ase abcd 參數 col har scanf

//程序修改題:給定程序MODI1.C中函數fun的功能是:先將字符串s中的字符按正序存放到t串中,然後把s中的字符按逆序連接到t串的後面。例如:當s中的字符串為:“ABCDE”時,則t中的字符串應為:“ABCDEEDCBA”。

//重要點:字符串結尾都是“\0”結尾。strlen()函數不獲取‘\0‘這個長度,對字符串進行處理就是把字符串放入數組,然後遍歷處理。

#include <stdio.h>//scanf()函數和printf()函數都是在該頭文件下定義的

#include <string.h>//strlen()函數在該頭文件下定義

void fun(char *s,char *t)//傳過來的參數s和t不需要定義就可以使用,定義為*s指針形式,但是使用的時候可以用數組形式使用。

{

  int i,s1;

  s1=strlen(s);//這個函數不獲取‘\0‘這個長度

  for(i=0;i<=sl;i++)//錯誤1:s1為5,這裏會執行六次,不正確,sl書寫錯誤,更正為s1.

    t[i]=s[i];

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

    t[s1+i]=s[s1-i-1];

  t[s1]=‘\0‘;//註意這裏不要掉以輕心,s1為長度變量,為5,沒有變動過,改為2*s1.

}

main()

{

  char s[100],t[100];

  printf("\nPlease enter string s:");

  scanf("%s",s);//輸入函數,若是變量需加&(例如:&s),函數直接寫數組首地址即可。

  fun(s,t);

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

}

計算機二級-C語言-程序修改題-190108記錄-字符串處理