在C语言中,要在一行输入多个数据,可以使用scanf函数、fgets和sscanf的组合、或使用循环读取输入。 使用scanf函数是最常见的方法,它可以直接读取多个数据并存储在不同的变量中。fgets和sscanf的组合则更灵活,可以处理输入的字符串并解析多个数据。循环读取输入可以处理未知数量的数据。下面将详细介绍这些方法及其使用场景。
int main(){char s[200],s1[200];int n,max=0;while(1){gets(s);if(strcmp(s,"***end***")==0)break;n=strlen(s);if(n>max){max=n;strcpy(s1,s);} } printf("%d\n%s\n",max,s1);return 0;}
1、新建一个 字符串数组的定义与输出项目。2、添加一个 str.c 文件。3、包含stdio.h和stdlib.h头文件。4、输入main函数主体,system()和返回值。5、定义一个字符串变量str。6、使用printf()函数输出字符串变量str。7、运行程序,查看输出结果。
char number[18];char phone[11];char year[4];char month[2];char day[2];字符数组name只能存储长度为5的字符串,因为结尾还有一个\0,而你的输入已经越界了,后面输入的内容将前面的\0覆盖,导致字符串输出异常,其他5个情况类似。
方法如下:include <stdio.h> void main(){ char s[10][80];for(i=0;1<10;i++){ gets(s[i]);} }
上面代码的占位符 %.5s 表示只输出字符串“hello world”的前5个字符,即“hello” 。 二、scanf 我们可以用scanf给变量输入值,然后再用printf再将其打印在屏幕上。 代码语言:javascript 复制 #include<stdio.h>intmain(){int score=0;printf("请输⼊成绩:");scanf("%d",&score);printf("成绩是:%d\n"...
如果程序需要读入空格为结束符的字符串,一行输入多个字符串,字符串之间以空格为间隔。比如一行输入多个姓名,程序按姓名排序。 用法:char s[20];循环中调用cin>>s ; 或者string s; 循环中调用cin>>s; getline(cin,str): 以回车符为结束符 ,可以读入一个以回车符为结束符的string(c++风格字符串)。需要include...
c.缺少换行符:如果使用printf()函数输出多个字符串,应该在每个字符串的末尾添加一个换行符。否则,所有字符串将会在同一行输出。例如:printf("Hello, ");// 应该改为 printf("Hello, \n");printf("world!"); // printf("world!\n");d.读取错误的数据类型:如果使用错误的转换说明符读取数据类型,会...
根据需要一般选择如下3种方法:1,已知数量,且个数较少:scanf("%d%d%d",&a&b&c);2,已知数量,但数量较多:for(int i=0;i<n;i++)scanf("%d",&a[i]);3,不知道数量 int i=0;while(scanf("%d",&a[i])){ i++;}
break; } } else { str_len++; } p++; } strcpy(buff, longest); return total_len;}int main(int argc, char *argv[]){ int i = 0, cnt = 0,