2023-12-04 12:24来源:m.sf1369.com作者:宇宇
不难理解,整个算法就是:先找p字串开头的空格,全部忽略掉,然后将所有非空字符复制到q,当再次遇到空格时,将所有的空格压缩成一个'_',然后再将所有非空字信瞎符复制到q,这样循环直至p字串处理完毕。具体解释如下滑枝空。
while ( *p!='\0' )
{
for (; *p==' '搭轿; p++ )
; //这个for循环执行空语句,作用是看到p字串中有空格就跳过。
if ( q>b && *p!='\0' ) /*?*/ // 之所以有q>b,为的是忽略p字串中开头的所有空格。
*(q++) = '_'; //当p字串还没有结束,而且不是q字串的第一个字符时,q字串加一个'_',并下移一位。
for ( ; *p!=' ' && *p!='\0'; p++ ) /*?*/ //这里容易理解,当p中不是空格和字符串结束符时循环
*(q++) = *p; //对所有p字串中的非空格和字符'\0',均复制到q中。
}
*q = '\0'; //给q字串加个结束符。
#include <iostream.h>
#include <fstream.h>
#include <stdio.h>
void main()
{
char id[10], name[10], score[5];
FILE *outfile;
ifstream in(score.dat);
outfile = fopen(new_score.dat, w);
while(!in.eof())
{
in >> id >> name >> score;
fprintf(outfile, %-15s%-15s%-15s\n, name, id, score);
}
in.close();
}
输出文件缺枯格式为:
Name #ID Score
Macgrady 301101 80
Donken 301102 90
Kobe 301103 88
Jordan 301104 91
James 301105 89
James 301105 89
我可以帮助你,你先设置我最拿扮昌佳答案后,我百度Hii教你。
你消扒的串号我已经记下,采纳后我会帮你制作