| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 978 人关注过本帖
标题:关于整数的问题!
只看楼主 加入收藏
xiaotan
Rank: 1
等 级:新手上路
帖 子:37
专家分:0
注 册:2006-5-5
收藏
 问题点数:0 回复次数:15 
关于整数的问题!

给定一个不多于5位的正整数,要求:(1)求他是几位数(2)分别打印每一位数(3)按逆序打印各位数。

#include<stdio.h>

#include<math.h>

main()

{

int x,k,i,j,f;

char y[100],a[100],b[100];

printf("\nplease input a shu:\n");

scanf("%d",&x);

*y='x';

k=strlen(y);

printf("\n this shu is %d weishu de shu!\n",k);

for(i=0;i<k;i++)

strcat(a[i],y[i]);

printf("\noutput the string: %s\n",a);

for(j=k-1;j>=0;j++)

for(f=0;f<k;f++)

strcat(b[f],a[j]);

printf("\noutput the nixustring: %s\n",b);

}

我的这个程序是没有语法错误的,但是当我编译运行是出现这种奇怪的问题! 问题描述如下:

TC
NTVDM CPU 遇到无效的指令
CS:63ee IP:6976 OP:ff ff d8 18 08 选择"关闭"终止应用程序

各位高手!你们看这是什么问题啊?我以前也没有遇到过这种情况!我该如何改这个错误啊?我有好多的问题都不能解决的!请各位高手指点指点啊!谢谢拉!

搜索更多相关主题的帖子: 整数 
2006-05-16 14:14
疯狂VC
Rank: 1
等 级:新手上路
威 望:1
帖 子:375
专家分:0
注 册:2006-3-29
收藏
得分:0 
*y='x';
这个语句是将x这个字符赋值给y[100]
我想是这样的!
在win-tc上编译没有提示出你上面所说的那些问题!

2006-05-16 14:24
xsimon
Rank: 1
等 级:新手上路
帖 子:121
专家分:0
注 册:2006-5-5
收藏
得分:0 

#include<stdio.h>

int main (void)
{
int n, ge, shi, bai, qiang;

scanf ("%d", &n);
if (n > 9999 || n < 1) printf ("The number is wrong");
else
{
ge = n%10;
shi = n/10%10;
bai = n/100%10;
qiang = n/1000;

if (qiang != 0)
{
printf("It is a 4bit number:");
printf("%d,%d,%d,%d\n", qiang, bai, shi, ge);
printf("%d%d%d%d\n", ge, shi, bai, qiang);
}
else if (bai != 0)
{
printf("It is a 3bit number:");
printf("%d,%d,%d\n", bai, shi, ge);
printf("%d%d%d\n", ge, shi, bai);
}
if (qiang == 0 && bai == 0 && shi != 0)
{
printf("It is a 2bit number:");
printf("%d,%d\n", shi, ge);
printf("%d%d%d\n", ge, shi);
}
if (qiang == 0 && bai == 0 && shi == 0) printf("It is a 1bit number: %d", ge);
}

getch ();
return 0;
}

是谭书上的5.7题.

2006-05-16 14:39
黔山菜鸟
Rank: 1
等 级:新手上路
帖 子:11
专家分:0
注 册:2006-5-12
收藏
得分:0 
3楼的大哥是 if(n&gt;99999||n&lt;1)吧  

我为C狂  哈哈~~~~~~
2006-05-16 15:11
SunShining
Rank: 7Rank: 7Rank: 7
等 级:贵宾
威 望:31
帖 子:2215
专家分:0
注 册:2006-2-17
收藏
得分:0 

#include <stdio.h>
main()
{
int i=0;
long int x,j,k=0;
scanf("%d",&x);
j=x;
while(j)
{
printf ("%d ",j%10);
k=k*10+j%10 ;
j/=10;
i++;
}
printf("\n%d\n",i);
while(k)
{
printf("%d ",k%10);
k/=10;
}

}


[glow=255,violet,2]闭关修炼ing...[/glow] [FLASH=360,180]http://www./chinaren.swf[/FLASH]
2006-05-16 15:51
疯狂VC
Rank: 1
等 级:新手上路
威 望:1
帖 子:375
专家分:0
注 册:2006-3-29
收藏
得分:0 
五楼的不能得到正确的结果啊!

2006-05-16 16:07
SunShining
Rank: 7Rank: 7Rank: 7
等 级:贵宾
威 望:31
帖 子:2215
专家分:0
注 册:2006-2-17
收藏
得分:0 
以下是引用疯狂VC在2006-5-16 16:07:00的发言:
五楼的不能得到正确的结果啊!

不会吧..C-FREE.

图片附件: 游客没有浏览图片的权限,请 登录注册


[glow=255,violet,2]闭关修炼ing...[/glow] [FLASH=360,180]http://www./chinaren.swf[/FLASH]
2006-05-16 16:18
SunShining
Rank: 7Rank: 7Rank: 7
等 级:贵宾
威 望:31
帖 子:2215
专家分:0
注 册:2006-2-17
收藏
得分:0 
虽然顺序有点不一样.不过你不会看不懂吧~~

[glow=255,violet,2]闭关修炼ing...[/glow] [FLASH=360,180]http://www./chinaren.swf[/FLASH]
2006-05-16 16:18
论坛
Rank: 3Rank: 3
等 级:新手上路
威 望:6
帖 子:1372
专家分:0
注 册:2006-3-27
收藏
得分:0 
可以,前天我还写一个在论坛上,也是这种方式,分解,不用函数

日出东方,唯我不败! 做任何东西都是耐得住寂寞,任何一个行业要有十年以上的积累才能成为专家
2006-05-16 16:21
疯狂VC
Rank: 1
等 级:新手上路
威 望:1
帖 子:375
专家分:0
注 册:2006-3-29
收藏
得分:0 
wodeto
以下是引用SunShining在2006-5-16 16:18:00的发言:

不会吧..C-FREE.

我用的是win-tc
怎么就成这个样子了呢?

图片附件: 游客没有浏览图片的权限,请 登录注册

[此贴子已经被作者于2006-5-16 17:54:28编辑过]


2006-05-16 17:53
快速回复:关于整数的问题!
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.014342 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved