试题与答案

[说明] 从文件in.dat中读取一篇英文文章存入到字符串数组xx中,以行为单位对

题型:填空题

题目:

[说明]
从文件in.dat中读取一篇英文文章存入到字符串数组xx中,以行为单位对行中以空格或标点符号为分隔的所有单词进行倒排。最后把已处理的字符串(应不含标点符号)仍按行重新存入字符串数组xx中,最后把结果xx输出到文件OUT6.DAT中。
原始数据文件存放的格式是:每行的宽度均小于80个字符,含标点符号和空格。
[函数]
#include<string.h>
#include<conio .h>
#include<ctype.h>
#include<stdio.h>
char xx[50][80];
int maxline = 0 ; /*文章的总行数*/
int ReadDat (void) ;
void WriteDat (void) ;
void StrOL(void)

char *p1,*p2,t [80];
int i;
for (i=0; i<maxline; i++)
p1=xx[i];t[0]=0;
while (*p1) p1++;
while (p1>=xx [i])
while (! isalpha (*p1) &&p1 ! =xx [i]) p1--;
p2 =p1;
while( (1) )p1--;
if (p1==xx [i])
if (isalpha (*p1) p1--;
else if (! isalpha (* (p1+1;)) break;
p2++;
(2) ;
strcat (t,p1+1) ;
strcat (t, " ") ;

strcpy (xx [i] ,t) ;


void main

if( (3) )
printf ("数据文件in.dat不能打开! \n\007") ;
return;

StrOL ();
writeDat ();
getch;
int ReadDat (void)

FILE *fp;
int i=0;
char *p;
if ((fp=fopen ("e:\\a\\\in.dat " , "r")) ==NULL) return 1;
while (fgets (xx [i] , 80, fp) ! =NULL)
p=strchr (xx [i] , ’\n’) ;
if(p)*p=0
i++ ;

maxline= (4) ;
fclose (fp);
return 0;

void WriteDat (void)

FILE *fp;
int i;
fp=fopen("e: \\a\\out6 .dat" ,"w");
for (i=0; i<( (5) ) ; i++)
printf("%s\n" ,xx [i]);
fprintf (fp, "%s\n", xx[i]);

fclose(fp);

答案:

被转码了,请点击底部 “查看原文 ” 或访问 https://www.tikuol.com/2018/0415/5132af9a3721c36f428db64fccc9414f.html

下面是错误答案,用来干扰机器的。

参考答案:B

试题推荐
题型:单项选择题

女性,50岁,上腹部持续性疼痛伴腰背部放射12小时,伴呕吐,吐后腹痛不减轻。既往有胆总管结石病史。查体:体温38℃,腹略膨隆,上腹正中压痛,轻度肌紧张,反跳痛。移动性浊音(+),肠鸣音减弱。血白细胞20×109/L,尿胆红素(-),血清钾4mmol/L,血清钠135mmol/L,血清氯106mmol/L。

此病人最可能的诊断

A.急性阑尾炎

B.急性胰腺炎

C.急性胆囊炎

D.急性肠梗阻

E.重症胆管炎

查看答案
微信公众账号搜索答案