初学者请教简单的C语言问题。。。

来源:百度知道 编辑:UC知道 时间:2024/05/12 14:42:51
程序改错题
gc404.c程序通过接受键盘输入的字符串,通过调用函数trimspace(),实现去掉字符串的前空格和尾空格。
程序有两处错误,请找出并修正,使之符合上述要求。不得增加行或删除行,也不得更改程序结构。

#include<string.h>
main()
{
char str[100];
void trimspace(char *);
gets(str);
trimspace(str);
puts(str);
}
/*------------Found Mistake Below------------*/
void trimspace(char *p)
{
char *q;
if(*p!='\0')
q=strlen(p);
else
return;
/*------------Found Mistake Below------------*/
for(;*q==' ';q--);
*q='\0';
for(q=p;*q==' ';q++);
strcpy(p,q);
return;
}

tk404.c找出xx[10]中最大的5个数,并按降序存入数组yy[5]中,要求不得改变数组xx[10]。程序采用以下算法:
1、kk数组的元素数值作为同下标xx数组元素的入选标记,初始化为零;
2、通过五次循环,每次找到一个最大的数;
3、上次循环已入选的大数,对应的kk数组元素赋值为1,下次不参加比较;
请在括号[ ]处补充完整程序,并删除[ ],运行测试,实现上述要求。不得增加行或删除行,也不得更改程序结构。

#include<stdio.h>
main()
{
int i,j,p;
int kk[10]={0};
float

第一个:
1、if(*p!='\0')应该是==。一个=是附值;
2、for(;*q==' ';q--);q没初始化;

对不起,我刚刚才自学到循环,帮不了你,可以的话请你加Q群20063697大家一起讨论!