計算機二級-C語言-程序修改題-190108記錄-字符串處理
阿新 • • 發佈:2019-01-08
計算機 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記錄-字符串處理