下列给定程序中,函数fun()的作用是,将字符串tt中的大写字母都改为对应的小写字母,其他字符不变。例如,若输入"Ab,cD",则输出"ab, cd"。
请改正函数fun()中的错误,使它能得出正确的结果。
注童:不要改动main函数,不得增行或删行,也不得更改程序的结构。
试题程序:
include <stdio.h>
include <string.h>
include <conio.h>
char *fun (char tt[])
{
int i;
for(i=0; tt[i]; i++)
/**************found**************/
{ if(('A' <=tt[i]||(tt[i]<='z' ))
tt[i]+=32; }
return(tt);
}
main()
{int i;
char tt[81];
clrscr();
printf("\nPlease enter a string:");
gets(tt);
printf("\nThe result string is:\n %s", fun(tt));
}
第1题:
下列给定程序中,函数fun()的作用是:将字符串tt中的小写字母都改为对应的大写字母,其他字符不变。例如,若输入“edS,dAd”,则输出“EDS,DAD”。
请改正程序中的错误,使它能得到正确结果。
注意:不要改动main函数,不得增行或删行,也不得更改程序的结构。
试题程序:
include <stdio.h>
include <string.h>
include <conlo.h>
/*************found*************/
char fun(char tt[ ])
{
int i;
for(i=0;tt[i];i++)
{
/*************found*************/
if((tt[i]>='A')&&(tt[i]<='2'))
tt[i]-=32;
}
return(tt);
}
main()
{
int i;
char tt[81];
clrscr();
printf("\nPlease enter a string:");
gets(tt);
printf("\nThe result string iS:/n%s", fun(tt));
}
第2题:
下列给定程序中,函数fun()的功能是:将str所指字符串中的字母转换为按字母序列的后续字母(Z转换A,z转换a),其他字符不变。
请修改函数fun()中的错误,得出正确的结果。
注意:不要改动main()函数,不得增行或删行,也不得更改程序的结构。
试题程序:
(1)错误:while(*str!=ˊ@ˊ)
正确:while(*str)或while(*str!=ˊ\0ˊ)或while(*str!=0)
(2)错误:(*str++);
正确:str++
【解析】首先判断字母是否为小写字母,如果是小写字母则进行转换。
第一个标识下“while(*str!=ˊ@ˊ)”语句原意是str不指向字符串尾就进入下面的循环,所以对于指针判断不为结束符的语句应该是循环为真,所以应为“while(*str)”或“while(*str!=ˊ\Oˊ)”或“while(*str!=0)”。
第二个标识下“(*str)++;”是对字符内容加1,而原题是对字符位置加1,所以将其改为“str++;”。
第3题:
14、strupr()函数可以将字符串常量中的小写字母变成大写字母。
第4题:
下列给定程序中函数fun的功能是:将tt所指字符串中的小写字母全部改为对应的大写字母,其他字符不变。
例如,若输入“Ab,cD”,则输出“AB,CD”。
请改正程序中的错误,使它能得出正确的结果。
注意:部分源程序在文件MODIl.C中,不得增行或删行,也不得更改程序的结构!
第5题:
下列给定程序中,函数proc()的作用是:将字符串tt中的大写字母都改为对应的小写字母,其他字符不变。
例如,若输入“I,anl,A,Student”,则输出“i,am,a,student”。
请修改程序中的错误。使它能得到正确结果。
注意:不要改动main()函数,不得增行或删行,也不得更改程序的结构。
试题程序: