你了解gets()和scanf()吗

gets()和scanf()联系:都可以用于输入字符串;

1、scanf()

语法:scanf("格式控制字符串",变量地址列表);

接受字符串时:scanf("%s",字符数组名或指针);

2、gets()

语法:gets(字符数组名或指针);

区别:scanf遇到空格、回车和Tab键都会认为输入结束,所有它不能接收空格;

gets遇到回车认为输入结束,可以接收空格。

下面丢出一个程序:

 1 #include <stdio.h>
 2 #include <stdlib.h>
 3 #include <string.h>
 4 int main()
 5 {
 6     int i=0,j=0;
 7     char s1[80],s2[40];
 8     printf("input string1:");
 9     gets(s1);//遇到回车认为输入结束
10     //scanf("%s",s1);//遇到空格认为输入结束
11     printf("input string2:");
12     gets(s2);
13     //scanf("%s",s2);
14     /*strcat(s1,s2);//直接用strcat函数实现
15     puts(s1);*/
16     while(s1[i]!='\0')
17         i++;
18     while(s2[j]!='\0')
19         s1[i++]=s2[j++];
20     s1[i]='\0';
21     puts(s1);
22     //printf("\nnew string is:%s\n",s1);
23     system("pause");
24     return 0;
25 }

 

posted @ 2016-09-30 17:05  米琪儿  阅读(275)  评论(0编辑  收藏  举报