在C中写入/读取数值

时间:2009-11-02 11:39:04

标签: c arrays printf

我一定是疯了。这非常简单,所以我显然忽视了一些事情:

这是我的代码:


int salesarray[20];    
scanf("%d",&sales_input);    
printf("sales_input is %d",sales_input);    
salesarray[i] = sales_input;    
printf("salesValue is %d",i,salesarray[i]);

以下是我将要看到的内容:

sales_input是2salesValue是1

有谁可以解释为什么我的阵列没有正确更新? salesValue应该更改为值2.或者我在这里读错了...

3 个答案:

答案 0 :(得分:5)

解决此问题:

printf("salesValue is %d",i,salesarray[i]);

不应该吗?

printf("salesValue is %d", salesarray[i]);

答案 1 :(得分:2)

printf("salesValue is %d",i,salesarray[i]);

缺少%d(您根本不打印salesarray值):

printf("salesValue is %d %d",i,salesarray[i]);

尝试使用-Wall -Werror进行编译,以警告错误。 -Werror会从头开始向你展示问题

答案 2 :(得分:0)

您要打印i还是salesarray[i]
你在printf“格式字符串”中只有一个%d ...

printf("salesValue is %d",i,salesarray[i]);
/*                        ^ ^^^^^^^^^^^^^ */