| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 986 人关注过本帖
标题:= = 哪里错了?总说我int 用得不对。。。
只看楼主 加入收藏
宅云云丶
Rank: 2
等 级:论坛游民
帖 子:71
专家分:11
注 册:2011-10-25
收藏
得分:0 
回复 10楼 embed_xuel
我看了。。。他的意思是函数类型应该与形参 与返回值一样,但是 既有指针 又有 整形,,这个怎么整?
还有函数值赋给另外一个变量,这个变量应该和函数类型一样吧。。
我就是按照这个思想改的,然后我就悲剧了。。。
程序代码:
#include<stdio.h>
int main()
{
    int strSub(char * s, char * sSub);
    int s[100],sSub[100],sFind[4];
    printf("请输入一串字符:\n");
    int i;
    for(i=0;i<100;i++)
        scanf("%c",&s[i]);
    printf("请输入你要截取的字符下标:\n");
    int start;
    scanf("%d",&start);
    printf("请输入你要截取的长度:\n");
    int length;
    scanf("%d",&length);
    printf("请输入你要查找的4个字符:\n");
    int j;
    for(j=0;j<4;j++)
        scanf("%s",sFind[j]);
    int k;
    sSub[k]=int strSub(char * s, char * sSub);
    for(k=0;k<100;k++)
        printf("%c",sSub[k]);
    char n;
    n=int strCount(char * s, char * sFind);
    printf("%c",n);
    return 0;
  
    


}
int strSub(char * s, char * sSub)
{
    int i,k;
    int start,length;
    for(i=start,k=0;i<start+length,k<100;i++,k++)
    {
        * (sSub+k)=* (s+i);
    }
    return(sSub[k]);
}
int strCount(char * s, char * sFind)
{
    int j;
    char n;
    for(j=0;j<4;j++)
    {
        if(* sFind==* (s+j)&&* (sFind+1)==*(s+j+1)&&* (sFind+2)==*(s+j+2)&&*(sFind+3)==* (s+j+3))
            n=48+1;
    }
    return(n);
}

。。
2011-11-30 21:19
embed_xuel
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
等 级:贵宾
威 望:58
帖 子:3845
专家分:11385
注 册:2011-9-13
收藏
得分:0 
回复 11楼 宅云云丶
书上有例子吗?

