我想在c中这样做:
scanf("%d",a+i);
其中a
是大小为10
的数组。 而i
反对循环。 这可能吗?
绝对:如果a
是int*
或数组int a[10]
,并且i
介于0和9之间,则此表达式有效。
a+i
表达式是&a[i]
的指针算术等价物,它也是传递给scanf
的有效表达式。
是的,您可以使用+ i而不是&a [i] ,,,以下代码要求您输入10个数字并将它们保存在数组中,然后显示数字。
检查此代码:
#include int main (void) { int a[10], i, j = 0; for(i = 0; i < 10; ++i ){ printf("Element no %d = ",i); scanf("%d",a+i);} printf("Elements in your array are: "); for(j = 0; j < 10; j++) printf("%d ",a[j]); return 0; }
我希望这段代码可以帮到你!!
试试这个解决方案
#include int main (void) { int *p, i, j = 0, n; printf("enter the value of n "); scanf("%d",&n); for(i = 0; i < n; ++i ){ scanf("%d",p+i);} printf("Elements in your array are: "); for(j = 0; j < 10; j++) printf("%d ",*(p+i)); return 0; }
以上就是c/c++开发分享我可以在scanf中使用指针来获取数组中的输入吗?相关内容,想了解更多C/C++开发(异常处理)及C/C++游戏开发关注计算机技术网(www.ctvol.com)!)。
本文来自网络收集,不代表计算机技术网立场,如涉及侵权请联系管理员删除。
ctvol管理联系方式QQ:251552304
本文章地址:https://www.ctvol.com/c-cdevelopment/541812.html