南湖虫子论坛深切关注灾区 我们和灾区人民永远在一起!
 20 12
发新话题
打印

[求助] C++的题紧急求助!!!

本主题由 System 于 2007-8-3 05:00 解除限时高亮

C++的题紧急求助!!!

1.构造一个Human类,然后声明一个Human对象的指针,一个Human成员函数的指针,并通过指针来进行测试。

2.编写一个函数,统计一跳英文句子中字母出现的个数,在主程序中实现输入输出。



紧急求助以上两题,会C++的同学快帮帮我,救人一命胜造七级浮图,感谢感谢,答对的同学我将送道具金钱卡以示感谢!!!!

TOP

第一题,re::
我再回忆一下……

第二题:
不知道是不是这样的,统计字母个数调用函数strlen()就是了……

#include <iostream>
#include <string>
using namespace std;

void main()
{
static char s[10]="student";
int len;
len =strlen(s);
printf("len=%d",len);
}
我不在江湖,江湖却有我的传说……

TOP

你还没回忆出第一道么....T-T

TOP

re::

请问豚同学,成员函数有哪些?

私有,公有,保护都是哪些?

要实现的功能?
我不在江湖,江湖却有我的传说……

TOP

嘿嘿

这个问题应该问我撒

风起个白痴  

人家问是统计字符出现个数  而不是字符串长度

嘎嘎

[ 本帖最后由 Dragonsoul 于 2007-8-2 17:34 编辑 ]

TOP

1、类用class 直接声明
Human对象的指针 用 Human * P;
Human成员函数的指针 用 Human::*q;
使用的时候使用 Human a;
a.*p()来使用

不知道对不对;

2、
使用GetWindowText获得活动文本框内容和要查询字母内容
然后使用.Find来查找统计

[ 本帖最后由 E.shine 于 2007-8-31 09:15 编辑 ]

TOP

第二题的代码:

#include <studio.h>
#include <string.h>
#include <ctype.h>

char str[255];
char count[26];

main()
{
   int j;
   scanf ("请输入句子(255字节以内):\n%s",str);
   for (j=0,str[j],j++)
   {
      if (str=' ') ++j;
      ++count[tolower(str[j])-'a'];
   };
   for (j=0,j<26,j++) printf ("%c在句中出现%d次",'a'+j,count[j]);
   return 0;
}

[ 本帖最后由 弈秋 于 2007-8-30 18:42 编辑 ]

TOP

都系高手……
我不在江湖,江湖却有我的传说……

TOP

好像有错误,还在郁闷中······

TOP

我不搞C++好多年

可以去CSDN问问
如果说一颗豆是相思 我愿为你在夜间种豆 ------to my love: Jean

TOP

楼上的高手……好久不出现鸟

关注http://xydx.blogbus.com,持续更新中

TOP

引用:
原帖由 弈秋 于 2007-8-30 17:00 发表
第二题的代码:

#include
#include
#include

char str[255];
char count[26];

main()
{
   int j;
   scanf ("请输入句子(255字节以内):\n%s",str);
   for (j=0,str[j],j++)
   {
    ...
这位的意思好像是统计所有26个字母啊?
我不在江湖,江湖却有我的传说……

TOP

#include<stdio.h>
#include<string.h>

main()
{

   int i,j,len,n;
   char str[200];





   printf("\nInput a string:");
   scanf("%s",str);

   len=strlen(str);
   printf("%d",len);

   for(i=97;i<=122;i++)
    {   char ch=i;
        n=0;
     for(j=0;j<=len;j++)
       {
         if(str[j]==ch)
           n++;

       }
     printf("%c degeshu:%d\n",ch,n);

     }

   for(i=65;i<=90;i++)
    {   char ch=i;
        n=0;
     for(j=0;j<=len;j++)
       {
         if(str[j]==ch)
           n++;

       }
     printf("%c degeshu:%d\n",ch,n);

     }
}
我不在江湖,江湖却有我的传说……

TOP

上面的程序是自己输入字符串,然后从a~z,A~Z逐一进行统计,并输出所有结果……

可能过程比较繁琐,因为真的不知道怎么把大小写一起来统计……

re::

看7楼的tolower好像可以吧大小写一起转换,再试一下……
我不在江湖,江湖却有我的传说……

TOP

按照7楼的提示改了一下

#include<stdio.h>
#include<string.h>
#include <ctype.h>


main()
{

   int i,j,len,n;
   char str[200];

   printf("\nInput a string:");
   scanf("%s",str);

   len=strlen(str);
   printf("zifuchuanchangduwei:%d\n",len);

   for(i=97;i<=122;i++)
    {   char ch=i;
        n=0;
     for(j=0;j<=len;j++)
       {
         if(tolower(str[j])==ch)
           n++;

       }
     printf("%c degeshu:%d\n",ch,n);

    }
    getch();
   }
我不在江湖,江湖却有我的传说……

TOP

 20 12
发新话题