请补充main函数,该函数的功能是:把一个字符串中的所有小写字母字符全部转换成大写字母字符,其他字符不变,结果保存原来的字符串中。
例如:当str[N]“123 abcdef ABCDEF!”,结果输出:
“123ABCDEFABCDEF!”。
注意:部分源程序给出如下。
请勿改动主函数main和其他函数中的任何内容,仅在函数fun的横线上填入所编写的若干表达式或语句。
试题程序:
#include<stdio.h>
#include<stdlib.h>
#include<conio.h>
#define N 80
void main()
int j;
char str[N]="123abcdef ABCDEF!";
char *pf=str;
clrscr();
printf("*** original string ***\n");
puts(str);
【1】 ;
while(*(pf+j)).
if(*(pf+j)>=’a’&&* (pf+j)<=’z’)
*(pf+j)= 【2】 ;
j++;
else
【3】 ;
printf("****** new string ******\n");
puts(str);
system("pause");
参考答案:【1】j=0 【2】*(pf+j)-32 【3】j++
解析:填空1:变量j声明时没有初始化,而后面程序用到j,所以在这里对j初始化为0。填空2:将小写字母转换为对应的大写字母的方法是,小写字母的ASCII码减去32,得到对应的大写字母的ASCII码。填空3:如果当前字符不是小写字母,则不做任何处理,使指针指向下一个字符,准备进行判断。