整数读取
1、整型int
#include <stdio.h>
int main(void) {
int m;
scanf("%d",&m);
printf("%d", m);
return 0;
}
2、长整型 long long int
#include <stdio.h>
int main(void) {
long long int m;
scanf("%lld",&m);
printf("%lld", m);
return 0;
}
输出:
2147483650
字符读取
#include <stdio.h>
int main(void) {
char m;
scanf("%c",&m);
printf("%c", m);
return 0;
}
字符串读取
1、一个单词的形式,适用于结构体中。
#include <stdio.h>
#include <string.h>
int main(void) {
char m[50];
scanf("%s",m);
printf("%s", m);
return 0;
}
输入 输出为:
Hello
2、一个句子的形式
#include <stdio.h>
#include <string.h>
int main(void) {
char m[50];
while(scanf("%s", m) != EOF)
printf("%s ", m);
return 0;
}
输入 输出为:
Hello world!
构建结构体
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
struct Information
{
char name[20];//名字是一个字符串数组
int year;
int score;
};
结构体读取
以洛谷P5744 【深基7.习9】培训为例:
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
struct Information
{
char name[20];//名字是一个字符串数组
int year;
int score;
};
int main()
{
int size;
scanf("%d", &size);
//定义结构体数组;
const int m= size;
struct Information stu[m];
for(int i=0; i<m; i++)
{
scanf("%s %d %d", stu[i].name, &stu[i].year, &stu[i].score);
stu[i].year +=1;
stu[i].score = stu[i].score * 1.2 > 600 ? 600 : stu[i].score * 1.2;
printf("%s %d %d\n", stu[i].name, stu[i].year, stu[i].score);
}
return 0;
}