问题 单项选择题 A2型题

患者女性,28岁,产后3天,高热,血压70/40mmHg,恶露奇臭,四肢及躯干皮肤呈大片状瘀斑,既往无肝炎及出血病史。血红蛋白90g/L,白细胞4.0×109/L,血小板进行性下降,最低为30×109/L,PT20秒(对照13秒),APTT65秒(对照45秒),3P(+),血FDP190mg/L,纤维蛋白原测定1.7g/L,D-二聚体(++)。出血原因可能为 ()

A.血小板减少性紫癜

B.DIC

C.过敏性紫癜

D.骨髓增生异常综合征

E.再生障碍性贫血

答案

参考答案:B

填空题

[说明]
设一个环上有编号为0~n-1的n粒颜色不尽相同的珠子(每粒珠子颜色用字母表示,n粒珠子的颜色由输入的字符串表示)。从环上的某两粒珠子间剪开,则环上珠子形成一个序列然后按以下规则从序列中取走珠子:首先从序列左端取走所有连续的同色珠子; 然后从序列右端在剩下的珠子中取走所有连续的同色珠子,两者之和为该剪开处可取走珠子的粒数。在不同位置剪开,能取走的珠子也不尽相同。
本程序所求的是在环上哪个位置剪开,按上述规则可取走的珠子粒数最多。程序中用数组存储字符串。例如:10粒珠子颜色对应字符串为“aaabbbadcc”,在0号珠子前剪开,序列为aaabbbadcc,从左端取走3粒a色珠子,从右端取走2粒c色珠子,共取走5粒珠子。若在3号珠子前剪开,即bbbadccaaa,共取走6粒珠子。
[函数]
int count (char *s,int start,int end)
int i,c=0, color=s[start],step=(start>end)-1:1;
for i=start; s[i] ==color; i+=step)
if (step>0 && i>end || (1) ) break;
(2) ;

return c:

void main()
char t,s[120];
int i,j,c,len,maxc,cut=0;
printf("请输入环上代表不同颜色珠子字符串:");
scanf("%s”,s);
len=strlen(s);
for (i=maxc=0; i<len; i++)( /*尝试不同的剪开方式*/
c=count (s, 0,len-1);
if(c<len) c+=count( (3) );
if (c>maxc)cut=i; maxc=c;
/*数组s的元素循环向左移动一个位置*/
t=s[0];
for(j=1; j<len; j++) (4) ;
(5) ;

printf("在第%d号珠子前面剪开,可以取走%d个珠子.\n",cut,maxc);

问答题