C-整数抛出随机值?
目前我正在用C编写一个简单的程序,读取用户在循环中输入的值。出于某种原因,当我初始化整数C-整数抛出随机值?,c,C,目前我正在用C编写一个简单的程序,读取用户在循环中输入的值。出于某种原因,当我初始化整数a时,我会得到一个随机值,而不是我指定的值。任何帮助都将不胜感激 #include <stdio.h> int main() { char sName[10]; int sTime; int a = 0; printf("%d", &a); printf("Please enter the name of your snail: ");
a
时,我会得到一个随机值,而不是我指定的值。任何帮助都将不胜感激
#include <stdio.h>
int main()
{
char sName[10];
int sTime;
int a = 0;
printf("%d", &a);
printf("Please enter the name of your snail: ");
scanf("%s", &sName);
for(a = 10; a < 20; a = a + 1) {
printf("%d", &a);
printf("Please enter the %d time of your snail: ", &a + 1);
scanf(" %d ", &sTime);
}
return 0;
}
#包括
int main()
{
charsname[10];
时间;
int a=0;
printf(“%d”和“&a”);
printf(“请输入蜗牛的名字:”);
scanf(“%s”和sName);
对于(a=10;a<20;a=a+1){
printf(“%d”和“&a”);
printf(“请输入蜗牛的%d时间:,&a+1);
扫描频率(“%d”和时间);
}
返回0;
}
更改此选项:
printf("%d", &a);
为此:
printf("%d", a);
&a
是a
的地址(它的类型是int*
,因此%d
格式错误)a
为您提供a
的值
您仍然需要scanf中的和(“%d”,&sTime)代码>scanf
需要sTime
的地址,以便它知道在哪里存储值。更改此项:
printf("%d", &a);
为此:
printf("%d", a);
&a
是a
的地址(它的类型是int*
,因此%d
格式错误)a
为您提供a
的值
您仍然需要scanf中的和(“%d”,&sTime)代码>scanf
需要sTime
的地址,以便它知道在哪里存储值。您正在打印a
的地址。您不希望和在其中:
printf("%d", a);
您确实希望和用于scanf()
,因为您需要告诉该函数在哪里(在什么地址)存储值。您正在打印a
的地址。您不希望和在其中:
printf("%d", a);
您确实希望和用于scanf()
,因为您需要告诉该函数在哪里(在什么地址)存储值。&a
返回变量的地址(例如指针)。另一个错误是上次扫描中的%d
应该是%d
(没有空格)。和&sName
应该是sName
&a
返回变量的地址(例如指针)。另一个错误是上次扫描中的%d“
应该是%d”
(没有空格)。而&sName
应该是sName
。