一个程序两处报错,不明白~
写了一段程序,输入一个十进制数字转化成二进制程序代码:
#include <stdio.h> int main (void) { int index = 0, convertedNumber[64], numberToConvert; printf ("Number to be converted:"); scanf ("%i", &numberToConvert); do { convertedNumber[index] = numberToConvert % 2; index ++; numberToConvert = numberToConvert / 2; } while (numberToConvert != 0); for (index; index >= 0; index--) { printf ("numberToConvert = ", convertedNumber [index]); } printf ("\n"); return 0; }
gcc编译后报错
1.第19行for (index; index >= 0; index--)warning: statement with no effect,这句话的意思应该是声明无效吧?改成for (index--; index >= 0; index--)后通过。
但是为什么初始化表达式是index--而不是index?
2.第22行printf ("numberToConvert = ", convertedNumber [index]);warning: too many arguments for format(不清楚什么意思~)改为
int Digit = convertedNumber[index]; printf ("%i", Digit);后通过。为什么不能直接输入数组的每一个元素?
[ 本帖最后由 ilsoviet1917 于 2010-5-21 00:21 编辑 ]