|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
本人刚学到数组,想不到这题有什么简便的解法,我能想到的流程都是很冗长的。
题目:给出n个点的坐标,判断这些点是否在同一条水平或竖直的直线上?
输入:第一行输入点的个数n,后面几行每行一组点的坐标(x,y)
输出:若所给的点在同一条水平或竖直的直线上,输出1;否则输出0
范例:输入:
输出:
烦请各位大佬帮我下,谢谢
本帖最后由 ba21 于 2022-7-24 20:49 编辑
使用数组则通常先分配一个足够大的数组。
- #include <stdio.h>
- #include <stdlib.h>
- int main(void)
- {
- int len, i, result;
- int points[1024]={0};
- scanf("%d", &len);
- for(i=0; i<len*2; i+=2)
- {
- scanf("%d %d", &points[i], &points[i+1]);
- }
- result = 1;
- for(i=1; i<len*2; i+=2)
- {
- if(points[i]!= points[i+2])
- {
- result = 0;
- break;
- }
- }
- printf("%d\n", result);
- return 0;
- }
复制代码
|
|