2006年9月全国等级考试三级c语言上机题库(十一)
文章作者 100test 发表时间 2007:03:10 19:13:43
来源 100Test.Com百考试题网
☆题目11(无忧id 93 字符串字母移位题)
程序prog1.c的功能是:把 s 字符串中的所有字母改写成该字母的下一个字母,字母z改写成字母a。要求大写字母仍为大写字母,小写字母仍为小写字母,其它字符不做改变。
请考生编写函数chg(char *s)实现程序要求,最后调用函数readwriteDAT( )把结果输出到文件bc1.out中。
例如:s 字符串中原有的内容为:Mn.123Zxy,则调用该函数后,结果为:No.123Ayz。
注意:部分源程序存在文件prog1.c文件中。
请勿改动主函数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() .
}
void readwriteDAT()
{
int i .
char a[N] .
FILE *rf, *wf .
rf = fopen("bc1.in", "r") .
wf = fopen("bc1.out", "w") .
for(i = 0 . i < 50 . i ) {
fscanf(rf, "%s", a) .
chg(a) .
fprintf(wf, "%s\n", a) .
}
fclose(rf) .
fclose(wf) .
}