C++编程:给你一个非常大的整数x,(-10^400 <=x<= 10^400),请统计x的每一位,分别输出9,1,2出现的次数.

给你一个非常大的整数x,(-10^400 <=x<= 10^400),请统计x的每一位,分别输出9,1,2出现的次数.
请帮忙用C++解一下,谢谢!

#include <iostream>
#include<string>
using namespace std;

int main()
{

string str;
int n,i,
count[3];
for(i=0;i<3;i++)
count[i]=0;
cout<<"输入:";
cin>>str;
for(i=0;i<str.length();i++)
{
n=(int)str[i]-48;
switch(n)
{
case 1:count[0]++;break;
case 2:count[1]++;break;
case 9:count[2]++;break;
default:break;
}
}
cout<<"1:"<<count[0]<<endl
<<"2:"<<count[1]<<endl
<<"9:"<<count[2]<<endl;

return 0;
}
温馨提示:内容为网友见解,仅供参考
第1个回答  2009-04-13
用数组存大数,一位存一个,加一个负号你最少申一个char array[401],再扫描,找出912
相信你可以自己写出来

C++编程:给你一个非常大的整数x,(-10^400 <=x<= 10^400),请统计x的每...
<<"2:"<<count[1]<<endl <<"9:"<<count[2]<<endl;return 0;}

用C++建立一个线性表,输入10个数,并按从小到大显示出来
Status ListInsert_Sq(SqList &L,int i,ElemType e) \/* 算法2. 4 *\/ { \/* 初始条件:顺序线性表L 已存在,1≤i≤ListLength(L)+1 *\/ \/* 操作结果:在L 中第i 个位置之前插入新的数据元素e,L 的长度加1 *\/ ElemType *newbase,*q,*p;if(i<1||i>L.length+1) \/* i 值不合...

C++如何实现提示用户输入一个正整数,计算出该数字的位数并把找出每一...
\/ int getLength(int num){ int i = 1;int temp = num;while(temp\/10 != 0){ ++i;temp \/= 10;} return i;} \/ 顺序输出数字num的各个位数 \/ void outputEveryNumber(int num){ int temp = num;int length = getLength(num);int flag = 1;for(int i =1;i<length;++i){ flag...

求C++程序:任意从键盘输入10个整数,按从小到大的顺序排序,并输出结果...
1.首先,定义一个结构,包括数值、排名和序号。2.定义结构数组变量d,保存所有整数信息。3.接下来,定义一个自定义函数来比较整数序列中任意两个整数的大小。4.定义一个自定义函数,比较整数序列中任意两个数字的序数大小。5.在主函数中,首先定义两个整数,并保存整数个数和排名计数。6.使用for...

求C++程序:任意从键盘输入10个整数,按从小到大的顺序排序,并输出结果...
为了实现C++程序,可以按照以下步骤来完成一个从键盘输入10个整数并按从小到大排序的功能:首先,创建一个结构体,名为`IntInfo`,包含整数值(数值域)、排名(排名域)和序号(序号域)。接着,定义一个`IntInfo`类型的数组`d`,用于存储输入的10个整数及其相关信息。定义两个自定义函数:`compare...

c++ 给一个不多于10位数的正整数,①求出它是几位数;②按从高位到低位...
int aa = 30;stringstream ss;ss<<aa;string s1 = ss.str();cout<<"number: "<< s1.length()<<" digitals: "<<s1<<endl;

c++编程 输入一个四位正整数,然后分别显示其千位数、百位数、十位数和...
简单方法:char a[10] = {0};scanf("%s", a);\/\/以字符串形式输入 assert(strlen(a)==4);\/\/这句可以不要 printf("%c %c %c %c\\n",a[0],a[1],a[2],a[3]);\/\/以字符形式输出 printf("%d %d %d %d\\n",a[0],a[1],a[2],a[3]);\/\/以ASCLL码形式输出 ...

c++编程 输入一个不多于5位的正整数,要求: (1)求出它是几位数;_百度知...
cout<<"请输入一个不多于五位的正整数:";cin>>num;\/\/ 输入数据 if (cin.bad()|| num <= 0 || num >= 100000){ \/\/ 如果输入的不是整数,或者小于0,或者大于5位数,报错重试 cin.clear();fflush(stdin);cout<<"输入错误!请重试!"< continue;} break;} \/\/ 逆序处理,同时算位数 ...

怎么用C语言编写一个大整数的四则运算器,求解??(急!!)
定义输入函数,定义x和y的计算变量,和c定义为变量选择计算方法。使用switch语句,以c为选择变量,填写计算方法的选择,最学位后在主函数输入输出函数输出计算公式和结果完成程序编写:3,运行编译后的查询,输入一个部门的计算来验证跟踪程序输出小数,程序运行正常。这就是用C语言写四则运算器的过程:...

请写一个c++程序:输入int型整数x,若x>0,则y=1;若x=0,则y=0;否则,y=...
学习编程1年了,代码附上:include <iostream> using namespace std;int main (){ int x;cout << “请输入x:";cin >> x;if (x > 0){ cout << "y = 1";else if (x == 0){ cout << "y = 0";else { cout << "y = -1";} return 0;} 总结了一下,判断条件 x == ...

相似回答