急- 一道作业。
是老师布置的作业,就是要编写一个能让输入的数字转换成各个进制的程序。以下是我写的程序:
/*
* 功能:数字转换
*/
#include<stdio.h>
int main()
{
char digit[]="0123456789ABCDEF";
char again='y';
int num=0;
int yushu[100]={0}; //存储转换中的位数数字
int base=0;
int i=0;
int temp=0;
printf("************************************************\n");
printf("* Welcome to sue number_format convertor! *\n");
printf("************************************************\n");
do{
printf("请输入一个数\n");
scanf("%d",&num);
printf("输入要转换的目标基\n");
scanf("%d",&base);
temp=num;
i=0;
while(temp!=0)
{
yushu[i++] = temp%base;
temp /= base;
}
printf("结果为:\n");
if(base==8)
{
printf("0");
}
else if(base==16)
{
printf("OX");
}
for(--i; i>=0; i--)
{
int index = yushu[i];
printf("%c",digit[index]);
}
putchar('\n');
printf("again(y/n)?");
scanf("%c",&again);
}while(again =='y');
return 0;
}
在程序运行的时候发现不能再再次操作。就是do..while出现了问题- -。想了很久不知道问题在哪里。
各位大大这个问题可能很弱智- -。但是能不能别打击初学者呢。
还有就是最近在学数组,就是对二维、多维数组的概念还是不太清楚。有没有人能解释的简单易懂的0 0.
还有后面马上就要学指针了,有什么要注意的。