问题 问答题

下列给定程序中函数fun的功能是:将tt所指字符串中的小写字母全部改为对应的大写字母,其他字符不变。
请改正程序中的错误,使它能得出正确的结果。
注意:不要改动main函数,不得增行或删行,也不得更改程序的结构!
试题程序:
#include <conio.h>
#include <stdio.h >
#include <string.h>
char* fun (char tt[])

int i;
for (i=0; tt[i]; i++)
/********** found********** /
if ((tt[i]>=’a’) ||(tt[i]<=’z’))
/********** found********** /
tt[i]+=32;
return (tt);

main ()

char tt[81];
printf ("\nPlease enter a string: ");
gets (tt);
printf ("\nThe result string is:
\n% s", fun(tt));

答案

参考答案:if(( tt[i]>=a’)&&( tt[i] <= ’z’)
(2) tt[i]-=32;
答案考生文件夹

解析: 本题考查:if语句条件表达式;小写字母转大写字母的方法。
[解题思路] (1)分析本题可知,要判断字符是否为小写字母,即判断其是否在a~z之间,所以这里需要进行连续的比较,用&&。
(2)从ASCII码表中可以看出,小写字母的ASCII码值比对应大写字母的ASCII值大32。将字符串中的小写字母改为大写字母的方法是:从字符串第一个字符开始,根据ASCII码值判断该字母是不是小写字母,若是,则ASCII码值减32即可。

填空题
单项选择题