当前位置:首页 » 编程语言 » c语言字符串间没逗号
扩展阅读
webinf下怎么引入js 2023-08-31 21:54:13
堡垒机怎么打开web 2023-08-31 21:54:11

c语言字符串间没逗号

发布时间: 2022-08-04 23:07:50

1. c语言输入字符串和数字时如何用逗号隔开

1
如果使用scanf进行格式化输入,用逗号隔开不适用于先输入字符串后输入数字的情况,仅适用于数字的间隔,或者先输入数字后输入字符串。
下面是先输入数字后输入字符串的例子:
#include <stdio.h>
int main()
{
char s[100];
int v;
scanf("%d,%s",&v, s);//先输入整型变量v,再输入字符串,可以使用逗号分隔。
printf("%s\n%d\n", s, v);//输出得到的变量,每行一个值。
return 0;
}如果输入:
123,abc
会输出:
abc
123
但是如果先输入字符串再输入数字,比如用scanf("%s,%d",s,&v);的格式,系统会出错。
2
如果需求必须是先输入字符串后输入数字,那么必须人工进行判断。
思路为用getchar逐个读入字符,并赋值到字符串对应位置,当出现逗号时结束。然后再用scanf读入数字。
代码如下:
#include <stdio.h>
int main()
{
char s[100];
int v;
int i = 0;
while(1)
{
s[i] = getchar();//逐个输入字符并赋值到字符串中。
if(s[i] == ',')//输入结束。
{
s[i] = '\0';//赋值结束符。
break;//退出循环。
}
i ++;
}
scanf("%d",&v);//继续输入数字。
printf("%s\n%d\n", s, v);//输出得到的变量,每行一个值。
return 0;
}以上程序输入:
abcd,123
输出哦
abcd
123

2. c语言中二维字符数组各元素(即字符串)间必须用逗号分开么

必须逗号。。规则在那摆着。。

3. c语言中字符串中逗号

数组初始化表写法:{元素初值列表},其中的元素初值列表以逗号表达式分隔,如:

int a[]={1, 2, 3};
double b[]={0.1, 0.2, 0.4};
char c[]={'a', 'b', 'c'};

4. c语言scanf输入时为什么不能用逗号隔开

c语言scanf输入时能用逗号隔开,但是输入数据的时候一定也要加上逗号。用scanf()读取数据时,输入的格式必须和scanf()的格式控制字符串对应。

对于标准输入函数scanf来说,括号内的格式字符串,也就是由" "中的部分,除了%引导的格式字符之外,所有的其他字符必须在输入数据时原样原位置输入。例如:

scaf("%d,%d",&a,&b);

两个%d之间的逗号就是普通字符,它必须在你输入a和b的值的时候,也输入到ab之间。输入如下:

5,6

如果不输入逗号,或者输入空格,输入均不会正确。



(4)c语言字符串间没逗号扩展阅读:

scanf函数返回成功读入的数据项数,读入数据时遇到了“文件结束”则返回EOF。

如:scanf("%d%d",&a,&b);

函数返回值为int型。如果a和b都被成功读入,那么scanf的返回值就是2;

如果只有a被成功读入,返回值为1;

如果a和b都未被成功读入,返回值为0;

如果遇到错误或遇到end of file,返回值为EOF。end of file为Ctrl+z 或者Ctrl+d。

5. 二级c语言scanf的输入分隔符不包含逗号,关于scanf这一块有点乱谁能帮帮忙控制字符串又是什么 有什么联

scanf(" ",);中双引号中间写的格式是什么样子的,在程序运行时就要怎么输入。例如:
scanf("%d %d",&i,&j); //在运行输入时就是i(空格)j
scanf("%d,%d",&i,&j); //在运行输入时就是i(逗号)j

6. C语言地址符号间要加逗号吗

不需要,C语言用分号做分割符。
C语言中,再给某个数组输入具体值的时候,要加取地址符,其余不要加

7. C语言如何实现忽略逗号的字符串比较

#include <string.h>
#include <stdio.h>
#define Num 0

int comp(char*a,char*b,int flag)
{
if(flag)
return strcmp(a,b)?0:1;
else
{
while (*a!=0 && *b!=0)
{
while(*a==',')a++;
while(*b==',')b++;
if(*a!=*b) return 0;
a++;
b++;
}
if(*a!=*b) return 0;
return 1;
}
}
int main(void)
{
char *buf1 = "aa,a", *buf2 = "a,aa";
printf("%d",comp(buf1,buf2,Num));
}

8. C语言逗号问题

scanf()函数是从左往右识别类型,当在键盘中输入的字符,字符串或者其他类型变量。与你在scanf()函数定义的不一样时,系统虚拟机会瘫痪,直接跳出。最好%d%d之间有空格,空格是缓冲区。

9. C语言输入两个数之间是用空格隔开还是用逗号

C语言输入两个数之间是用空格隔开还是用逗号的解决方法如下:

这个是根据实际情况来决定的,就是是根据你的scanf来决定的。

你现在中间写成了scanf("%d,%d",&a,&b);可以看到除了输入两个数字外还要加入逗号才行,所以现在你得加逗号才行。

如果想输入500 600就可以的话,要写成scanf("%d%d",&a,&b);注意把中间的逗号给去掉;一定要注意这个格式的问题,两种输入方法都行的。

(9)c语言字符串间没逗号扩展阅读:

书写规则

1、一个说明或一个语句占一行。

2、用{} 括起来的部分,通常表示了程序的某一层次结构。{}一般与该结构语句的第一个字母对齐,并单独占一行。

3、低一层次的语句或说明可比高一层次的语句或说明缩进若干格后书写。以便看起来更加清晰,增加程序的可读性。在编程时应力求遵循这些规则,以养成良好的编程风格。

10. C语言中scanf("%f,%,f%f,",&a,&b,&c);%f之间的逗号可省没,为什么

可以省略
这只是对输入格式的控制

有逗号的时候,按照引号内的格式,直接输入数据和逗号,就可以将各个数据分隔开
没有逗号的时候,各个数据之间用空格或者回车 分隔开来