我正在制作一个程序,为字符串中每个字符的ASCII值添加一个特定的数字。代码在运行时给出了“分段错误(核心转储)”错误。我究竟做错了什么?我是C的新手。
#include<stdio.h>
main()
{
int a,b,c;
char x[1000],y[1000];
printf("String:");
gets(x);
printf("\nShift:");
scanf("%d",a);
b=0;
printf("\n");
while (b < strlen(x))
{
c=x[b] + a;
printf("%c",c);
b++;
}
}
答案 0 :(得分:3)
更改
scanf("%d",a);
到
scanf("%d",&a);
再试一次。