c++字符串-C++中如何将输入的字符串中的数字提取出来做加减法

问题描述

C++中如何将输入的字符串中的数字提取出来做加减法

char shu[100];
scanf("%s",shu);
int sum;
sum+=字符串中的数字
这个应该怎样完成?当我提取了字符串中的数字后,但发现字符串中的数字是以ASIii的形式运算的,这该怎么办?

解决方案

#include "stdafx.h"
#include <string.h>

void main()
{
    char shu[100];
    scanf("%s",shu);
    int sum;
    sum=0;
    int len=strlen(shu);
    for(int i=0; i<len; i++)
    {
        if( shu[i]>='0' && shu[i]<='9')
        sum+=shu[i]-'0';
    }
    printf("sum=%dn",sum);
    getchar();
    getchar();
}

解决方案二:

用if一个一个元素的判断,如果是数字,就把后面的元素向前移动,覆盖掉数字,就ok啦

解决方案三:

自己百度sscanf和sprintf

解决方案四:

用函数atoi(shu)转换下就行

解决方案五:

楼上的只是整数,如果是一百位就gg了
楼主可以百度一下大数加法,acm入门基础题

解决方案六:

如果你字符串里全是数字 来个循环 每个字符-48 用整形接收 然后再来个循环 将每个数字按位组合 变成真正的数值 就ok了

解决方案七:

用库函数啊,或者直接用字符串运算完后再转换成数字,atoi()

解决方案八:

https://code.csdn.net/snippets/535409

解决方案九:

进行for循环每一位,i=0;从头开始遍历,如果数大于10,则continue

解决方案十:

#include "stdafx.h"
#include

void main()
{
char shu[100];
scanf("%s",shu);
int sum;
sum=0;
int len=strlen(shu);
for(int i=0; i
{
if( shu[i]>='0' && shu[i]<='9')
sum+=shu[i]-'0';
}
printf("sum=%dn",sum);
getchar();
getchar();
}

时间: 2024-11-03 08:13:31

c++字符串-C++中如何将输入的字符串中的数字提取出来做加减法的相关文章

scanner-java中如果键盘输入一个字符串,这个字符串为一个空格……

问题描述 java中如果键盘输入一个字符串,这个字符串为一个空格-- java中如果键盘输入一个字符串,这个字符串为一个空格,则用toCharArray()方法,将其转换为一个字符数组,这个数组里面是什么内容?import java.util.Scanner;public class Main { public static void main(String[] args){ System.out.println(""请输入一串字符:""); Scanner in=

lua-luci框架中如何把输入在htm中的数据保存在/etc/config下的配置文件里!

问题描述 luci框架中如何把输入在htm中的数据保存在/etc/config下的配置文件里! 最近在修改Openwrt的web界面,遇到瓶颈了.我想在增加一个页面,用的是htm.不 是cbi控件.想把输入在htm中的数据保存在/etc/config下的配置文件里!请问怎么做! 解决方案 可以使用luci.http.formvalue获取输入内容用变量保存,然后用luci.exec(uci set )把变量传参进去保存起来 解决方案二: 在view下的的htm,里面定义<%%>里面是可以用lu

JS不用正则验证输入的字符串是否为空(包含空格)的实现代码_基础知识

在项目中需要验证输入的字符串是否为空,包括空格,不太喜欢使用正则,所以就想到了js的indexOf函数,indexOf() 方法可返回某个指定的字符串值在字符串中首次出现的位置,如果要检索的字符串值没有出现,则该方法返回 -1. 语法:stringObject.indexOf(searchvalue,fromindex),searchvalue必需,fromindex:可选参数,在字符串中开始检索的位置.它的合法取值是 0 到 stringObject.length - 1.如省略该参数,则将从

在主函数中输入一个字符串str1,调用函数。

问题描述 在主函数中输入一个字符串str1,调用函数. 在主函数中输入一个字符串str1,调用函数chage(str1,N);将str1 中的小标为奇数的字符取出构成一个新的字符串放入字符串str2中.然后在主函数中输出字符串str2.运用到数组的引用. #include #define N 10 using namespace std; void chage(char str2[],int n); int main() { char str1[N]; for(int i=0;i cin>>s

c 字符串输入-c语言中如何动态输入字符串而不需要事先定义字符数组大小

问题描述 c语言中如何动态输入字符串而不需要事先定义字符数组大小 如标题 c语言中如何动态输入字符串而不需要事先定义字符数组大小或为字符指针分配空间 解决方案 你这个要求实际使用度太低,或者说,完全没有必要非要这样去想. 解决方案二: c语言中字符串与字符数组c语言中的字符数组与字符串C语言 字符数组和字符串 解决方案三: 你这样定义好了char *p; 解决方案四: #include #include #include #define Step 10 //空间增加的步长. char * get

stringbuffer-从键盘输入一个字符串和一个字符,从字符串中删除全部该字符(如果是字母,大小写都删除)

问题描述 从键盘输入一个字符串和一个字符,从字符串中删除全部该字符(如果是字母,大小写都删除) package lab; /** * @author Administrator */ import java.util.Scanner; public class Lab { /** * @param args the command line arguments */ public static void main(String[] args) { // TODO code application

C语言实现输入一个字符串后打印出该字符串中字符的所有排列_C 语言

本文实例讲述了C语言实现输入一个字符串后打印出该字符串中字符的所有排列的方法,属于数学里的排列问题.是一个很实用的算法技巧.分享给大家供大家参考.具体实现方法如下: 例如输入字符串abc,则输出由字符a.b.c所能排列出来的所有字符串abc.acb.bac.bca.cab和cba. C语言实现代码如下: /* * Copyright (c) 2011 alexingcool. All Rights Reserved. */ #include <iostream> #include <al

如何将Textbox输入的字符串导入SQL数据库的表中

问题描述 如题,网上找的一些代码,不知道怎么具体操作,即那些代码放到哪里?求帮助~ 解决方案 解决方案二:放在代码编辑器里面,通常它看上去占据了屏幕很大的区域,很像记事本,里面有一些着色的文字,而且有光标在闪动.解决方案三:放到vs的IDE里,并去msdn上搜索类似sqlconnection或者sqlcommand之类的操作类.解决方案四:你是不知道编译器呢还是不知道该放在哪个事件中啊解决方案五: 解决方案六:将asp:TextBox输入的字符串导入到sql数据库表中protectedvoidb

《Java安全编码标准》一2.7 IDS06-J从格式字符串中排除用户输入

2.7 IDS06-J从格式字符串中排除用户输入 对Java格式字符串的解释要比对在像C语言这样的语言中更严格[Seacord 2005].当任何转换参数不能匹配相应的格式符时,标准类库实现会抛出一个相应的异常.这种方法降低了被恶意利用的可能性.然而,恶意用户输入可以利用格式字符串,并且造成信息泄露或者拒绝服务.因此,不能在格式字符串中使用非受信来源的字符串. 2.7.1 不符合规则的代码示例 这个不符合规则的代码示例展示了可能出现信息泄露的问题.它将信用卡的失效日期作为输入参数并将其用在格式字