最近老师的题目 要用到的输入太多 有什么整型输入 字符输入 字符串输入
太杂乱 所以写下这篇 总结一下
目前最主要的输入 有sacnf 和 getchar 和 gsts
而输入 又有单个输入 和 循环输入
我们先来了解单次输入
int n;
char N;
int arr[100];
单次输入
scanf不能吃空格和回车键
scanf("%d",&n);//输入整型
scanf("%c",&N);//输入字符
scanf("%s",&arr);//输入字符串
// aaaaaa
// bbbb
// ccccc
n=getchar();//一次只能输入一个字符
这是最简单的输入
而有的题目会要求循环输入 直到一个特定的字符或者数字停止 无论后面存在什么
#include<stdio.h>
int main ()
{
int n;
int i=0;
scanf("%d",&n);
while(n!=5)//这里假设是 5
{
scanf("%d",&n);
i++;
}
printf("%d",i);
return 0;
}
例如 以5为特定值 当输入5是自动停止
#include<stdio.h>
int main ()
{
int n,arr[100];
int i=0;
scanf("%d",&n);
while(n!=5)//这里假设是 5
{
arr[i]=n;
scanf("%d",&n);
i++;
}
printf("%d",i);
return 0;
}
加了一个数组用来存储5之前的数字
以下是循环 输入字符 直到EOF就不再吃进去
#include<stdio.h>
int main()
{
char ch ;
while ((ch=getchar()) != 'EOF')//也可以将EOF改为ASCLL码中任意一个
{
putchar(ch);
}
return 0;
}
一般来说 gsts 是用来储存不含有\n的字符串的
#include<stdio.h>
int main ()
{
int arr[100];
gets(arr);
printf("%s",arr);
return 0
}
这样 C语言如何输入的问题就差不多了