scanf相关内容
为什么螺柱->names.FirstName不需要地址运算符? 但在&;Studd->Studentid?中需要地址运算符? struct student { struct { char lastName[10]; char firstName[10]; } names; int studentid; }; int
..
我编写了一小段代码,可以通过键盘输入地址。但是,我不知道如何才能读入特殊字符,如连字符、冒号等。您能建议对下面的代码进行一些编辑吗: #include main() { char address[80]; printf("Enter address: "); scanf("%[a-z | A-Z | 0-9]", addres
..
我是C的新手,我有一个小问题。我需要编写一个程序,用户在其中输入文本,程序会显示文本的长度。 我尝试了strlen(),但这不是我想要的。 char a[20]; scanf("%s",a) 如果我键入";Hello world";,结果是5,但我需要11。 我需要使用scanf,但可能无法使用它... 推荐答案 此调用 scanf("%s"
..
我有以下C代码。 #include int main() { //Declaring structure book. struct book { char name; float price; int pages; }; struct book b[5];
..
我有一个程序通过scanf过滤输入。 我想要只读数字和大字母+空格。 最近我试图做这样的事情,它陷入了无限循环,仍然只打印第一个输入。 我知道fgets(),但我知道这是有效的。 我找不到问题出在哪里。 这是简化的情况;我发生了什么事? #include #include int main() { char str[21]; do
..
我想扫描类似 的行 "[25, 28] => 34" 我写了一个小程序进行测试: #include #include int main() { char* line = "[25, 28] => 34"; char a1[100], a2[100]; int i; sscan
..
此代码工作正常: int main() { int i,n=2; char str[50]; for (i = 0; i
..
我正在尝试创建一个程序来从文件中读取二维数组,然后将其打印出来。 文件设置为第一行先有行数,然后是列数。之后,将绘制数组。示例如下: 3 5 10.4 15.1 18.5 13.3 20.8 76.5 55.3 94.0 48.5 60.3 2.4 4.6 3.5 4.6 8.9 我的问题是我只知道如何使用fgets和sscanf读取每行的第一个元素,所以以下数字被忽略。 #
..
如何在不使用strlen函数或计数器的情况下获取字符串长度,如: scanf("???",&len); printf("%d",len); 输入:abcde 预期产量:5 推荐答案 可以使用赋值抑制(字符*)和%n,将消耗的字符数存储到一个整数值中: int count; scanf( "%*s%n", &count ); printf( "string l
..
我用C语言编程,使用scanf将两个值写入两个不同的变量,然后使用printf输出。但是,当我键入两个值中的第一个值时,它只返回($00)。但是,第二个值似乎工作得很好,并且将报告我键入的内容。我假设这只是一个scanf问题。以下是发生问题的代码的一部分。为什么会这样? intA = strcmp(command, "write"); if(intA != 0) intA = strcmp(
..
if (a % 5) { goto ask; } else { goto main; } ask: printf("Do You Want To Exit ? Y \ N . . . "); scanf("%c", &YN); getch(); if (YN == 'Y') { y: system("cls"); YN = 1; goto sign; }
..
main() { double B_Sal, DR_Al,H_RA, Total_Sal; printf("Enter Your Basic Salary "); scanf("%f",&B_Sal); printf("the amount entered is %f ",B_Sal); DR_Al=0.4*B_Sal; H_RA=0.2*
..
我正在做c入门课程的作业,所以我的知识仍然很少,请注意。我有 scanf(" %20s", contact.name"); printf("Do you want to enter a middle name?"); scanf(" %c", doYouWant"); 如果第一个scanf超过20个字符,则这些字符将作为下一个scanf的输入。如果我使用%s,那么它将接受整个行,但是会比
..
以下是我的代码: main() { char firstName[30], lastName[30]; printf("What is your name? "); scanf_s("%s %s", firstName, lastName); printf("Your name is %s %s ", firstName, lastName); } 我试过
..
我应该从类似以下格式的文件中读取输入和参数: Add id:324 name:"john" name2:"doe" num1:2009 num2:5 num2:20 问题是我不允许使用fgets。我尝试使用fscanf,但不知道如何忽略“:”并分隔字符串“name:”john“”。 推荐答案 如果您确定输入文件将采用格式良好、非常具体的格式,则fscanf()始终是一个选
..
我在试验inttype时制作的简单程序。h: #include #include #include bool get_bit(uint32_t x, uint8_t n) { x >>= n; return x & 1; } int main() { uint32_t x; uint8_
..
在我的实验中,此表达式 double d = strtod("3ex", &end); 用3.0初始化d,并将end指针放在输入字符串中的'e'字符处。这正是我期望它的表现。'e'字符可能看起来是指数部分的开头,但由于缺少实际指数值(6.4.4.2所需),因此'e'应被视为完全独立的字符。 但是,当我这样做时 double d; char c; sscanf("3ex", "
..
我是C语言的新手,无论如何也找不出我在这里做错了什么。第一个scanf运行良好,变量在读入时被打印出来。第二个scanf似乎没有正确读取输入。输入的格式为“char int”,即b4 4 当我打印opb x和y输出时,opb=“”,x=13238272,y=0。 有什么想法吗?.注意,我删掉了问题下面的代码 int main(void) { /*initialize variables*
..
我写了一个简单的兑换货币的程序,可以买到啤酒。 但是程序中有一些东西,我不知道为什么,它会自动跳过第三个输入数据->结束程序。 这里是我的代码: #include #include int main() { int ex_rate_into_vnd = 20000; //! Exchange Rate int beer
..
我试图在ubuntu 15.10中执行以下简单代码,但代码的行为比预期的奇怪 #include int main(){ int n,i=0; char val; char a[20]; printf(" Enter the value : "); scanf("%s",a); printf(" Enter the value to be searched : "); sc
..