初识C语言3

BC18-计算带余除法

描述

给定两个整数a和b (0 < a,b < 10,000),计算a除以b的整数商和余数。

输入描述:

一行,包括两个整数a和b,依次为被除数和除数(不为零),中间用空格隔开。

输出描述:

一行,包含两个整数,依次为整数商和余数,中间用一个空格隔开。

​
​
#include <stdio.h>
int main()
{
	int a = 0;
	int b = 0;
	scanf("%d %d", &a, &b);
	printf("%d %d", a / b, a % b);
	return 0;
}

​

​

BC13-ASCII码

描述

BoBo教KiKi字符常量或字符变量表示的字符在内存中以ASCII码形式存储。BoBo出了一个问题给KiKi,转换以下ASCII码为对应字符并输出他们。

73, 32, 99, 97, 110, 32, 100, 111, 32, 105, 116 , 33

输入描述:

输出描述:

一行输出转换题目中给出的所有ASCII码对应的字符,无需以空格隔开。

​
#include <stdio.h>
int main()
{
	int arr[] = { 73, 32, 99, 97, 110, 32, 100, 111, 32, 105, 116 , 33 };
	int sz = sizeof(arr) / sizeof(arr[0]);
	int i = 0;
	for (i = 0; i < sz; i++)
	{
		printf("%c", arr[i]);
	}
	return 0;
}

​

BC14-出生日期输入输出

描述

输入一个人的出生日期(包括年月日),将该生日中的年、月、日分别输出。

数据范围:年份满足 1990 \le y \le 2015 \1990≤y≤2015 ,月份满足 1 \le m \le 12 \1≤m≤12  ,日满足 1 \le d \le 30 \1≤d≤30 

输入描述:

输入只有一行,出生日期,包括年月日,年月日之间的数字没有分隔符。

输出描述:

三行,第一行为出生年份,第二行为出生月份,第三行为出生日期。输出时如果月份或天数为1位数,需要在1位数前面补0。

#include <stdio.h>

int main()
{
	int year = 0;
	int month = 0;
	int day = 0;;
	scanf("%4d%2d%2d", &year, &month, &day);
	printf("year=%4d\nmonth=%02d\ndate=%02d\n", year, month, day);
	return 0;
}

坑点:
        通过scanf函数的%m格式控制可以指定输入域宽,输入数据域宽(列数),按此宽度截取所需数据;通过printf函数的%0格式控制符,输出数值时指定左面不使用的空位置自动填0。

BC11-学生基本信息输入输出

描述

依次输入一个学生的学号,以及3科(C语言,数学,英语)成绩,在屏幕上输出该学生的学号,3科成绩(注:输出成绩时需进行四舍五入且保留2位小数)。

数据范围:学号满足 1 \le n \le 20000000 \1≤n≤20000000  ,各科成绩使用百分制,且不可能出现负数

输入描述:

学号以及3科成绩,学号和成绩之间用英文分号隔开,成绩之间用英文逗号隔开。

输出描述:

学号,3科成绩,输出格式详见输出样例。

#include <stdio.h>

int main()
{
	int num = 0;
	float c = 0;
	float math = 0;
	float english = 0;
	scanf("%d;%f,%f,%f", &num, &c, &math, &english);
	printf("The each subject score of No. %d is %.2f, %.2f, %.2f.", num, c, math, english);
	return 0;
}

坑点:float和double获取数据可能存在差异 ,要都尝试一下

BC9-printf函数的返回值

描述

KiKi写了一个输出“Hello world!”的程序,BoBo老师告诉他printf函数有返回值,你能帮他写个程序输出printf(“Hello world!”)的返回值吗?

输入描述:

输出描述:

包括两行:
第一行为“Hello world!”
第二行为printf(“Hello world!”)调用后的返回值。

#include <stdio.h>

int main()
{
	int n = printf("Hello world!");
	printf("\n%d\n", n);
	return 0;
}

坑点:1.printf的返回值是打印的数值个数(int)

           2.\n换行符也占printf返回值中的个数计算

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

ta亻也

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值