如何运用C语言将所读取的资料与堆叠和佇列作结合??

我想请问各位C语言达人们,如何运用C语言将"读取的资料"与"堆叠"和"佇列"作结合??
比方说:
我先从外部汇入一笔"纯英文字母"的txt档(里面包含了"大写字母"与"小写字母").
再来依照英文字母的大小写,将大写的英文字母丢入佇列中,然后再将小写的英文字母丢入堆叠中.
最后再将这个已经完成的"堆叠"以及"佇列"显示在萤幕上.

评论(4)

各位C语言达人大家好!!
我有个关于"C语言"方面的问题想要请教各位.
我想要请问各位C语言达人,如何运用C语言将所读取的档案内容作英文字母大小写的区分??
比方说:
我先从外部读取一笔名为abc.txt的档案,其内容为ABCDEFabcdef.
再来,先输出该笔档案的内容为ABCDEFabcdef.
最后,经由大小写的分类,输出大写为ABCDEF,小写为abcdef.

堆叠的程式段:
#defineBUFFER_SIZE20
structstack{
      intpt;
      cahrbuf[BUFFER_SIZE];
};
voids_init(structstack*st)
{
      st->pt=0;
}
bools_push(structstack*st,charch)
{
      if(st->pt<BUFFER_SIZE){
          st->buf[st->pt++]=ch;

佇列的程式段:
#defineBUFFER_SIZE20
structqueue{
      intfront;
      intback;
      cahrbuf[BUFFER_SIZE+1];
};
voidq_init(structqueue*st)
{
      st->front=0;
      st->back=0;
}
boolq_push(structqueue*st,charch)

#defineBUFFER_SIZE100
stacks;
queueq;
inti;
charfile[BUFFER_SIZE];
读资料到file
s_init(&s);
q_init(&q);
for(i=0;i<strlen(file);i++){
    if((0x41<=file[i])&&(file[i]<=0x5A))q_push(&q,file[i]);
    elseif((0x61<=file[i])&&(file[i]<=0x7A))s_push(&s,file[i]);

评论前需先登录。