博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
《c程序设计语言》读书笔记-4.1-判断字符串在另一个字符串中的位置
阅读量:6010 次
发布时间:2019-06-20

本文共 1536 字,大约阅读时间需要 5 分钟。

#include 
#include
#include
#include
#include
#include
#define Num 20int strindex(char s[],char t[]){ int i,j,k; int position = -1; for(i = 0;s[i] != '\0';i++) { for(j = i,k = 0;t[k] != '\0' && s[j] == t[k];j++,k++) ; if(k > 0 && t[k] == '\0') position = i; } return position;}int main(){ char str1[20],str2[20]; char c; int i = 0,j = 0; int position; printf("please input string1\n"); while((c = getchar()) != '\n' && i < Num) { str1[i++] = c; } str1[i] = '\0'; printf("please input string2\n"); while((c = getchar()) != '\n' && j < Num) { str2[j++] = c; } str2[j] = '\0'; position = strindex(str1,str2); printf("%d\n",position); return 0;}

上面的程序是正确的,可以正常运行得出结果,不过,我又编了下面的函数:

#include 
#include
#include
#include
#include
#include
int strindex(char s[],char t[]){ int i,j,k; int position = -1;printf("%d\n",strlen(s)); for(i = 0;i < strlen(s);i++) { printf("%d\n",i); for(j = i,k = 0;k < strlen(t) && s[j] == t[k];j++,k++) ; if(k > 0 && t[k] == '\0') position = i; } return position;}int main(){ char *str1,*str2; int i = 0,j = 0; int position; printf("please input string1\n"); gets(str1); printf("please input string2\n"); gets(str2); position = strindex(str1,str2); printf("%d\n",position); return 0;}

为了不定义数组的大小就用的指针,可是程序错了。。gets函数只能读入8个字符,这里面有问题,可是我不知道哪里错了,待看完指针那章看能不能解决!

 

转载于:https://www.cnblogs.com/batteryhp/p/5020459.html

你可能感兴趣的文章
在openSUSE 13.1中配置FTP服务器
查看>>
如何使用 Docker 快速配置数据科学开发环境?
查看>>
《ELK Stack权威指南(第2版)》一3.6 Java日志
查看>>
C++流的streambuf详解及TCP流的实现
查看>>
《WebGL入门指南》——第1章,第1.4节本章小结
查看>>
Angular从零到一1.6 引导过程
查看>>
《iOS 6核心开发手册(第4版)》——1.1节触摸
查看>>
《C#多线程编程实战(原书第2版)》——2.5 使用AutoResetEvent类
查看>>
《量化金融R语言初级教程》一2.5 协方差矩阵中的噪声
查看>>
并发网每月TOP10文章
查看>>
黑客究竟用什么姿势偷走了你的钱? | 硬创公开课
查看>>
超越Hadoop的大数据分析之第一章介绍:为什么超越Hadoop Map-Reduce
查看>>
暗渡陈仓:用低消耗设备进行破解和渗透测试3.6 本章附录:深入分析安装脚本...
查看>>
自己动手构造编译系统:编译、汇编与链接2.5 链接程序的设计
查看>>
深入SQLServer日志收缩
查看>>
Serverless日志处理挑战与方案
查看>>
Apache Common Math Stat
查看>>
Intellij idea配置scala开发环境
查看>>
《C++语言基础》实践项目——运算符重载(一)
查看>>
【云栖大会】云端商业,数据梦想
查看>>