填空题

下列给定程序中,函数proc()的功能是:在字符串的最前端加入m个*号,形成新串,并且覆盖原串。
例如,用户输入字符串abcd(以回车键结束),然后输入m值为3,则结果为***abcd。
注意:字符串的长度最长允许79。
请修改函数proc()中的错误,使它能得出正确的结果。
注意:不要改动main()函数,不得增行或删行,也不得更改程序的结构。
试题程序:
#include<stdlib.h>
#include<stdio.h)
#include<string.h>
#include<conio.h>
void proc(char str[], int m)

char a[80], *p;
int i;
//************found*************
str=p;
for(i=0; i<m; i++)a[i]=’*’;
do
a[i]=*p;
//************found*************
i++;

while(*p);
//************found*************
a[i]=0;
strcpy(str, a);

void main()
int m; char str [so];
system("CLS");
printf("\nEnter a string: "); gets(str);
printf("\nThe string: %s\n", str);
printf("\nEnter n(number of *): ");
scanf("%d", &m);
proc(str, m);
printf("\nThe string after inster: %s\n", str);

【参考答案】

(1)错误:str=p; 正确:p=str;
(2)错误:i++; 正确:i++; P++;
......

(↓↓↓ 点击下方‘点击查看答案’看完整答案、解析 ↓↓↓)
热门 试题

填空题
*p==t