文章目录
一、输入函数
1.1 格式输入函数 scanf
描述:从标准输入 stdin 读取格式化输入。
声明:int scanf(const char *format, …)
参数:
format – 包含了以下各项中的一个或多个:空格字符、非空格字符 和 format 说明符
#include<stdio.h>
int main()
{
int a;
printf("please input a number:\n");
scanf("%d", &a);
printf("a = %d\n", a);
return 0;
}
1.2 字符输入函数 getchar
描述:从标准输入 stdin 获取一个字符(一个无符号字符)。这等同于 getc 带有 stdin 作为参数
声明:int getchar(void)
参数:NA
返回值:以无符号 char 强制转换为 int 的形式返回读取的字符,如果到达文件末尾或发生读错误,则返回 EOF
#include <stdio.h>
int main ()
{
char str;
printf("please input a str:\n");
str= getchar();
printf("str: %c\n", str);
return 0;
}
1.3 字符串输入函数 gets
描述:从标准输入 stdin 读取一行,并把它存储在 str 所指向的字符串中。当读取到换行符时,或者到达文件末尾时,它会停止,具体视情况而定
声明:char *gets(char *str)
参数:str – 这是指向一个字符数组的指针,该数组存储了 C 字符串
返回值:如果成功,该函数返回 str。如果发生错误或者到达文件末尾时还未读取任何字符,则返回 NULL
#include <stdio.h>
int main()
{
char str[64];
printf("please input a str:\n");
gets(str);
printf("str = %s\n", str);
return(0);
}
1.4 字符串输入函数 fgets
描述:从指定的流 stream 读取一行,并把它存储在 str 所指向的字符串内。当读取 (n-1) 个字符时,或者读取到换行符时,或者到达文件末尾时,它会停止,具体视情况而定
声明:char *fgets(char *str, int n, FILE *stream)
参数:
str – 这是指向一个字符数组的指针,该数组存储了要读取的字符串
n – 这是要读取的最大字符数(包括最后的空字符)。通常是使用以 str 传递的数组长度
stream – 这是指向 FILE 对象的指针,该 FILE 对象标识了要从中读取字符的流
返回值:如果成功,该函数返回相同的 str 参数。如果到达文件末尾或者没有读取到任何字符,str 的内容保持不变,并返回一个空指针;如果发生错误,返回一个空指针
#include <stdio.h>
int main()
{
FILE *file;
char str[60];
//打开读取的文件
file = fopen("file.txt", "r");
if(file == NULL)
{
printf("open file failed!\n");
return -1;
}
if(fgets (str, 60, file ) != NULL)
{
puts(str);//写入输入的内容
}
fclose(file);
return 0;
}
二、输出函数
2.1 格式输出函数 printf
描述:发送格式化输出到标准输出 stdout
调用格式:printf(“<格式化字符串>”, <参量表>);
声明:int printf(const char *format, …)
参数:
format – 字符串,包含了要被写入到标准输出 stdout 的文本
#include <stdio.h>
int main ()
{
int a = 75;
printf("a = %d, a = %c\n", a, a);
return 0;
}
2.2 字符输出函数 putchar
描述:把参数 char 指定的字符(一个无符号字符)写入到标准输出 stdout 中
声明:int putchar(int char)
参数:char – 这是要被写入的字符。该字符以其对应的 int 值进行传递
返回值:该函数以无符号 char 强制转换为 int 的形式返回写入的字符,如果发生错误则返回 EOF
#include <stdio.h>
int main ()
{
char a = 'A';
putchar(a);
return 0;
}
2.3 字符串输出函数 puts
描述:把一个字符串写入到标准输出 stdout,直到空字符,但不包括空字符。换行符会被追加到输出中
声明:int puts(const char *str)
参数:str – 这是要被写入的 C 字符串
返回值:如果成功,该函数返回一个非负值为字符串长度(包括末尾的 \0),如果发生错误则返回 EOF
#include <stdio.h>
#include <string.h>
int main()
{
char str1[32];
char str2[32];
strcpy(str1, "abcdefg");
strcpy(str2, "ABCDEFG");
puts(str1);
puts(str2);
return 0;
}