总有那身价贱的人给作业贴回复完整的代码
2011-11-30 21:33
wang155423
Rank: 6Rank: 6
等 级:侠之大者
帖 子:216
专家分:408
注 册:2011-9-4
收藏
得分:0 
好乱啊
2011-11-30 21:34
宅云云丶
Rank: 2
等 级:论坛游民
帖 子:71
专家分:11
注 册:2011-10-25
收藏
得分:0 
回复 12楼 embed_xuel
没有关于字符数组的函数的;其他的我看了看 就改成void了 可以运行 但是函数进不去;
可能是逻辑问题了
程序代码:
#include<stdio.h>
int main()
{
   void strSub(char * s, int start, int length, char * sSub) ;
   void strCount(char * s, char * sFind);
    int s[100],sSub[10],sFind[4];
    printf("请输入十个字符:\n");
    int i;
    for(i=0;i<10;i++)
        scanf("%c",&s[i]);
    printf("请输入你要截取的字符下标:\n");
    int start;
    scanf("%d",&start);
    printf("请输入你要截取的长度:\n");
    int length;
    scanf("%d",&length);
    printf("请输入你要查找的4个字符:\n");
    int j;
    for(j=0;j<4;j++)
        scanf("%s",sFind[j]);
    int k;
   
    void strSub( * s,   start, length,  * sSub);
    for(k=0;k<100;k++)
        printf("%c",sSub[k]);
    int n;
    void strCount(char * s, char * sFind);
    printf("%d",n);
    return 0;
  
    


}
void strSub(char * s, int start, int length, char * sSub)
{
    int i,k;
   
    for(i=start,k=0;i<start+length,k<100;i++,k++)
    {
        * (sSub+k)=* (s+i);
    }
   
}
void strCount(char * s, char * sFind)
{
    int j;
    int n=0;
    for(j=0;j<4;j++)
    {
        if(* sFind==* (s+j)&&* (sFind+1)==*(s+j+1)&&* (sFind+2)==*(s+j+2)&&*(sFind+3)==* (s+j+3))
            n=n+1;
    }
   
}


 
2011-11-30 21:52
宅云云丶
Rank: 2
等 级:论坛游民
帖 子:71
专家分:11
注 册:2011-10-25
收藏
得分:0 
回复 13楼 wang155423
0 0
程序代码:
#include<stdio.h>
int main()
{
   void strSub(char * s, int start, int length, char * sSub) ;
   void strCount(char * s, char * sFind);
    int s[100],sSub[10],sFind[4];
    printf("请输入十个字符:\n");
    int i;
    for(i=0;i<10;i++)
        scanf("%c",&s[i]);
    printf("请输入你要截取的字符下标:\n");
    int start;
    scanf("%d",&start);
    printf("请输入你要截取的长度:\n");
    int length;
    scanf("%d",&length);
    printf("请输入你要查找的4个字符:\n");
    int j;
    for(j=0;j<4;j++)
        scanf("%s",sFind[j]);
    int k;
   
    void strSub( * s,   start, length,  * sSub);
    for(k=0;k<100;k++)
        printf("%c",sSub[k]);
    int n;
    void strCount(char * s, char * sFind);
    printf("%d",n);
    return 0;
  
    


}
void strSub(char * s, int start, int length, char * sSub)
{
    int i,k;
   
    for(i=start,k=0;i<start+length,k<100;i++,k++)
    {
        * (sSub+k)=* (s+i);
    }
   
}
void strCount(char * s, char * sFind)
{
    int j;
    int n=0;
    for(j=0;j<4;j++)
    {
        if(* sFind==* (s+j)&&* (sFind+1)==*(s+j+1)&&* (sFind+2)==*(s+j+2)&&*(sFind+3)==* (s+j+3))
            n=n+1;
    }
   
}

这个好一点了吧。。
2011-11-30 21:53
Glost
Rank: 2
来 自:湖北
等 级:论坛游民
帖 子:54
专家分:48
注 册:2010-10-5
收藏
得分:0 
提取字符串子串的功能是吧,下面的代码不知道是否符合你的要求,看了点你的代码,没太看懂...
#include <stdio.h>
char* strSub(char *s,int st,int l,char *d)
{
    int i,j;

    for(i=st,j=0;j<l;j++,i++)
    {
        d[j] = s[i];
        
    }
    d[j+1] = '\0';
    return d;
}
int main()
{
    char str[20],dStr[10];
    int start,length;

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

    printf("请选择start的下标:");
    scanf("%d",&start);

    printf("请输入所取字符的长度:");
    scanf("%d",&length);

    printf("%s\n",strSub(str,start,length,dStr));

    return 0;
}

只有一条路不能选择—那就是放弃的路;只有一条路不能拒绝—那就是成长的路。
2011-11-30 23:05
AHUSPEED紫枫
Rank: 1
等 级:新手上路
帖 子:11
专家分:3
注 册:2011-2-3
收藏
得分:0 
ls可以正常运行 看LZ的表示鸭梨很大
2011-12-01 12:30
youlishen
Rank: 2
等 级:论坛游民
帖 子:6
专家分:14
注 册:2011-9-25
收藏
得分:0 
这真是让人怎么说你呢
调用函数不需要把返回类型加上去的
2011-12-01 15:15
love24114
Rank: 5Rank: 5
等 级:职业侠客
威 望:1
帖 子:223
专家分:399
注 册:2011-7-11
收藏
得分:0 
哥们,听楼上劝吧,再看看函数那章。
2011-12-01 17:01
love24114
Rank: 5Rank: 5
等 级:职业侠客
威 望:1
帖 子:223
专家分:399
注 册:2011-7-11
收藏
得分:0 
都学到指针了,为什么函数还搞不清楚?
2011-12-01 17:02
快速回复:= = 哪里错了?总说我int 用得不对。。。
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.028381 second(s), 9 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved