编程题 请编写一个函数FUN,它的功能是:将SS所指字符串中所有下标为奇数位置上的字母转换为大写(若该位置上不是字母,则不转换)。
例如,若输入abc4EFg,则应输出aBc4EFg
注意:部分源程序给出如下。
请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入所编写的若干语句。
试题程序:
#include
#include
#include
void fun ( char *ss)
{
}
main( )
{
char tt[81];
FILE *out;
printf("\n Please enter an string within 80 characters:\n");
gets( tt );
printf("\n\nAfter changing, the string\n %s\n", tt );
fun( tt );
printf( "\nbecomes \n %s\n", tt );
out=fopen("out.dat", "w");
strcpy(tt, "Please enter an string within 80 characters:");
fun( tt );
fprintf(out, "%s", tt );
fclose(out);
}
答案是:
void fun(char *ss)
{
int i,n;
n=strlen(ss);
for(i=1;i if (ss[i]>=’a’&&ss[i]<=’z’)
ss[i]=ss[i]-32;
}