int main(){
float F;
scanf("%f",&F);
printf("%.2f",(F-32.0)*5/9);
}
```
# 单个字符输入和输出(顺序结构)
problemId:1113
### Description
用getchar()从键盘上输入一个字符,用putchar()打印出来!
从键盘上输入一个字符!
Ouput
把刚刚输入的字符打印出来!
samples
<input>—>
A
<output>—>
A
Code
#include<stdio.h>
int main(){
char ch;
ch=getchar();
putchar(ch);
}
转换字母(顺序结构)
problemId:1116
Description
从键盘上输入一个小写字母,然后将小写字母装换成大写字母输出!
从键盘上输入一个小写字母。
Ouput
小写字母装换成大写字母输出。
samples
<input>—>
a
<output>—>
A
Code
#include<stdio.h>
int main(){
char ch;
scanf("%c",&ch);
printf("%c",ch-32);
}
实数的输出和占位
problemId:4291
Description
输入一个实数,请你按如下要求输出:
第一行按双精度默认输出,
第二行双精度数输出共占 10 位,其中 3 位小数,右对齐,左补空格并在两端添加星号包裹,
第三行双精度数输出共占 10 位,其中 3 位小数,左对齐,右补空格并在两端添加星号包裹。
一个double范围内的正实数 a 。
Ouput
共三行,按题目描述输出。
samples
<input>—>
123.56789
<output>—>
123.567890
Code
#include<stdio.h>
int main(){
double a;
scanf("%lf",&a);
printf("%lf\n",a);
printf("*%10.3lf*\n",a);
printf("*%-10.3lf*",a);
}
大整数的输入输出
problemId:4292
Description
输入两个 long long 范围内的整数,输出他们的和。
两个 long long 范围内的整数。
Ouput
输出的两个大整数的和,保证结果在 long long 范围内。
samples
<input>—>
2222222222
3333333333
<output>—>
5555555555
Code
#include<stdio.h>
int main(){
long long int a,b;
scanf("%lld %lld",&a,&b);
printf("%lld",a+b);
}
带’ 和 ”字符的输出
problemId:4293
Description
输入一个字符,输出两行。
第一行将字符用 ' 包裹。
第二行将字符用 " 包裹。
输入一个字符。
Ouput
按题目描述输出。
samples
<input>—>
A
<output>—>
‘A’
“A”
Code
#include<stdio.h>
int main(){
char ch;
scanf("%c",&ch);
printf("\'%c\'\n",ch);
printf("\"%c\"",ch);
}
’%‘字符的输入输出
problemId:4294
Description
输入三个用 ` % ` 分割的正整数 a b c 代表月,日,年,
要求按照输入样式原样输出。
三个int范围内的正整数,中间用 ` %` 分割。
Ouput
按题目描述原样输出。
samples
<input>—>
9%17%2018
<output>—>
9%17%2018
Code
#include<stdio.h>
int main(){
int day,month,year;
scanf("%d%%%d%%%d",&month,&day ,&year);
printf("%d%%%d%%%d",month,day,year);
}
‘\’字符的输入输出
problemId:4295
Description
输入三个用 ` \ ` 分割的正整数 a b c 代表日,月,年,
要求按照输入样式原样输出。
三个int范围内的正整数,中间用 ` \ ` 分割。
Ouput
按题目描述原样输出。
samples
<input>—>
9\17\2018
<output>—>
9\17\2018
Code
#include<stdio.h>
int main(){
int day,month,year;
scanf("%d\\%d\\%d",&month,&day ,&year);
printf("%d\\%d\\%d",month,day,year);
}
十六进制数输出和占位
problemId:4296
Description
输入一个整数,请你按如下要求输出:
第一行按原样输出,
第二行以十六进制输出(字母小写),
第三行以十六进制输出(字母大写)。
一个int范围内的正整数 a 。
Ouput
共三行,按题目描述输出。
samples
<input>—>
456
<output>—>
456
1c8
1C8
Code
#include<stdio.h>
int main(){
int a;
scanf("%d",&a);
printf("%d\n%x\n%X",a,a,a);
}
八进制数输出和占位
problemId:4297
Description
输入一个整数,请你按如下要求输出:
第一行按原样输出,
第二行以八进制靠右输出,不足 8 位左补 0 并在两端添加星号包裹,
第三行以八进制靠左输出,不足 8 位右补空格并在两端添加星号包裹。
一个int范围内的正整数 a 。
Ouput
共三行,按题目描述输出。
samples
<input>—>
123
<output>—>
123
00000173
*173 *
Code
#include<stdio.h>
int main(){
int a;
scanf("%d",&a);
printf("%d\n*%08o*\n*%-8o*",a,a,a);
}
十进制输入输出和其它非空格占位
problemId:4298
Description
输入一个整数,请你按如下要求输出:
第一行按原样输出,
第二行整数靠右原样输出,不足 8 位左补 0 并在两端添加星号包裹,
第三行整数靠左原样输出,不足 8 位右补空格并在两端添加星号包裹。
一个int范围内的正整数 a 。
Ouput
共三行,按题目描述输出。
samples
<input>—>
123456
<output>—>
123456
00123456
*123456 *
Code
#include<stdio.h>
int main(){
int a;
scanf("%d",&a);
printf("%d\n*%08d*\n*%-8d*",a,a,a);
}
十进制输入输出和空格占位
problemId:4299
Description
输入一个整数,请你按如下要求输出:
第一行按原样输出,
第二行按原样靠右输出,不足 8 位左补空格并在两端添加星号包裹,
第三行按原样靠左输出,不足 8 位右补空格并在两端添加星号包裹。
一个int范围内的正整数 a 。
Ouput
共三行,按题目描述输出。
samples
<input>—>
123456
<output>—>
123456
Code
#include<stdio.h>
int main(){
int a;
scanf("%d",&a);
printf("%d\n*%8d*\n*%-8d*",a,a,a);
}
字符型数据输出和占位
problemId:4300
Description
输入一个字符,请你按如下要求输出:
第一行字符数据默认输出,
第二行字符型数据输出共占 4 位,右对齐,左补 3 个空格并在两端添加星号包裹,
第三行字符型数据输出共占 4 位,左对齐,右补 3 个空格并在两端添加星号包裹。
输入一个字符 。
Ouput
共三行,按题目描述输出。
samples
<input>—>
c
<output>—>
c
Code
#include<stdio.h>
int main(){
char a;
scanf("%c",&a);
printf("%c\n*%4c*\n*%-4c*",a,a,a);
}