我正在创建一个程序,它将输入的名称和数字存储到数据结构中。目前,我正在尝试制作一个简单的函数来获取输入(名称和数字)并将其插入到两个数组中。我的输入必须采用以下格式:名称编号。例如
John 07745234574
然后会将名称存储在字符数组中,将数字存储在 int 数组中。问题是它不在数字的开头打印 0,而是在打印时添加大量重复数字,然后是许多 0。
我的代码:
int main (void) {
char nme[20];
int nmbr[11];
printf("Enter:");
scanf("%s %d", nme, nmbr);
printf("\n%s ", nme);
int i;
for(i = 0; i<11; i++) {
printf("%d", nmbr[i]);
}
return 0;
}
我知道使用 %d 是行不通的,但我不知道另一种不使用循环的方法。另外,如果数字前面有一个加号,我将如何存储它,例如 +442962000292
最佳答案
char *nme;
int* nmbr;
nme
和 nmbr
是指针,您应该在向其写入内容之前分配一些内存。
也以字符串形式读取电话号码。
关于c - 如何将输入的电话号码存储到 int 数组中? C,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27079589/