问题 填空题

请补充函数fun(),该函数的功能是:依次取出字符串中所有的小写字母以形成新的字符串,并取代原字符串。
注意:部分源程序给出如下。
请勿改动主函数main和其他函数中的任何内容,仅在函数fun()的横线上填入所编写的若干表达式或语句。
试题程序:
#include<stdio.h>
#include<conio.h>
void fun(char *s)

int i=0;
char *p=s;
while( 【1】 )

if (*p>=’a’&&*p<=’z’)

s[i]=*p;
【2】 ;

p++;

s[i]= 【3】 ;
main()

char str[80];
clrscr();
printf("\nEnter a string:");
gets(str);
printf("\n\nThe string is:\%s\n",str);
fun(str);
printf("\n\nThe string of changing
is:\%s\n",str);

答案

参考答案:[1] *p [2] i++ [3] ’\0’

解析: 填空1:while循环的循环条件是指针p所指的字符不是’\0’,也就是说,当处理到字符串最后的结束标记字符 ’\0’时,while循环结束。填空2:如果指针p所指的字符为小写字母,则将这个字符存于原字符串s中,同时,下标自加1,为下一次存放做准备。填空3:在取出所有小写字母并存于原字符串s后,要注意在最后加上字符串结束标志符’\0’。

填空题
多项选择题