谭浩强版本的一道题:
输入不大于5位数的数字,编程序输出1.这个数是几位数?2.每位数是多少?3.逆序排列各位数?
下面是我写的程序,但我不知道错在哪里,请各位大侠指正,谢谢!
#include <stdio.h>
void main()
{
long int a,c,c1=0,i=0,j=10000;
float b;
printf(“请输入一个不超过五位的正整数:\n”);
scanf(“%ld “,&a);
printf(“你输入的每一位数分别是:”);
while(j>=1)
{
(int)b=a/j;
j/=10;
while((int)b!=0)
{
printf(“%ld “,(int)b);
i=5-i;
c*=j;
c1+=c;
}
}
printf(“这是一个%d位数\n”,i);
printf(“将你输入的数各位置换后是:%ld\n”,c1);
}
void main()
{
long int a,c,c1=0,i=0,j=10000;
float b;
printf(“请输入一个不超过五位的正整数:\n”);
scanf(“%ld “,&a);
printf(“你输入的每一位数分别是:”);
while(j>=1)
{
(int)b=a/j;
j/=10;
while((int)b!=0)
{
printf(“%ld “,(int)b);
i=5-i;
c*=j;
c1+=c;
}
}
printf(“这是一个%d位数\n”,i);
printf(“将你输入的数各位置换后是:%ld\n”,c1);
}
>> 本文固定链接: http://www.vcgood.com/archives/3275
>> 转载请注明: tianfei1220 2009年09月09日 于 C语言帝国 发表
需要逻辑0或非0在main函数中,另外还有一些需要修改的地方!
#include “stdio.h”
void main()
{
long int a,c,c1=0,i=0,j=10;
int b;
printf(“please enter \n”);
scanf(“%ld”,&a);
printf(“ni shu ru mei wei de shi\n “);
while(a>0)
{
b=a%j;
a=a/j;
i++;
printf(“%d\t”,b);
c1=c1*j+b;
}
printf(“\n”);
printf(“zhe shi yi ge %d wei shu \n”,i);
printf(“zhi huan hou %ld\n”,c1);
}
我的是日文系统。在里面打出来的汉字是乱码,只好用汉语拼音了