精华内容
下载资源
问答
  • 题目要求:利用指针编写程序实现在一个字符串的隨意位置上插入一个字符(要求插入字符的位置由用户从键盘输入)。 先说一说我的思路: 首先提醒用户输入一段字符串; 输入要添加的字符; 输入要添加的位置; 将添加后...

    题目要求:利用指针编写程序实现在一个字符串的隨意位置上插入一个字符(要求插入字符的位置由用户从键盘输入)。
    先说一说我的思路:
    首先提醒用户输入一段字符串;
    输入要添加的字符;
    输入要添加的位置;
    将添加后的数组向后移动一位,
    其余不变;

    话不多说,上代码

    #include<stdio.h> 
    #include<string.h>
    int main(void)
    {
    	int i,weizhi;    
     	char c,s[50];    
     	printf("请输入字符串s\n");
     	gets(s);
    	printf("\ns字符串为%s\n",s);
     	printf("\n请输入要插入的字符%c\n");
    	c=getchar();
    	printf("请输入要插入字符的位置(0--%d)",strlen(s));
    	scanf("%d",&weizhi); 
    	for(i=strlen(s);i>=weizhi&&i>=0;i--) 
      	{ 
    	  s[i+1]=s[i];
    	}
    	  s[i+1]=c;
     	  printf("\n插入字符后字符串s:%s\n",s);
     	  return 0; 
    	}
    

    这个的操作没有用到指针,不过操作较为简单,理解容易。
    之所以为什么要从strlen(s)开始,weizhi结束,
    即将最后一位向后移动,将倒数第二位移动到最后一位
    是因为从后面开始移动不会影响到数组内容,
    若是从前面开始,则会对后面的数组进行覆盖,
    进而对结果造成影响,

    再看一个

    #include <stdio.h> 
    #include <string.h>
    
    void insert(char str[],char c,int n) {
    	int i = 0;
    	if((n - 1) >= strlen(str)) {
    			*(str+n-1) = c;
    	}
    	if((n - 1) >= 0 && (n-1) < strlen(str)) {
    		for(i = strlen(str); i >= n; i--) {
    			*(str+i) = *(str+i-1);
    		}
    		*(str+n-1) = c;
    	}
    }
    int main(void) {
    	char s[100],c;
    	gets(s);
    	int n,i;
    	scanf("%d %c",&n,&c);
    	insert(s,c,n);
    	for(i = 0; i < strlen(s); i++) {
    		printf("%c",s[i]);
    	}
    	return 0;
    }
    
    

    小伙伴们先自行理解。代码我就先放到这里了。

    展开全文
  • 输入数据可以是组,每组是一个字符串。 Ouput 输出将这个字符串转换为int整数的形式。说明,如果输入字符串的第一个字符为“-”,则此数为负数,如果第一个字符为“+”或没有符号表示为正数。如果第一个字符或...

    題目内容:
    问题描述:本题利用指针完成将一个数字字符串转换为int整数的程序。
    Input
    输入数据可以是多组,每组是一个字符串。
    Ouput
    输出将这个字符串转换为int整数的形式。说明,如果输入字符串的第一个字符为“-”,则此数为负数,如果第一个字符为“+”或没有符号表示为正数。如果第一个字符或符号位后的第一个字符为非数字字符(‘0’——‘9’之间的为数字字符),则输出结果为0.字符串中其他位置上遇到非数字字符,则将该字符前面的数字字符转换为整数。
    输入输出说明:

    Input

    123
    -12345
    +678
    -12a
    +s
    -q
    ksd


    Output

    123
    -12345
    678
    -12
    0
    0
    0


    代码编辑:


    #include <stdio.h>
    #include <stdlib.h>
    
    int atoi(char *p)
    {
        int i,result=0;
        int j; //表示当前扫描到非数字字符的个数
    
        if(p[0]!='+'&&p[0]!='-'&&(p[0]>'9'||p[0]<'0'))
            return 0;                  //非法字符
    
        for(i=0,j=0; p[i]!='\0'; i++)
        {
            if(p[i]>='0'&&p[i]<='9')
                result=result*10+(p[i]-'0');//把字符数字转化为整型数字:ch - '0'
            else
                j++;
    
            if(p[0]=='-'||p[0]=='+')
            {//当数据以正负号开头时,第2次遇到非数字字符时(j=2),终止扫描
                if(j==2)
                    break;
            }
            else
            {//数据不是以正负号开头时,一遇到非数字字符,终止扫描
                if(j==1)
                    break;
            }
        }
        if(p[0]=='-')
            result=-result;
        return result;
    }
    
    int main()
    {
        char str[50];
        int k;
        while(scanf("%s",str)!=-1)
        {
            k=atoi(str);
            printf("%d\n",k);
        }
        return 0;
    }
    

    转载于:https://www.cnblogs.com/zhanyeye/p/9746133.html

    展开全文
  • 编写程序,检查字符串是否是回文,主函数输入个字符串,输出该字符串是否是回文的信息。编程新人,请指教! 程序代码 # include <stdio.h> # include <string.h> # define N 20 void main() { ...

    编写程序,检查字符串是否是回文,主函数输入一个字符串,输出该字符串是否是回文的信息。编程新人,请多指教!

    程序代码

    # include <stdio.h>
    # include <string.h>
    # define N 20
    
    void main()
    {
    	char str[N];
    	char *p;
    	char *q;
    
    	start: //可以删除
    
    	printf("输入字符串: ");
    	gets(str);
    
    	p=str;
    	q=str+strlen(str)-1;
    
    	while(p<=q && *p==*q)
    	{
    		p++;
            q--;
        }
        if(p<=q)
        	printf("结果:不是回文\n");
        else
        	printf("结果:是回文\n");
    	
    	system("pause"); //可以删除
        goto start; //可以删除
    }
    

    运行结果

    在这里插入图片描述

    展开全文
  • 指针字符串

    2017-03-30 22:05:44
    输入数据可以是组,每组是一个字符串。 Ouput 输出将这个字符串转换为int整数的形式。说明,如果输入字符串的第一个字符为“-”,则此数为负数,如果第一个字符为“+”或没有符号表示为正数。如果第一个字符或...
    问题描述:本题利用指针完成将一个数字字符串转换为int整数的程序。
    Input
    输入数据可以是多组,每组是一个字符串。
    Ouput
    输出将这个字符串转换为int整数的形式。说明,如果输入字符串的第一个字符为“-”,则此数为负数,如果第一个字符为“+”或没有符号表示为正数。如果第一个字符或符号位后的第一个字符为非数字字符(‘0’——‘9’之间的为数字字符),则输出结果为0.字符串中其他位置上遇到非数字字符,则将该字符前面的数字字符转换为整数。
    #include <stdio.h>
    #include <stdlib.h>
    int p_atoi(char *p)
    { int r=0,f=1,f2=1;
         while(*p!=0){
       if(*p>='0'&&*p<='9'&&f2==1){
                r=r*10+(*p-'0');
               }
          else{
            if(*p=='-'){f=-1;}
            else{ if(*p=='+'){f=1;}
               else{
                  f2=0;
                  break;}
             } }
        p++;}
    return r*f;
    }
    int main()
    {
        char str[50];int k;
        while(scanf("%s",str)!=-1)
        {
            k=p_atoi(str);
            printf("%d\n",k);
        }
        return 0;
    }

    展开全文
  • python怎么实现ip资源自动分配所说所有的变量都是对象。 对象在python里,其实是一个指针,指向... class A: myname="class a" 上如何检查一个字符串在python的IP地址模式匹配用python编写“输入一个或多个网址返回i...
  • 输入多字符串 输出 输出对应的字符串 样例输入 asdfghjkl qwerty 样例输出(需要两换行符) fdsaglkjh ewqytr #include<stdio.h> #include<string.h> void swap(char *p1,char *p2);//利用指针交换...
  • 利用指针,一句话实现定义一计算字符串长度的函数 Description 自定义一函数int length(char *s),函数返回字符串s的长度。在main函数中输入字符串(长度小于80),调用该函数并输出其长度 Input 组测试数据,...
  • 首先定义2个指针src, dest全部指向输入字符串的第一个字符,然后用src遍历整个字符串。根据对字符串的不同处理,决定是将src指向的字符拷贝到dest,做一些处理后拷贝到dest,还是直接忽略继续处理下一个字符。 ...
  • 1有趣的“回文”检测(4分) 题目内容: 英文中有很的回文词,回文词的拼法十分有趣,无论是从前往后拼读,还是...(1)设置两个指针pStart和pEnd,让pStart指向字符串首部,让pEnd指向字符串尾部。 (2)利用循环从
  • 说明:设置显示行的宽度,默认是80个字符 用法:set linesize 120 10. 显示页数 (pagesize) 说明:设置每页显示的行数,默认是14页 用法:set pagesize 20 三、 用户管理 1. 创建用户 说明:Oracle中需要创建用户...
  • 又见回文()

    2017-08-02 16:42:43
    Think: 基础题, 解题方法有很 例如 直接暴力, 指针 , 顺序表 等都能解题 本篇blog所采用的方法是 利用 串 解题 注意点就是 空格不处理Problem ...Input有输入,每行输入一串字符,保证字符串长度不会
  • 有趣的“回文”检测(用指针实现) 英文中有很的回文词,回文词的拼法十分有趣,无论是从前往后拼读,...(1)设置两个指针pStart和pEnd,让pStart指向字符串首部,让pEnd指向字符串尾部。 (2)利用循环从字符串
  • 编一程序,读入用户输入的一串先序遍历字符串,根据此字符串建立一二叉树(以指针方式存储)。 例如如下的先序遍历字符串: ABC##DE#G##F### 其中“#”表示的是空格,空格字符代表空树。建立起此二叉树以后,再...
  • 编一程序,读入用户输入的一串先序遍历字符串,根据此字符串建立一二叉树(以指针方式存储)。 例如如下的先序遍历字符串: ABC##DE#G##F### 其中“#”表示的是空格,空格字符代表空树。建立起此二叉树以后,再...
  • 用于在输入的一串字符串中匹配有限组“字典”中的子串 它与普通字符串匹配的不同点在于同时与所有字典串进行匹配 AC自动机在匹配时如果当前字符匹配失败,那么利用fail指针进行跳转。由此可知如果跳转,跳转到的串的...
  • 用于在输入的一串字符串中匹配有限组“字典”中的子串它与普通字符串匹配的不同点在于同时与所有字典串进行匹配AC自动机在匹配时如果当前字符匹配失败,那么利用fail指针进行跳转。由此可知如果跳转,跳转到的串的...
  • 220经典C语言源码

    千次下载 热门讨论 2013-08-16 23:35:01
    002 运行多个源文件 003 求整数之积 004 比较实数大小 005 字符的输出 006 显示变量所占字节数 007 自增/自减运算 008 数列求和 009 乘法口诀表 010 猜数字游戏 011 模拟ATM(自动柜员机)界面 012 用一维...
  • 200经典C程序【源码】

    千次下载 热门讨论 2013-08-08 10:48:40
    002 运行多个源文件 003 求整数之积 004 比较实数大小 005 字符的输出 006 显示变量所占字节数 007 自增/自减运算 008 数列求和 009 乘法口诀表 010 猜数字游戏 011 模拟ATM(自动柜员机)界面 012 用一维...
  • 220C语言经典代码

    2016-07-06 16:10:20
    002 运行多个源文件 003 求整数之积 004 比较实数大小 005 字符的输出 006 显示变量所占字节数 007 自增/自减运算 008 数列求和 009 乘法口诀表 010 猜数字游戏 011 模拟ATM(自动柜员机)界面 012 用一维...
  • 然后又使用一些内存分配技巧使namestr数组用起来好像有多个元素,namelen记录了元素个数。它是怎样工作的?这样是合法的和可移植的吗? 2.8 我听说结构可以赋给变量也可以对函数传入和传出。为什么K&R1却明确说明不...
  • 002 运行多个源文件 003 求整数之积 004 比较实数大小 005 字符的输出 006 显示变量所占字节数 007 自增/自减运算 008 数列求和 009 乘法口诀表 010 猜数字游戏 011 模拟ATM(自动柜员机...
  • 书中列出了C用户经常问的400多个经典问题,涵盖了初始化、数组、指针字符串、内存分配、库函数、C预处理器等各个方面的主题,并分别给出了解答,而且结合代码示例阐明要点。 本书结构清晰,讲解透彻,是各高校相关...
  • 然后又使用一些内存分配技巧使namestr数组用起来好像有多个元素,namelen记录了元素个数。它是怎样工作的?这样是合法的和可移植的吗?  2.8 我听说结构可以赋给变量也可以对函数传入和传出。为什么K&R1;却明确...
  • 数据元素可以是多个字符 C 是一种内容受限的线性表。 把一棵树转化为二叉树后,这棵二叉树的形态是() A.唯一的 B.有多种 C.有多种,但根结点都没有左孩子 D.有多种,但根结点都没有右孩子 A 略。 利用...
  • 《你必须知道的495C语言问题》

    热门讨论 2010-03-20 16:41:18
    书中列出了C用户经常问的400多个经典问题,涵盖了初始化、数组、指针字符串、内存分配、库函数、C预处理器等各个方面的主题,并分别给出了解答,而且结合代码示例阐明要点。 《你必须知道的495个C语言问题》结构...
  • 然后又使用一些内存分配技巧使namestr数组用起来好像有多个元素,namelen记录了元素个数。它是怎样工作的?这样是合法的和可移植的吗? 2.8 我听说结构可以赋给变量也可以对函数传入和传出。为什么K&R1;却明确说明...
  • 然后又使用一些内存分配技巧使namestr数组用起来好像有多个元素,namelen记录了元素个数。它是怎样工作的?这样是合法的和可移植的吗? 23  2.8 我听说结构可以赋给变量也可以对函数传入和传出。为什么K&R1却明确...

空空如也

空空如也

1 2 3 4 5 ... 10
收藏数 190
精华内容 76
关键字:

利用指针输入多个字符串