怎么用c语言或c++写这个程序
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了怎么用c语言或c++写这个程序相关的知识,希望对你有一定的参考价值。
题目:
有很多组3位数据,把它们分开(例如:123分开成1,2,3)存储。
重点是很多不确定组数据,就是不知道有多少组123……
int a[ ][3]; /*前括号里的数自己填个够大的整数(比组数大就行,tc可以不填,C++不清楚)*/
int i,a,shu;
for(i=0;(a=getchar())!='\n';i++)
scanf("%d",&shu);
a[i][1]=shu%10;
a[i][2]=shu%100/10;
a[i][3]=shu/100;
这样a[i][1]a[i][2]a[i][3]就分别表示个位,十位,百位了 参考技术A #include <stdio.h>
#include <stdlib.h>
//这个问题very easy
//有个函数叫做sprintf(str,format_str,val...)是用来把数据写入字符串的。
//你可以把读取的数字转换成字符串然后再改变他。
//addcomma函数传递你要处理的num,和保存数据的储存区指针。返回储存区指针。
char* addcomma (int num,char *mem)
char tmp[20];
sprintf(tmp,"%d",num);
int i=0,j=0;
while (1)
mem[j++]=tmp[i++];
mem[j++]=',';
if (tmp[i]==0) break;
//endwhile
mem[j-1]='\0';
return mem;
//endfun
int main()
while(1)
char mem[40];
int num=0;
scanf("%d",&num);
printf("\n%s\n",addcomma(num,mem));
//endwhile
return 0;
//end main 参考技术B 思路是这样:
int shu; 三位数
int gewei;
int shiwei;
int baiwei;
baiwei=shu/100; //三位数除以100取整,就是百位
shiwei=shu%100/10; //三位数对100取余数得到十位和百位,然后余数对10取整得到十位数
gewei=shu%10; //三位数对10取余数,得到个位数。
方法就是这样的,可以分开很多位数。不懂的再回答!追问
重点是很多不确定组数据,就是不知道有多少组123……
追答可以用循环吧,在不确定循环次数的情况下用个while循环,加个结束标志。你自己想一下什么可以做位循环结束标志,存放数据可以用个数组或者指针类的东西!
参考技术C 想问一下,是字符串还是整形数字,如果是字符串的话好说,加个strlen测一下长度,存到数组里就可以了,要是整形数字就用求余的方式对数据分别输出,记得要用循环用VS2012如何执行C语言编写的程序?
我以前都是用VC,现在改用Vs了,但是我VS不会用,我写好代码之后,怎么编译?怎么组建?如何才能把它们变成可执行文件?还有,我打开以前用VC写的代码的时候,点F5总是显示生成失败,我如何运行以前写好的代码?我的程序都是另存的总不会跟这个有关系吧?求大神教教我。。。。
步骤如下:1、新建一个Visual C++的“Win32项目”,建立一个空项目。
2、建立完成后,右键点击右边的“解决方案”中的“源文件”。
3、选择“添加”,然后添加“新建项”。
4、选择“Visual C++”中的C++文件,点“添加”。
5、在新加的C++文件里面写好代码,然后保存。
6、编译运行即可(快捷键Ctrl+F5)。 参考技术A 这个我弄过了,不过是VC6到VS2010,我想到VS2012应该是一样的。
实际非常简单,使用VS2010打开dsw工程,然后VS2010要求转换格式,点OK,重新编译链接就可以了。提醒楼主,这个转换是单向的,转换后就不能再转换成VC6的了,所以注意备份。
另外,VC6里的有些语句在VS中编译不能通过,稍微修改一下就可以了。追问
谢谢你啊,我昨天试了一下,vs2012不用转换,直接把打开的以前写的代码加入到源中,就可以编译,执行了
本回答被提问者采纳 参考技术B 参见我的教程:jingyan.baidu.com/article/359911f506cb2d57fe03063f.html以上是关于怎么用c语言或c++写这个程序的主要内容,如果未能解决你的问题,请参考以下文章