用scanf输入字符时,字符串中不能包含空格()
- · 有7位网友选择 错,占比87.5%
- · 有1位网友选择 对,占比12.5%
A.scanf(“%s”,a)
B.gets(a)
C.scanf(“%s”,&a)
D.getchar(a)
A.在scanf函数的格式串中,必须有与输入项一一对应的格式转换说明符
B.只能在printf函数中指定输入数据的宽度,而不能在scanf函数中指定输入数据占的宽度
C.scanf函数中的字符串,是提示程序员的,输入数据时不必管它
D.复合语句也被称为语句块,它至少要包含两条语句
请补充函数fun(),该函数的功能是按条件删除一个字符串指定字符一半的数目,具体要求如下:如果该字符串所包含的指定字符的个数是奇数,则不予删除,如果其数目是偶数,则删除原串后半部分的指定字符。其中,a指向原字符串,删除后的字符串存放在b所指的数组中,c中存放指定的字符。
例如:当a输入“abababa”,c=‘a’时,b的输出为“ababb”;
如果a的输入为“ababa”,则b的输出为“ababa”。
注意:部分源程序给出如下。
请勿改动主函数main和其他函数中的任何内容,仅在函数fun()的横线上填入所编写的若干表达式或语句。
试题程序:
include<stdio.h>
include<conio.h>
define LEN 80
void fun(char a[],char b[],char C)
{
int i=0,j=0;
int n=0;
int m=0;
while(a[i]!=‘\0’)
{
if(a[i]==c)
n++;
i++;
}
【 】;
if(n%2)
{
while(a[j]!='\0')
{
b[j]=a[j];
j++;
}
b[j]='\0';
}
else
while(a[i]!='\0')
{
b[j++]=a[i];
if(a[i]==c)
m+十;
if((m>n/2)&&(a[i]==c))
【 】;
i++;
}
【 】;
}
}
main()
{
char a[LEN],b[LEN];
char c;
clrscr();
printf("Enter the string:\n");
gets(a);
printf("Enter the character of the string deleted:");
scanf("%c",&c);
fun(a,b,c);
printf("The new string iS:%s\n",b);
}
为了保护您的账号安全,请在“简答题”公众号进行验证,点击“官网服务”-“账号验证”后输入验证码“”完成验证,验证成功后方可继续查看答案!