下列程式的`功能是:把s字串中的所有字母改寫成該字母的下一個字元,字母z改寫成字母a。要求大寫字母仍為大寫字母,小寫字母仍為小寫字母,其他字元不做改變。請編寫函式chg(char *s)實現程式的要求,最後呼叫函式readwriteDat()把結果輸出到檔案中。
例如:s字串中原有的內容為:Mn.123Zxy,則呼叫該函式後,結果為No.123Ayz。
注意:部分源程式已給出。
請勿改動主函式main()和輸出資料函式readwriteDat()的內容。
-----------------------
#include
#include
#include
#include
#define N 81
void readwriteDAT();
void chg(char*s)
{while(*s)
if(*s=='z'||*s=='Z')
{*s-=25;s++;}
else if(*s>='a'&&*s<='y')
{*s+=1;s++;}
else if(*s>='A'&&*s<='Y')
{*s+=1;s++;}
else s++;
}
main( )
{
char a[N];
clrscr();
printf("Enter a string : "); gets(a);
printf("The original string is : "); puts(a);
chg(a);
printf("The string after modified : ");
puts (a);
readwriteDAT() ;
system("pause");
}
void readwriteDAT()
{
int i ;
char a[N] ;
FILE *rf, *wf ;
rf = fopen("", "r") ;
wf = fopen("", "w") ;
for(i = 0 ; i < 10 ; i++) {
fscanf(rf, "%s", a) ;
chg(a) ;
fprintf(wf, "%sn", a) ;
}
fclose(rf) ;
fclose(wf) ;
}
fjkdshjksdfhjksdfhsdjkfhsdjkfhsFSDfhsdafsdgdfklreiotertre
sdjklfhsdjkfhsdjkfhjrwerioweFSDopfzxcfnweorfjsdkfhsdjkfhsdjkfhsdjkfhsd
fdslkfjklfsdkljfsdklfsdfsmfsdfsdjklfsdjfklsdfjsdfjsdkfjsdklfjsdklfjsdk
dsfhjsdkhfsdjkfhsdjfhsFSDFSDrweioruwelfsdfknsdr238945
fsdkljfdsklfjdskfjsdkjfksdfjdksfjsFSfjsdkfjsdkjfsdkfjsdkfjsd
fsdjfklsdfjksdfjsdlkfjsdlkrjeiowpriwFSDFSDepxczmcmzxfmifjs
fsdlfkfjFSDFHSDJKFHSDFkljfsdkfjsdkfjsdklwe9rweiopfjZdcvmsfewiorweioc
fsdlkfjsdkljfklsdfjsdklfjsdkljfsdkjfsdklfjsdkljfsdklfjdskfjsdklfjsdklfjsd
fhsdjfkhsdjfhdsjkfhsdjfdjaskfhsdajkfjazzdsFSDFSDfhsdjfhsdz
djashdjasdhjkashdjasdhasjkdhasjkdhasjkdhasjkFSDFSDZhasjkdhas
gkletikltegikltegiteklgiteklgitGTEgitebgteheglmsfjpufsusf
teklmgiteklgiteklgiksxfsjpxfGTEpqgaydgoxfpsgktelgiteklgiteklgiteklgite
getmlgklmgtelmkgtelmgtegtngtegteklmgtekglmtegktegktelgktelmgktelmgktel
etgikteligteklgitekgitGTEGTEsxfjpsvxfmgteglotes238945
gtelmkgetlmgketlgktelkgltegkeltgktGTgktelgktelkgtelgktelgkte
gtekglmtegkltegktemlgktemlskfjpxqsjxGTEGTEfqydandnaygnjgkt
gtemglgkGTEGITEKLGITEGlmkgtelgktelgktelmxf9sxfjpqgkAedwntgfxjpsxfjpd
gtemlgktelmkglmtegktelmgktelmkgtelkgtelmgktelmkgtelmgketlgktelmgktelmgkte
gitekglitekgietklgitekgekbtlgitebklgkbaaetGTEGTEgitekgitea
ekbtiekbteiklbtiekbteibtkleibtkleibtkleibtklGTEGTEAibtkleibt