| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 988 人关注过本帖
标题:= = 哪里错了?总说我int 用得不对。。。
取消只看楼主 加入收藏
宅云云丶
Rank: 2
等 级:论坛游民
帖 子:71
专家分:11
注 册:2011-10-25
结帖率:92.86%
收藏
 问题点数:0 回复次数:7 
= = 哪里错了?总说我int 用得不对。。。
程序代码:
# include <stdio.h>
int main()
{
    int strSub(char * s, int start, int length, char * sSub);
    char c[6];
    int k[6];
    int i;
    printf("请输入六个字母:\n");
    for(i=0;i<6;i++)
        scanf("%c",&c[i]);
    k[i]=int strSub(char * s, int start, int length, char * sSub);
    for(i=0;i<6;i++)
        printf("%c",k[i]);
    return 0;




}
int strSub(char * s, int start, int length, char * sSub)
{
    int i,j;
   
    char c[6],h,b[6];
   
    printf("请选择start的下标(务必小于5):\n");
    scanf("%d",&start);
    s=&c[start];
    printf("请输入所取字符的长度:\n");
    scanf("%d",&length);
   
    for(i=start,j=0;i<start+length,j<6;i++,j++)
    {
       
        * sSub=* s;
        b[j]=* sSub;
       
        start++;
    }
    return(b[j]);
   
}
2011-11-30 19:27
宅云云丶
Rank: 2
等 级:论坛游民
帖 子:71
专家分:11
注 册:2011-10-25
收藏
得分:0 
回复 2楼 beyondyf
= = 我知道了,是不是这么改?
k[i]=int strSub(char * c[6], int start, int length, char * sSub);

2011-11-30 19:52
宅云云丶
Rank: 2
等 级:论坛游民
帖 子:71
专家分:11
注 册:2011-10-25
收藏
得分:0 
回复 3楼 embed_xuel
= = ..我也很无奈。
我两个拿main函数分别写完,死活弄不成俩函数,再用main连在一起。。。。
2011-11-30 19:53
宅云云丶
Rank: 2
等 级:论坛游民
帖 子:71
专家分:11
注 册:2011-10-25
收藏
得分:0 
程序代码:
#include<stdio.h>
int main()
{
   
int strCount(char * s, char * sFind);
int num;
    char str1[100];

char str2[4];

    printf("put in 4 letters string:");
gets(str2);


printf("put in string:"); gets(str1);


num=int strCount(char * str1, char * str2);
printf("%d个",num);
return 0;






}
int strCount(char * s, char * sFind)
{

    char str1[100],str2[4];
    int num=0,i;
s=str1; sFind=str2;


for(i=0; str1[i]!=0;i++)
{ 

    if(*(s+i)==*sFind && *(s+i+1)==*(sFind+1) && *(s+i+2)==*(sFind+2))
        num++;
    }
printf("含有%s字符串",str2);


return(num);


}





一样的错误、、、、
2011-11-30 20:00
宅云云丶
Rank: 2
等 级:论坛游民
帖 子:71
专家分:11
注 册:2011-10-25
收藏
得分:0 
回复 7楼 beyondyf
程序代码:
#include<stdio.h>
int main()
{
    char strSub(char * s, char * sSub);
    char 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]=char strSub(char * s, char * sSub);
    for(k=0;k<100;k++)
        printf("%c",sSub[k]);
    char n;
    n=char strCount(char * s, char * sFind);
    printf("%c",n);
    return 0;
   
    


}
char 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]);
}
char 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);
}
还是不对。。。。。
why? char 也不对?!
2011-11-30 20:48
宅云云丶
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
宅云云丶
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
快速回复:= = 哪里错了?总说我int 用得不对。。。
数据加载中...
 
   



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

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