c语言中给数组赋值能用&符号吗?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了c语言中给数组赋值能用&符号吗?相关的知识,希望对你有一定的参考价值。

我给你上代码简单明了!

#include <stdio.h>

int main(void)

int i;

int arr[10]=0;

for(i=0;i<10;i++)
scanf("%d",&arr[i]);



for(i=0;i<10;i++)
printf("%d",arr[i]);


上面的程序是给你数组中的元素赋值,你注意看一下输入,输入这一块要用取地址符的,而输出不用!
当你给数组中输入字符串时不用取地址符:
代码:scanf("%s"arr);

当你给数组中输入字符是=时,要用取地址符:
代码:

char arr[10]=0;

for(i=0;i<10;i++)
scanf("%c",&arr[i]);


望你采纳!不懂可以继续提问!
参考技术A 可以scanf("%d",&num[i])这样追问

那什么时候能用,什么时候不能?

追答

c里面要求自己输入的时候就要使用& 比如scanf函数呀 不知道你的问题是不是这个意思 = =

c语言循环赋值

#include<stdio.h>
#include<time.h>
#include<stdlib.h>
#define LIM 100
int main(void)

int i,j,temp;
int num[LIM];

srand((unsigned int)time(0));
for(i = 0;i < LIM;i++); // 赋值
num[i] = (rand() % 10) + 1;
for(i = 0;i < LIM - 1;i++) // 排序
for(j = i + 1;j < LIM;j++)

if(num[i] < num[j])

temp = num[i];
num[i] = num[j];
num[j] = temp;


for(i = 0;i < LIM;i++) // 输出

printf("%d ",num[i]);
if((i + 1) % 10 == 0)
printf("\n");

return 0;


这是什么情况

赋值的For语句后面多了一个分号 参考技术A #include<stdio.h>
#include<time.h>
#include<stdlib.h>
#define LIM 100
int main(void)

int i,j,temp;
int num[LIM];

srand((unsigned int)time(0));
for(i = 0;i < LIM;i++)//;<----------------此处多了分号
num[i] = (rand() % 10) + 1;
for(i = 0;i < LIM - 1;i++)               //  排序
for(j = i + 1;j < LIM;j++)

if(num[i] < num[j])

temp = num[i];
num[i] = num[j];
num[j] = temp;


for(i = 0;i < LIM;i++)       //  输出

printf("%d ",num[i]);
if((i + 1) % 10 == 0)
printf("\\n");

return 0;

以上是关于c语言中给数组赋值能用&符号吗?的主要内容,如果未能解决你的问题,请参考以下文章

c语言无符号长整形赋值问题,在线等,求解答!!!

c#winform中怎样在一个窗口定义一个数组后在其他窗口中给它赋值

C中结构体内有一个成员是二维数组,可以直接赋值另一个一维数组吗?

数组可以单独赋值吗?

c语言二维数组 赋值

C语言怎样给字符数组赋值