您好我正在尝试使用来自用户的输入将数组的元素转换为整数。
#include <stdio.h>
#include <string.h>
int main()
{
char i[9]={'-','-','-','-','-','-','-','-','\0'};
int j;
printf ("enter an integer for an element ");
sscanf(i, "%d", &j);
return 0;
}
我在某处读到使用sscanf是一种方法,但我不知道使用它的正确方法。
答案 0 :(得分:0)
scanf
从标准输入读取。
sscanf
从字符串中读取。
scanf
用法示例:
#include <stdio.h>
int main()
{
char str1[20];
printf("Enter name: ");
scanf("%s", str1);
printf("First char converted to int: %d\n", str1[0]);
int j = str1[1];
printf("Second char converted to int: %d\n", j);
return(0);
}
输入和输出:
Enter name: marcel
First char converted to int: 109
Second char converted to int: 97
答案 1 :(得分:0)
正如马塞尔所说,有两种不同的功能可以做不同的事情。 您使用来自用户的输入请求将数组元素转换为整数,因此我认为您想要这样:
char i[9]={'-','-','-','-','-','-','-','-','\0'};
int j;
printf ("enter an integer for an element ");
scanf("%i", &j);
printf("Element[ %i ] in integer is: %i", j, i[j]);